diff --git a/CraftBukkit-Patches/0164-Do-not-remove-player-in-world-change.patch b/CraftBukkit-Patches/0164-Do-not-remove-player-in-world-change.patch new file mode 100644 index 0000000..1a086c6 --- /dev/null +++ b/CraftBukkit-Patches/0164-Do-not-remove-player-in-world-change.patch @@ -0,0 +1,31 @@ +From cb14602e001aa118cf826a4167f2881c840c207d Mon Sep 17 00:00:00 2001 +From: T00thpick1 +Date: Mon, 23 Jun 2014 21:37:24 -0500 +Subject: [PATCH] Do not remove player in world change + + +diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java +index a4a59ee..a723f3b 100644 +--- a/src/main/java/net/minecraft/server/PlayerList.java ++++ b/src/main/java/net/minecraft/server/PlayerList.java +@@ -452,7 +452,7 @@ public abstract class PlayerList { + entityplayer.r().getTracker().untrackPlayer(entityplayer); + // entityplayer.r().getTracker().untrackEntity(entityplayer); // CraftBukkit + entityplayer.r().getPlayerChunkMap().removePlayer(entityplayer); +- this.players.remove(entityplayer); ++ // this.players.remove(entityplayer); // PaperSpigot -- Fixes BUKKIT-4561 and BUKKIT-4082 and BUKKIT-2094 + this.server.getWorldServer(entityplayer.dimension).removeEntity(entityplayer); + ChunkCoordinates chunkcoordinates = entityplayer.getBed(); + boolean flag1 = entityplayer.isRespawnForced(); +@@ -547,7 +547,7 @@ public abstract class PlayerList { + if (!entityplayer.playerConnection.isDisconnected()) { + worldserver.getPlayerChunkMap().addPlayer(entityplayer1); + worldserver.addEntity(entityplayer1); +- this.players.add(entityplayer1); ++ // this.players.add(entityplayer1); // PaperSpigot -- Fixes BUKKIT-4561 and BUKKIT-4082 and BUKKIT-2094 + } + // Added from changeDimension + this.updateClient(entityplayer1); // Update health, etc... +-- +1.9.1 +