diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java index e5a30da351..bffdca798c 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -167,7 +167,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } if (!arraylist.isEmpty()) { - this.netServerHandler.sendPacket(new Packet56MapChunkBulk(arraylist)); + // CraftBukkit start - don't use map chunk bulk for now TODO: fix this + for (Object object : arraylist) { + this.netServerHandler.sendPacket(new Packet51MapChunk((Chunk) object, true, 0xffff)); + } + // this.netServerHandler.sendPacket(new Packet56MapChunkBulk(arraylist)); + // CraftBukkit end + Iterator iterator1 = arraylist1.iterator(); while (iterator1.hasNext()) { diff --git a/src/main/java/net/minecraft/server/ServerConfigurationManagerAbstract.java b/src/main/java/net/minecraft/server/ServerConfigurationManagerAbstract.java index 35fa2cddb2..bbc50403e9 100644 --- a/src/main/java/net/minecraft/server/ServerConfigurationManagerAbstract.java +++ b/src/main/java/net/minecraft/server/ServerConfigurationManagerAbstract.java @@ -380,6 +380,8 @@ public abstract class ServerConfigurationManagerAbstract { // CraftBukkit start byte actualDimension = (byte) (worldserver.getWorld().getEnvironment().getId()); + // Force the client to refresh their chunk cache. + entityplayer1.netServerHandler.sendPacket(new Packet9Respawn((byte) (actualDimension >= 0 ? -1 : 0), (byte) worldserver.difficulty, worldserver.getWorldData().getType(), worldserver.getHeight(), entityplayer.itemInWorldManager.getGameMode())); entityplayer1.netServerHandler.sendPacket(new Packet9Respawn(actualDimension, (byte) worldserver.difficulty, worldserver.getWorldData().getType(), worldserver.getHeight(), entityplayer.itemInWorldManager.getGameMode())); entityplayer1.spawnIn(worldserver); entityplayer1.dead = false;