diff --git a/src/main/java/storagecraft/block/BlockDrive.java b/src/main/java/storagecraft/block/BlockDrive.java index a364edd80..834f288ea 100644 --- a/src/main/java/storagecraft/block/BlockDrive.java +++ b/src/main/java/storagecraft/block/BlockDrive.java @@ -1,13 +1,19 @@ package storagecraft.block; import net.minecraft.block.ITileEntityProvider; +import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import storagecraft.SC; import storagecraft.tile.TileDrive; public class BlockDrive extends BlockSC implements ITileEntityProvider { + private IIcon frontIcon; + private IIcon sideIcon; + public BlockDrive() { super("drive"); } @@ -25,4 +31,30 @@ public class BlockDrive extends BlockSC implements ITileEntityProvider { public TileEntity createNewTileEntity(World world, int meta) { return new TileDrive(); } + + @Override + public void registerBlockIcons(IIconRegister register) { + frontIcon = register.registerIcon("storagecraft:drive"); + sideIcon = register.registerIcon("storagecraft:generic"); + } + + @Override + public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { + TileDrive tile = (TileDrive) world.getTileEntity(x, y, z); + + if (side == tile.getDirection().getOpposite().ordinal()) { + return frontIcon; + } + + return sideIcon; + } + + @Override + public IIcon getIcon(int side, int meta) { + if (side == 3) { + return frontIcon; + } + + return sideIcon; + } } diff --git a/src/main/java/storagecraft/block/BlockGrid.java b/src/main/java/storagecraft/block/BlockGrid.java index 0453411e2..ae522b5a8 100644 --- a/src/main/java/storagecraft/block/BlockGrid.java +++ b/src/main/java/storagecraft/block/BlockGrid.java @@ -12,8 +12,8 @@ import storagecraft.tile.TileGrid; public class BlockGrid extends BlockSC implements ITileEntityProvider { private IIcon sideIcon; - private IIcon iconConnected; - private IIcon iconDisconnected; + private IIcon connectedIcon; + private IIcon disconnectedIcon; public BlockGrid() { super("grid"); @@ -35,8 +35,8 @@ public class BlockGrid extends BlockSC implements ITileEntityProvider { @Override public void registerBlockIcons(IIconRegister register) { - iconConnected = register.registerIcon("storagecraft:gridConnected"); - iconDisconnected = register.registerIcon("storagecraft:gridDisconnected"); + connectedIcon = register.registerIcon("storagecraft:gridConnected"); + disconnectedIcon = register.registerIcon("storagecraft:gridDisconnected"); sideIcon = register.registerIcon("storagecraft:generic"); } @@ -45,7 +45,7 @@ public class BlockGrid extends BlockSC implements ITileEntityProvider { TileGrid tile = (TileGrid) world.getTileEntity(x, y, z); if (side == tile.getDirection().getOpposite().ordinal()) { - return tile.isConnected() ? iconConnected : iconDisconnected; + return tile.isConnected() ? connectedIcon : disconnectedIcon; } return sideIcon; @@ -54,7 +54,7 @@ public class BlockGrid extends BlockSC implements ITileEntityProvider { @Override public IIcon getIcon(int side, int meta) { if (side == 3) { - return iconDisconnected; + return disconnectedIcon; } return sideIcon; diff --git a/src/main/java/storagecraft/block/BlockStorageProxy.java b/src/main/java/storagecraft/block/BlockStorageProxy.java index ada2425a2..900f64d31 100644 --- a/src/main/java/storagecraft/block/BlockStorageProxy.java +++ b/src/main/java/storagecraft/block/BlockStorageProxy.java @@ -1,11 +1,17 @@ package storagecraft.block; import net.minecraft.block.ITileEntityProvider; +import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import storagecraft.tile.TileStorageProxy; public class BlockStorageProxy extends BlockSC implements ITileEntityProvider { + private IIcon frontIcon; + private IIcon sideIcon; + public BlockStorageProxy() { super("storageProxy"); } @@ -14,4 +20,30 @@ public class BlockStorageProxy extends BlockSC implements ITileEntityProvider { public TileEntity createNewTileEntity(World world, int meta) { return new TileStorageProxy(); } + + @Override + public void registerBlockIcons(IIconRegister register) { + frontIcon = register.registerIcon("storagecraft:storageProxy"); + sideIcon = register.registerIcon("storagecraft:generic"); + } + + @Override + public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { + TileStorageProxy tile = (TileStorageProxy) world.getTileEntity(x, y, z); + + if (side == tile.getDirection().getOpposite().ordinal()) { + return frontIcon; + } + + return sideIcon; + } + + @Override + public IIcon getIcon(int side, int meta) { + if (side == 3) { + return frontIcon; + } + + return sideIcon; + } } diff --git a/src/main/java/storagecraft/item/ItemStorageCell.java b/src/main/java/storagecraft/item/ItemStorageCell.java index 198ae50f4..cdb238e54 100644 --- a/src/main/java/storagecraft/item/ItemStorageCell.java +++ b/src/main/java/storagecraft/item/ItemStorageCell.java @@ -1,15 +1,19 @@ package storagecraft.item; import java.util.List; +import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import storagecraft.storage.CellStorage; public class ItemStorageCell extends ItemSC { + private IIcon[] icons = new IIcon[5]; + public ItemStorageCell() { super("storageCell"); @@ -40,4 +44,16 @@ public class ItemStorageCell extends ItemSC { CellStorage.init(stack); } + + @Override + public void registerIcons(IIconRegister register) { + for (int i = 0; i < 5; ++i) { + icons[i] = register.registerIcon("storagecraft:storageCell" + i); + } + } + + @Override + public IIcon getIconFromDamage(int damage) { + return icons[damage]; + } } diff --git a/src/main/resources/assets/storagecraft/textures/blocks/drive.png b/src/main/resources/assets/storagecraft/textures/blocks/drive.png new file mode 100644 index 000000000..80e45906c Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/blocks/drive.png differ diff --git a/src/main/resources/assets/storagecraft/textures/blocks/storageProxy.png b/src/main/resources/assets/storagecraft/textures/blocks/storageProxy.png new file mode 100644 index 000000000..c67ed47a2 Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/blocks/storageProxy.png differ diff --git a/src/main/resources/assets/storagecraft/textures/items/storageCell.png b/src/main/resources/assets/storagecraft/textures/items/storageCell.png deleted file mode 100644 index 9b217783f..000000000 Binary files a/src/main/resources/assets/storagecraft/textures/items/storageCell.png and /dev/null differ diff --git a/src/main/resources/assets/storagecraft/textures/items/storageCell0.png b/src/main/resources/assets/storagecraft/textures/items/storageCell0.png new file mode 100644 index 000000000..78745bef8 Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/items/storageCell0.png differ diff --git a/src/main/resources/assets/storagecraft/textures/items/storageCell1.png b/src/main/resources/assets/storagecraft/textures/items/storageCell1.png new file mode 100644 index 000000000..482a02cff Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/items/storageCell1.png differ diff --git a/src/main/resources/assets/storagecraft/textures/items/storageCell2.png b/src/main/resources/assets/storagecraft/textures/items/storageCell2.png new file mode 100644 index 000000000..8a52ec786 Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/items/storageCell2.png differ diff --git a/src/main/resources/assets/storagecraft/textures/items/storageCell3.png b/src/main/resources/assets/storagecraft/textures/items/storageCell3.png new file mode 100644 index 000000000..563c0e5da Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/items/storageCell3.png differ diff --git a/src/main/resources/assets/storagecraft/textures/items/storageCell4.png b/src/main/resources/assets/storagecraft/textures/items/storageCell4.png new file mode 100644 index 000000000..d7946e064 Binary files /dev/null and b/src/main/resources/assets/storagecraft/textures/items/storageCell4.png differ