From 10d1ebb3abe642bdfb50d0cabceb6ba3a40ed962 Mon Sep 17 00:00:00 2001 From: Zach Brown <1254957+zachbr@users.noreply.github.com> Date: Sat, 29 Sep 2018 16:00:55 -0400 Subject: [PATCH] Fix slime pathfinding when loaded from NBT GH-1507 The canWander property is initialized to true by default, however when loaded from NBT, if the key doesn't exist the property will be set to false. The correct solution is to ensure the key exists before setting the property. --- Spigot-Server-Patches/Slime-Pathfinder-Events.patch | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Spigot-Server-Patches/Slime-Pathfinder-Events.patch b/Spigot-Server-Patches/Slime-Pathfinder-Events.patch index 23e4d5fdd..b379e4ab0 100644 --- a/Spigot-Server-Patches/Slime-Pathfinder-Events.patch +++ b/Spigot-Server-Patches/Slime-Pathfinder-Events.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Slime Pathfinder Events diff --git a/src/main/java/net/minecraft/server/EntitySlime.java b/src/main/java/net/minecraft/server/EntitySlime.java -index 238f3c7926..cfa4710b78 100644 +index 238f3c792..586b9a3a6 100644 --- a/src/main/java/net/minecraft/server/EntitySlime.java +++ b/src/main/java/net/minecraft/server/EntitySlime.java @@ -0,0 +0,0 @@ public class EntitySlime extends EntityInsentient implements IMonster { @@ -20,7 +20,11 @@ index 238f3c7926..cfa4710b78 100644 this.setSize(i + 1, false); this.bD = nbttagcompound.getBoolean("wasOnGround"); -+ this.canWander = nbttagcompound.getBoolean("Paper.canWander"); // Paper ++ // Paper start - check exists before loading or this will be loaded as false ++ if (nbttagcompound.hasKey("Paper.canWander")) { ++ this.canWander = nbttagcompound.getBoolean("Paper.canWander"); ++ } ++ // Paper end } public boolean dy() { @@ -115,7 +119,7 @@ index 238f3c7926..cfa4710b78 100644 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java -index 18e7ef80ac..8403c1e01c 100644 +index 18e7ef80a..8403c1e01 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java @@ -0,0 +0,0 @@ public class CraftSlime extends CraftMob implements Slime {