package shedar.mods.ic2.nuclearcontrol.blocks.subblocks; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; import net.minecraft.tileentity.TileEntity; import shedar.mods.ic2.nuclearcontrol.IScreenPart; import shedar.mods.ic2.nuclearcontrol.panel.Screen; import shedar.mods.ic2.nuclearcontrol.tileentities.TileEntityAdvancedInfoPanel; import shedar.mods.ic2.nuclearcontrol.tileentities.TileEntityAdvancedInfoPanelExtender; import shedar.mods.ic2.nuclearcontrol.utils.BlockDamages; public class AdvancedInfoPanelExtender extends InfoPanel { private static final int DAMAGE = BlockDamages.DAMAGE_ADVANCED_EXTENDER; private static final float[] BOUNDS = { 0, 0, 0, 1, 1, 1 }; private static final byte[][] mapping = { { I_EXTENDER_ADV_SIDE, I_COLOR_DEFAULT, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE }, { I_COLOR_DEFAULT, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE }, { I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_COLOR_DEFAULT, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE }, { I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_COLOR_DEFAULT, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE }, { I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_COLOR_DEFAULT }, { I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_EXTENDER_ADV_SIDE, I_COLOR_DEFAULT, I_EXTENDER_ADV_SIDE } }; public AdvancedInfoPanelExtender() { super(DAMAGE, "tile.blockAdvancedInfoPanelExtender"); } @Override public TileEntity getTileEntity() { return new TileEntityAdvancedInfoPanelExtender(); } @Override public boolean isSolidBlockRequired() { return false; } @Override public boolean hasGui() { return false; } @Override public float[] getBlockBounds(TileEntity tileEntity) { if (tileEntity == null) return BOUNDS; float[] bounds = BOUNDS.clone(); if (tileEntity != null) { Screen screen = ((IScreenPart) tileEntity).getScreen(); if (screen != null && screen.getCore(tileEntity.getWorldObj()) instanceof TileEntityAdvancedInfoPanel) { TileEntityAdvancedInfoPanel core = (TileEntityAdvancedInfoPanel) screen .getCore(tileEntity.getWorldObj()); if (core != null) { int thickness = core.thickness; if (thickness != 16) { bounds[4] = Math.max(thickness, 1) / 16F; } else { bounds[4] = 0.98F; } } } } return bounds; } @Override public Container getServerGuiElement(TileEntity tileEntity, EntityPlayer player) { return null; } @Override public Object getClientGuiElement(TileEntity tileEntity, EntityPlayer player) { return null; } @Override protected byte[][] getMapping() { return mapping; } }