diff options
Diffstat (limited to 'src/main/java/fyresmodjam/blessings/standard/LonerBlessing.java')
| -rw-r--r-- | src/main/java/fyresmodjam/blessings/standard/LonerBlessing.java | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/main/java/fyresmodjam/blessings/standard/LonerBlessing.java b/src/main/java/fyresmodjam/blessings/standard/LonerBlessing.java new file mode 100644 index 0000000..ac52ec5 --- /dev/null +++ b/src/main/java/fyresmodjam/blessings/standard/LonerBlessing.java @@ -0,0 +1,38 @@ +package fyresmodjam.blessings.standard; + +import fyresmodjam.blessings.Blessing; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraftforge.event.entity.living.LivingHurtEvent; + +public class LonerBlessing extends Blessing { + + @Override + public String name() { + return "Loner"; + } + + @Override + public String description() { + return "Do higher damage the lower your health is"; + } + + @Override + public float onOutgoingDamage(LivingHurtEvent event, + float damageMultiplier) { + Entity trueSource = event.getSource().getTrueSource(); + + if (trueSource instanceof EntityLivingBase) { + EntityLivingBase livingSource = (EntityLivingBase) trueSource; + + float healthRatio = livingSource.getHealth() + / livingSource.getMaxHealth(); + + float scaleFactor = 1.0F - healthRatio; + + return damageMultiplier + 0.35F * scaleFactor; + } + + return damageMultiplier; + } +} |
