LifeSteal.java 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. package me.km.effects.active;
  2. import me.km.KajetansMod;
  3. import me.km.api.Utils;
  4. import me.km.effects.ActiveEffectBase;
  5. import net.minecraft.entity.EntityLivingBase;
  6. import net.minecraft.entity.player.EntityPlayerMP;
  7. import net.minecraft.util.DamageSource;
  8. public class LifeSteal extends ActiveEffectBase
  9. {
  10. @Override
  11. protected boolean executeEffect(EntityPlayerMP p, int power)
  12. {
  13. EntityLivingBase liv = Utils.getTargetedEntity(p, 6, EntityLivingBase.class);
  14. if(liv == null)
  15. {
  16. return false;
  17. }
  18. DamageSource ds = DamageSource.causeMobDamage(p);
  19. float real = Utils.getRealDamage(liv, ds, power);
  20. liv.attackEntityFrom(ds, power);
  21. p.heal(real);
  22. if(liv instanceof EntityPlayerMP)
  23. {
  24. KajetansMod.playerbank.getData((EntityPlayerMP) liv)
  25. .addBadTimedData("lessheal", true, 100, " - 50% Heilung", 63);
  26. }
  27. return true;
  28. }
  29. @Override
  30. protected int getManaCost(int manaFactor)
  31. {
  32. return 1;
  33. }
  34. }