You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
1.4 KiB
30 lines
1.4 KiB
--- ../src-base/minecraft/net/minecraft/entity/ai/EntityAIAttackOnCollide.java |
|
+++ ../src-work/minecraft/net/minecraft/entity/ai/EntityAIAttackOnCollide.java |
|
@@ -7,6 +7,11 @@ |
|
import net.minecraft.util.MathHelper; |
|
import net.minecraft.world.World; |
|
|
|
+// CraftBukkit start |
|
+import net.minecraft.entity.Entity; |
|
+import org.bukkit.event.entity.EntityTargetEvent; |
|
+// CraftBukkit end |
|
+ |
|
public class EntityAIAttackOnCollide extends EntityAIBase |
|
{ |
|
World worldObj; |
|
@@ -73,6 +78,15 @@ |
|
public boolean continueExecuting() |
|
{ |
|
EntityLivingBase entitylivingbase = this.attacker.getAttackTarget(); |
|
+ // CraftBukkit start |
|
+ EntityTargetEvent.TargetReason reason = this.attacker.getAttackTarget() == null ? EntityTargetEvent.TargetReason.FORGOT_TARGET : EntityTargetEvent.TargetReason.TARGET_DIED; |
|
+ |
|
+ if (this.attacker.getAttackTarget() == null || (this.attacker.getAttackTarget() != null && !this.attacker.getAttackTarget().isEntityAlive())) |
|
+ { |
|
+ org.bukkit.craftbukkit.event.CraftEventFactory.callEntityTargetEvent(attacker, null, reason); |
|
+ } |
|
+ |
|
+ // CraftBukkit end |
|
return entitylivingbase == null ? false : (!entitylivingbase.isEntityAlive() ? false : (!this.longMemory ? !this.attacker.getNavigator().noPath() : this.attacker.isWithinHomeDistance(MathHelper.floor_double(entitylivingbase.posX), MathHelper.floor_double(entitylivingbase.posY), MathHelper.floor_double(entitylivingbase.posZ)))); |
|
} |
|
|
|
|