summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/bukkit/craftbukkit/block/CraftChest.java')
-rw-r--r--src/main/java/org/bukkit/craftbukkit/block/CraftChest.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java b/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
new file mode 100644
index 00000000..e16c4181
--- /dev/null
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
@@ -0,0 +1,40 @@
+package org.bukkit.craftbukkit.block;
+
+import net.minecraft.server.TileEntityChest;
+import org.bukkit.block.Block;
+import org.bukkit.block.Chest;
+import org.bukkit.craftbukkit.CraftWorld;
+import org.bukkit.craftbukkit.inventory.CraftInventory;
+import org.bukkit.inventory.Inventory;
+
+/**
+ * Represents a chest.
+ *
+ * @author sk89q
+ */
+public class CraftChest extends CraftBlockState implements Chest {
+ private final CraftWorld world;
+ private final TileEntityChest chest;
+
+ public CraftChest(final Block block) {
+ super(block);
+
+ world = (CraftWorld)block.getWorld();
+ chest = (TileEntityChest)world.getTileEntityAt(getX(), getY(), getZ());
+ }
+
+ public Inventory getInventory() {
+ return new CraftInventory(chest);
+ }
+
+ @Override
+ public boolean update(boolean force) {
+ boolean result = super.update(force);
+
+ if (result) {
+ chest.d();
+ }
+
+ return result;
+ }
+}