aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/common/blocks/Block_LapotronicEnergyUnit.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/common/blocks/Block_LapotronicEnergyUnit.java')
-rw-r--r--src/main/java/common/blocks/Block_LapotronicEnergyUnit.java173
1 files changed, 173 insertions, 0 deletions
diff --git a/src/main/java/common/blocks/Block_LapotronicEnergyUnit.java b/src/main/java/common/blocks/Block_LapotronicEnergyUnit.java
new file mode 100644
index 0000000000..653c99216b
--- /dev/null
+++ b/src/main/java/common/blocks/Block_LapotronicEnergyUnit.java
@@ -0,0 +1,173 @@
+package common.blocks;
+
+import java.util.List;
+
+import net.minecraft.block.Block;
+import net.minecraft.block.material.Material;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.client.renderer.texture.TextureMap;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+import net.minecraft.util.ResourceLocation;
+
+import common.itemBlocks.IB_LapotronicEnergyUnit;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.render.TextureFactory;
+import gregtech.api.util.GT_Utility;
+
+public class Block_LapotronicEnergyUnit extends BaseGTUpdateableBlock {
+
+ private static final Block_LapotronicEnergyUnit INSTANCE = new Block_LapotronicEnergyUnit();
+
+ public enum IconBaseSide implements IIconContainer {
+
+ INSTANCE;
+
+ @Override
+ public IIcon getIcon() {
+ return Block_LapotronicEnergyUnit.INSTANCE.iconBaseSide;
+ }
+
+ @Override
+ public IIcon getOverlayIcon() {
+ return null;
+ }
+
+ @Override
+ public ResourceLocation getTextureFile() {
+ return TextureMap.locationBlocksTexture;
+ }
+ }
+
+ static {
+ // technically, this page is owned by me, glee8e, however, I'm kind enough to spare 1 for kekztech since
+ // this is basically abandon ware by now.
+ GT_Utility.addTexturePage((byte) 42);
+ Textures.BlockIcons.setCasingTexture((byte) 42, (byte) 127, TextureFactory.of(IconBaseSide.INSTANCE));
+ }
+
+ private IIcon iconBaseSide;
+ private IIcon iconBaseTop;
+
+ private IIcon iconLapoEmptySide;
+ private IIcon iconLapoEmptyTop;
+ private IIcon iconLapoEVSide;
+ private IIcon iconLapoEVTop;
+ private IIcon iconLapoIVSide;
+ private IIcon iconLapoIVTop;
+ private IIcon iconLapoLuVSide;
+ private IIcon iconLapoLuVTop;
+ private IIcon iconLapoZPMSide;
+ private IIcon iconLapoZPMTop;
+ private IIcon iconLapoUVSide;
+ private IIcon iconLapoUVTop;
+ private IIcon iconUltimateSide;
+ private IIcon iconUltimateTop;
+ private IIcon iconUltimateExtremeSide;
+ private IIcon iconUltimateExtremeTop;
+ private IIcon iconUltimateInsaneSide;
+ private IIcon iconUltimateInsaneTop;
+ private IIcon iconUltimateMegaSide;
+ private IIcon iconUltimateMegaTop;
+
+ private Block_LapotronicEnergyUnit() {
+ super(Material.iron);
+ }
+
+ public static Block registerBlock() {
+ final String blockName = "kekztech_lapotronicenergyunit_block";
+ INSTANCE.setBlockName(blockName);
+ INSTANCE.setCreativeTab(CreativeTabs.tabMisc);
+ INSTANCE.setHardness(5.0f);
+ INSTANCE.setResistance(6.0f);
+ GameRegistry.registerBlock(INSTANCE, IB_LapotronicEnergyUnit.class, blockName);
+
+ return INSTANCE;
+ }
+
+ @Override
+ public void registerBlockIcons(IIconRegister ir) {
+ iconBaseSide = ir.registerIcon("kekztech:LSCBase_side");
+ iconBaseTop = ir.registerIcon("kekztech:LSCBase_top");
+
+ iconLapoEmptySide = ir.registerIcon("kekztech:LapotronicEnergyUnit6_side");
+ iconLapoEmptyTop = ir.registerIcon("kekztech:LapotronicEnergyUnit6_top");
+ iconLapoEVSide = ir.registerIcon("kekztech:LapotronicEnergyUnit7_side");
+ iconLapoEVTop = ir.registerIcon("kekztech:LapotronicEnergyUnit7_top");
+ iconLapoIVSide = ir.registerIcon("kekztech:LapotronicEnergyUnit1_side");
+ iconLapoIVTop = ir.registerIcon("kekztech:LapotronicEnergyUnit1_top");
+ iconLapoLuVSide = ir.registerIcon("kekztech:LapotronicEnergyUnit2_side");
+ iconLapoLuVTop = ir.registerIcon("kekztech:LapotronicEnergyUnit2_top");
+ iconLapoZPMSide = ir.registerIcon("kekztech:LapotronicEnergyUnit3_side");
+ iconLapoZPMTop = ir.registerIcon("kekztech:LapotronicEnergyUnit3_top");
+ iconLapoUVSide = ir.registerIcon("kekztech:LapotronicEnergyUnit4_side");
+ iconLapoUVTop = ir.registerIcon("kekztech:LapotronicEnergyUnit4_top");
+
+ iconUltimateSide = ir.registerIcon("kekztech:UltimateEnergyUnit_side");
+ iconUltimateTop = ir.registerIcon("kekztech:UltimateEnergyUnit_top");
+ iconUltimateExtremeSide = ir.registerIcon("kekztech:ReallyUltimateEnergyUnit_side");
+ iconUltimateExtremeTop = ir.registerIcon("kekztech:ReallyUltimateEnergyUnit_top");
+ iconUltimateInsaneSide = ir.registerIcon("kekztech:InsanelyUltimateEnergyUnit_side");
+ iconUltimateInsaneTop = ir.registerIcon("kekztech:InsanelyUltimateEnergyUnit_top");
+ iconUltimateMegaSide = ir.registerIcon("kekztech:MegaUltimateEnergyUnit_side");
+ iconUltimateMegaTop = ir.registerIcon("kekztech:MegaUltimateEnergyUnit_top");
+ }
+
+ @Override
+ @SuppressWarnings({ "unchecked" })
+ public void getSubBlocks(Item par1, CreativeTabs par2CreativeTabs, List par3List) {
+ // Multi casing
+ par3List.add(new ItemStack(par1, 1, 0));
+ // Empty capacitor
+ par3List.add(new ItemStack(par1, 1, 6));
+ // Lapo capacitors EV - UV
+ par3List.add(new ItemStack(par1, 1, 7));
+ par3List.add(new ItemStack(par1, 1, 1));
+ par3List.add(new ItemStack(par1, 1, 2));
+ par3List.add(new ItemStack(par1, 1, 3));
+ par3List.add(new ItemStack(par1, 1, 4));
+ // Ultimate battery
+ par3List.add(new ItemStack(par1, 1, 5));
+ // UEV Cap
+ par3List.add(new ItemStack(par1, 1, 8));
+ // UIV Cap
+ par3List.add(new ItemStack(par1, 1, 9));
+ // UMV Cap
+ par3List.add(new ItemStack(par1, 1, 10));
+ }
+
+ @Override
+ public IIcon getIcon(int side, int meta) {
+ switch (meta) {
+ case 0:
+ return (side < 2) ? iconBaseTop : iconBaseSide;
+ case 1:
+ return (side < 2) ? iconLapoIVTop : iconLapoIVSide;
+ case 2:
+ return (side < 2) ? iconLapoLuVTop : iconLapoLuVSide;
+ case 3:
+ return (side < 2) ? iconLapoZPMTop : iconLapoZPMSide;
+ case 4:
+ return (side < 2) ? iconLapoUVTop : iconLapoUVSide;
+ case 5:
+ return (side < 2) ? iconUltimateTop : iconUltimateSide;
+ case 6:
+ return (side < 2) ? iconLapoEmptyTop : iconLapoEmptySide;
+ case 7:
+ return (side < 2) ? iconLapoEVTop : iconLapoEVSide;
+ case 8:
+ return (side < 2) ? iconUltimateExtremeTop : iconUltimateExtremeSide;
+ case 9:
+ return (side < 2) ? iconUltimateInsaneTop : iconUltimateInsaneSide;
+ case 10:
+ return (side < 2) ? iconUltimateMegaTop : iconUltimateMegaSide;
+ default:
+ return iconUltimateTop;
+ }
+ }
+}