package net.glowstone.block.blocktype; import net.glowstone.GlowChunk; import net.glowstone.block.GlowBlockState; import net.glowstone.block.entity.TEChest; import net.glowstone.block.entity.TileEntity; import net.glowstone.entity.GlowPlayer; import org.bukkit.block.BlockFace; import org.bukkit.inventory.ItemStack; import org.bukkit.material.Chest; import org.bukkit.material.MaterialData; import org.bukkit.util.Vector; public class BlockChest extends BlockContainer { @Override public TileEntity createTileEntity(GlowChunk chunk, int cx, int cy, int cz) { return new TEChest(chunk.getBlock(cx, cy, cz)); } @Override public void placeBlock(GlowPlayer player, GlowBlockState state, BlockFace face, ItemStack holding, Vector clickedLoc) { super.placeBlock(player, state, face, holding, clickedLoc); MaterialData data = state.getData(); if (data instanceof Chest) { ((Chest) data).setFacingDirection(getOppositeBlockFace(player.getLocation(), false)); state.setData(data); } else { warnMaterialData(Chest.class, data); } } }