diff --git a/src/main/java/storagecraft/StorageCraft.java b/src/main/java/storagecraft/StorageCraft.java index 22f24cb9c..165a9c65e 100644 --- a/src/main/java/storagecraft/StorageCraft.java +++ b/src/main/java/storagecraft/StorageCraft.java @@ -11,6 +11,8 @@ import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import storagecraft.item.ItemStorageCell; import storagecraft.proxy.CommonProxy; @Mod(modid = StorageCraft.ID, version = StorageCraft.VERSION) @@ -33,10 +35,16 @@ public class StorageCraft public static final SimpleNetworkWrapper NETWORK = NetworkRegistry.INSTANCE.newSimpleChannel(ID); public static final CreativeTabs TAB = new CreativeTabs(ID) { + @Override + public ItemStack getIconItemStack() + { + return new ItemStack(StorageCraftItems.STORAGE_CELL, 1, ItemStorageCell.TYPE_1K); + } + @Override public Item getTabIconItem() { - return Item.getItemFromBlock(StorageCraftBlocks.CONTROLLER); + return null; } }; @SidedProxy(clientSide = "storagecraft.proxy.ClientProxy", serverSide = "storagecraft.proxy.ServerProxy") diff --git a/src/main/java/storagecraft/block/BlockController.java b/src/main/java/storagecraft/block/BlockController.java index 084b6068b..5f4c1b275 100644 --- a/src/main/java/storagecraft/block/BlockController.java +++ b/src/main/java/storagecraft/block/BlockController.java @@ -13,7 +13,7 @@ import storagecraft.tile.TileController; public class BlockController extends BlockBase implements ITileEntityProvider { private IIcon sideIcon; - private IIcon[] icons = new IIcon[8]; + private IIcon[] icons = new IIcon[9]; public BlockController() { @@ -48,7 +48,7 @@ public class BlockController extends BlockBase implements ITileEntityProvider @Override public void registerBlockIcons(IIconRegister register) { - for (int i = 0; i <= 7; ++i) + for (int i = 0; i <= 8; ++i) { icons[i] = register.registerIcon("storagecraft:controller" + i); } @@ -59,24 +59,24 @@ public class BlockController extends BlockBase implements ITileEntityProvider @Override public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { - if (side == 0 || side == 1) + TileController tile = (TileController) world.getTileEntity(x, y, z); + + if (side == tile.getDirection().ordinal()) { - return sideIcon; + return icons[(int) ((float) tile.getEnergyStored(null) / (float) tile.getMaxEnergyStored(null) * 8f)]; } - TileController controller = (TileController) world.getTileEntity(x, y, z); - - return icons[(int) ((float) controller.getEnergyStored(null) / (float) controller.getMaxEnergyStored(null) * 7f)]; + return sideIcon; } @Override public IIcon getIcon(int side, int meta) { - if (side == 0 || side == 1) + if (side == 3) { - return sideIcon; + return icons[0]; } - return icons[0]; + return sideIcon; } } diff --git a/src/main/java/storagecraft/container/ContainerController.java b/src/main/java/storagecraft/container/ContainerController.java index b69f1fe02..247acf592 100644 --- a/src/main/java/storagecraft/container/ContainerController.java +++ b/src/main/java/storagecraft/container/ContainerController.java @@ -8,6 +8,6 @@ public class ContainerController extends ContainerBase { super(player); - addPlayerInventory(8, 108); + addPlayerInventory(8, 99); } } diff --git a/src/main/java/storagecraft/gui/GuiController.java b/src/main/java/storagecraft/gui/GuiController.java index d625775ee..abf67aa7b 100644 --- a/src/main/java/storagecraft/gui/GuiController.java +++ b/src/main/java/storagecraft/gui/GuiController.java @@ -8,9 +8,14 @@ public class GuiController extends GuiBase { private TileController controller; + private int barX = 8; + private int barY = 20; + private int barWidth = 16; + private int barHeight = 58; + public GuiController(ContainerController container, TileController controller) { - super(container, 176, 190); + super(container, 176, 181); this.controller = controller; } @@ -33,23 +38,22 @@ public class GuiController extends GuiBase drawTexturedModalRect(x, y, 0, 0, xSize, ySize); - int barX = 17; - int barY = 25; - int barWidth = 16; - int barHeight = 58; - int barHeightNew = (int) ((float) controller.getEnergyStored(null) / (float) controller.getMaxEnergyStored(null) * (float) barHeight); - drawTexturedModalRect(x + barX, y + barY + barHeight - barHeightNew, 178, 0, barWidth, barHeightNew); + drawTexturedModalRect(x + barX, y + barY + barHeight - barHeightNew, 178, 0 + (barHeight - barHeightNew), barWidth, barHeightNew); } @Override public void drawForeground(int mouseX, int mouseY) { drawString(7, 7, t("gui.storagecraft:controller")); - drawString(7, 96, t("container.inventory")); + drawString(7, 87, t("container.inventory")); - drawString(45, 24, t("misc.storagecraft:energyStored", controller.getEnergyStored(null), controller.getMaxEnergyStored(null))); - drawString(45, 44, t("misc.storagecraft:energyUsage", controller.getEnergyUsage())); + drawString(31, 20, t("misc.storagecraft:energyUsage", controller.getEnergyUsage())); + + if (inBounds(barX, barY, barWidth, barHeight, mouseX, mouseY)) + { + drawTooltip(mouseX, mouseY, t("misc.storagecraft:energyStored", controller.getEnergyStored(null), controller.getMaxEnergyStored(null))); + } } } diff --git a/src/main/java/storagecraft/gui/GuiGrid.java b/src/main/java/storagecraft/gui/GuiGrid.java index fb73eef9d..26fae27f5 100644 --- a/src/main/java/storagecraft/gui/GuiGrid.java +++ b/src/main/java/storagecraft/gui/GuiGrid.java @@ -119,6 +119,7 @@ public class GuiGrid extends GuiBase public boolean isHoveringOverClear(int mouseX, int mouseY) { + // @TODO: Use inBounds return mouseX >= 81 && mouseX <= 87 && mouseY >= 105 && mouseY <= 111; } diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller0.png b/src/main/resources/assets/storagecraft/textures/blocks/controller0.png index 9a47a1cb3..cd7bb2486 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller0.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller0.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller1.png b/src/main/resources/assets/storagecraft/textures/blocks/controller1.png index 0b1c41ed6..9a47a1cb3 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller1.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller1.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller2.png b/src/main/resources/assets/storagecraft/textures/blocks/controller2.png index 1b52fd5d8..0b1c41ed6 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller2.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller2.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller3.png b/src/main/resources/assets/storagecraft/textures/blocks/controller3.png index 6b4e8170e..1b52fd5d8 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller3.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller3.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller4.png b/src/main/resources/assets/storagecraft/textures/blocks/controller4.png index 17859d5df..6b4e8170e 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller4.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller4.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller5.png b/src/main/resources/assets/storagecraft/textures/blocks/controller5.png index bd180b11f..17859d5df 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller5.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller5.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller6.png b/src/main/resources/assets/storagecraft/textures/blocks/controller6.png index ac2c10e8d..bd180b11f 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller6.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller6.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller7.png b/src/main/resources/assets/storagecraft/textures/blocks/controller7.png index 153f0788a..ac2c10e8d 100644 Binary files a/src/main/resources/assets/storagecraft/textures/blocks/controller7.png and b/src/main/resources/assets/storagecraft/textures/blocks/controller7.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/controller8.png b/src/main/resources/assets/storagecraft/textures/blocks/controller8.png new file mode 100644 index 000000000..153f0788a Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/blocks/controller8.png differ diff --git a/src/main/resources/assets/storagecraft/textures/gui/controller.png b/src/main/resources/assets/storagecraft/textures/gui/controller.png index 96810b8fe..2343c40fc 100644 Binary files a/src/main/resources/assets/storagecraft/textures/gui/controller.png and b/src/main/resources/assets/storagecraft/textures/gui/controller.png differ