diff --git a/src/main/java/net/minecraft/server/ItemInWorldManager.java b/src/main/java/net/minecraft/server/ItemInWorldManager.java index 663489fc0e..322d58fd9f 100644 --- a/src/main/java/net/minecraft/server/ItemInWorldManager.java +++ b/src/main/java/net/minecraft/server/ItemInWorldManager.java @@ -203,6 +203,16 @@ public class ItemInWorldManager { if (this.player instanceof EntityPlayer) { org.bukkit.block.Block block = this.world.getWorld().getBlockAt(i, j, k); + // Tell client the block is gone immediately then process events + if (world.getTileEntity(i, j, k) == null) { + int id = block.getTypeId(); + byte data = block.getData(); + + block.setTypeId(0, false); + ((EntityPlayer) this.player).netServerHandler.sendPacket(new Packet53BlockChange(i, j, k, this.world)); + block.setTypeIdAndData(id, data, false); + } + BlockBreakEvent event = new BlockBreakEvent(block, (org.bukkit.entity.Player) this.player.getBukkitEntity()); this.world.getServer().getPluginManager().callEvent(event);