From 8d1a7ea400bc526d1f73c7ab4fb92ab8e89df747 Mon Sep 17 00:00:00 2001 From: Sollace Date: Tue, 19 Feb 2019 10:41:59 +0200 Subject: [PATCH] Cap attack amount and fixed alicorn amulet being damageable. --- .../com/minelittlepony/unicopia/item/ItemAlicornAmulet.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/minelittlepony/unicopia/item/ItemAlicornAmulet.java b/src/main/java/com/minelittlepony/unicopia/item/ItemAlicornAmulet.java index 49b01a54..fc6beb35 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/ItemAlicornAmulet.java +++ b/src/main/java/com/minelittlepony/unicopia/item/ItemAlicornAmulet.java @@ -52,6 +52,7 @@ public class ItemAlicornAmulet extends ItemArmor implements IDependable { setTranslationKey(name); setRegistryName(domain, name); + setMaxDamage(0); } @Override @@ -197,7 +198,7 @@ public class ItemAlicornAmulet extends ItemArmor implements IDependable { if (world.rand.nextInt(300) == 0) { DamageSource source = MagicalDamageSource.causePlayerDamage("alicorn_amulet", player); - player.attackEntityFrom(source, 0.5F); + player.attackEntityFrom(source, 1F); } } @@ -210,9 +211,12 @@ public class ItemAlicornAmulet extends ItemArmor implements IDependable { float attachedTime = player.getInventory().getTicksAttached(this) / 100F; DamageSource source = MagicalDamageSource.causePlayerDamage("alicorn_amulet", player.getOwner()); + DifficultyInstance difficulty = player.getWorld().getDifficultyForLocation(player.getOrigin()); float amount = (attachedTime * (1 + needfulness)) * (1 + difficulty.getClampedAdditionalDifficulty()); + amount = Math.min(amount, player.getOwner().getMaxHealth()); + player.getOwner().attackEntityFrom(source, amount); if (attachedTime > 120) {