diff options
Diffstat (limited to 'src/main/java/net')
-rw-r--r-- | src/main/java/net/minecraft/server/Entity.java | 7 | ||||
-rw-r--r-- | src/main/java/net/minecraft/server/EntityWolf.java | 3 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java index 32804143..381a6312 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -30,7 +30,7 @@ import org.bukkit.plugin.PluginManager; public abstract class Entity { // CraftBukkit start - private static final int CURRENT_LEVEL = 1; + private static final int CURRENT_LEVEL = 2; static boolean isLevelAtLeast(NBTTagCompound tag, int level) { return tag.hasKey("Bukkit.updateLevel") && tag.getInt("Bukkit.updateLevel") >= level; } @@ -1162,6 +1162,11 @@ public abstract class Entity { if (!nbttagcompound.hasKey("Bukkit.MaxHealth")) { entity.maxHealth = entity.getMaxHealth(); } + + // Reset the persistence for tamed animals + if (entity instanceof EntityTameableAnimal && !isLevelAtLeast(nbttagcompound, 2) && !nbttagcompound.getBoolean("PersistenceRequired")) { + entity.persistent = !entity.bj(); + } } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/EntityWolf.java b/src/main/java/net/minecraft/server/EntityWolf.java index 19de09e2..8ee33180 100644 --- a/src/main/java/net/minecraft/server/EntityWolf.java +++ b/src/main/java/net/minecraft/server/EntityWolf.java @@ -76,7 +76,8 @@ public class EntityWolf extends EntityTameableAnimal { } protected boolean bj() { - return this.isAngry(); + // CraftBukkit - added && !this.isTamed() + return this.isAngry() && !this.isTamed(); } protected String aY() { |