From 45ad47717e9facc2948dbae200b5b90bb4895118 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Thu, 16 Mar 2017 22:31:53 -0500 Subject: [PATCH] Fix a duplicate alive entity on second world --- ...plicate-alive-entity-on-second-world.patch | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Spigot-Server-Patches/0213-Fix-a-duplicate-alive-entity-on-second-world.patch diff --git a/Spigot-Server-Patches/0213-Fix-a-duplicate-alive-entity-on-second-world.patch b/Spigot-Server-Patches/0213-Fix-a-duplicate-alive-entity-on-second-world.patch new file mode 100644 index 0000000000..fe8013f4bf --- /dev/null +++ b/Spigot-Server-Patches/0213-Fix-a-duplicate-alive-entity-on-second-world.patch @@ -0,0 +1,30 @@ +From f2f4e3a3406b40e13a7dc05cc5dbaeda8038043a Mon Sep 17 00:00:00 2001 +From: Shane Freeder +Date: Fri, 17 Mar 2017 01:45:15 +0000 +Subject: [PATCH] Fix a duplicate alive entity on second world + + +diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java +index 0e1d9817..4cabdd7a 100644 +--- a/src/main/java/net/minecraft/server/Entity.java ++++ b/src/main/java/net/minecraft/server/Entity.java +@@ -2359,6 +2359,7 @@ public abstract class Entity implements ICommandListener { + // CraftBukkit end */ + // CraftBukkit start - Ensure chunks are loaded in case TravelAgent is not used which would initially cause chunks to load during find/create + // minecraftserver.getPlayerList().changeWorld(this, j, worldserver, worldserver1); ++ this.dead = true; // Paper - Mark entity as dead before we actually move it to the new world + worldserver1.getMinecraftServer().getPlayerList().repositionEntity(this, exit, portal); + // worldserver.entityJoinedWorld(this, false); // Handled in repositionEntity + // CraftBukkit end +@@ -2393,7 +2394,7 @@ public abstract class Entity implements ICommandListener { + // CraftBukkit end + } + +- this.dead = true; ++ //this.dead = true; // Paper - Moved this up to ensure that the entity is dead when it's placed on the new world + this.world.methodProfiler.b(); + worldserver.m(); + worldserver1.m(); +-- +2.12.0.windows.1 +