mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-24 01:47:42 +01:00
Update entity target data to reflect current AI status. Fixes BUKKIT-2280
The new AI system introduced by Minecraft 1.2 no longer relies on the target field in the entity so it is frequently out of sync with what the entity is actually doing. This modifies the AI goal to update the target so our API can return the correct information.
This commit is contained in:
parent
62a9b8815b
commit
59d6b60c0a
@ -119,10 +119,12 @@ public abstract class PathfinderGoalTarget extends PathfinderGoal {
|
||||
|
||||
org.bukkit.event.entity.EntityTargetLivingEntityEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityTargetLivingEvent(this.d, entityliving, reason);
|
||||
if (event.isCancelled() || event.getTarget() == null) {
|
||||
if (this.d instanceof EntityCreature) ((EntityCreature) this.d).target = null;
|
||||
return false;
|
||||
} else if (entityliving.getBukkitEntity() != event.getTarget()) {
|
||||
this.d.b((EntityLiving) ((org.bukkit.craftbukkit.entity.CraftEntity) event.getTarget()).getHandle());
|
||||
}
|
||||
if (this.d instanceof EntityCreature) ((EntityCreature) this.d).target = ((org.bukkit.craftbukkit.entity.CraftEntity) event.getTarget()).getHandle();
|
||||
// CraftBukkit end
|
||||
|
||||
return true;
|
||||
|
Loading…
Reference in New Issue
Block a user