summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java')
-rw-r--r--src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
index a2d63379..ba1cdc18 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
@@ -336,7 +336,14 @@ public class CraftBlock implements Block {
case BED_BLOCK:
return new CraftBed(this);
default:
- return new CraftBlockState(this);
+ TileEntity tileEntity = chunk.getCraftWorld().getTileEntityAt(x, y, z);
+ if (tileEntity != null) {
+ // block with unhandled TileEntity:
+ return new CraftBlockEntityState<TileEntity>(this, (Class<TileEntity>) tileEntity.getClass());
+ } else {
+ // Block without TileEntity:
+ return new CraftBlockState(this);
+ }
}
}