From d2b06da1ecb8dfc50c12ffee623f7277381b023e Mon Sep 17 00:00:00 2001 From: Bernhard Bonigl Date: Wed, 3 Dec 2014 20:57:28 +0100 Subject: [PATCH] The piercing damage of arrows/bolts doesn't determine whether an entity has been hit anymore (since it always hits since it's unblockable) --- src/main/java/tconstruct/library/entity/ProjectileBase.java | 2 -- src/main/java/tconstruct/weaponry/entity/ArrowEntity.java | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/tconstruct/library/entity/ProjectileBase.java b/src/main/java/tconstruct/library/entity/ProjectileBase.java index 7fe2d814..4944ad67 100644 --- a/src/main/java/tconstruct/library/entity/ProjectileBase.java +++ b/src/main/java/tconstruct/library/entity/ProjectileBase.java @@ -33,7 +33,6 @@ public abstract class ProjectileBase extends EntityArrow implements IEntityAddit public final static String stoneSound = Reference.resource("stoneHit"); public ItemStack returnStack; - public int returnStackSlot; public boolean bounceOnNoDamage = true; public boolean defused = false; // if this is true it wont hit any entities anymore @@ -67,7 +66,6 @@ public abstract class ProjectileBase extends EntityArrow implements IEntityAddit this.setThrowableHeading(this.motionX, this.motionY, this.motionZ, speed, accuracy); // our stuff - returnStackSlot = player.inventory.currentItem; returnStack = stack; /* diff --git a/src/main/java/tconstruct/weaponry/entity/ArrowEntity.java b/src/main/java/tconstruct/weaponry/entity/ArrowEntity.java index 2f3041bd..8513ef95 100644 --- a/src/main/java/tconstruct/weaponry/entity/ArrowEntity.java +++ b/src/main/java/tconstruct/weaponry/entity/ArrowEntity.java @@ -101,7 +101,8 @@ public class ArrowEntity extends ProjectileBase { //Minecraft.getMinecraft().thePlayer.sendChatMessage("Piercing Damage: " + shift); - dealtDamage |= entityHit.attackEntityFrom(damagesource, shift); + // piercing damage does not affect wether the entity was hit (return value), since it should go through always + entityHit.attackEntityFrom(damagesource, shift); } return dealtDamage;