diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index d32db6d1d..e7df9b1d7 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -875,6 +875,8 @@ public class ModBlocks { public static Block machine_waste_drum; public static final int guiID_waste_drum = 79; + public static Block machine_storage_drum; + public static final int guiID_storage_drum = 79; public static Block turret_light; public static Block turret_heavy; @@ -1756,6 +1758,7 @@ public class ModBlocks { machine_deaerator = new MachineDeaerator(Material.iron).setBlockName("machine_deaerator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_deaerator"); machine_waste_drum = new WasteDrum(Material.iron).setBlockName("machine_waste_drum").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":waste_drum"); + machine_storage_drum = new StorageDrum(Material.iron, guiID_storage_drum).setBlockName("machine_storage_drum").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_storage_drum"); machine_schrabidium_transmutator = new MachineSchrabidiumTransmutator(Material.iron).setBlockName("machine_schrabidium_transmutator").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab); @@ -2478,7 +2481,9 @@ public class ModBlocks { GameRegistry.registerBlock(machine_boiler_electric_off, machine_boiler_electric_off.getUnlocalizedName()); GameRegistry.registerBlock(machine_turbine, machine_turbine.getUnlocalizedName()); GameRegistry.registerBlock(machine_large_turbine, machine_large_turbine.getUnlocalizedName()); + GameRegistry.registerBlock(machine_deaerator, machine_deaerator.getUnlocalizedName()); GameRegistry.registerBlock(machine_waste_drum, machine_waste_drum.getUnlocalizedName()); + GameRegistry.registerBlock(machine_storage_drum, machine_storage_drum.getUnlocalizedName()); GameRegistry.registerBlock(machine_shredder, machine_shredder.getUnlocalizedName()); GameRegistry.registerBlock(machine_shredder_large, machine_shredder_large.getUnlocalizedName()); //GameRegistry.registerBlock(machine_deuterium, machine_deuterium.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/blocks/machine/BlockMachineBase.java b/src/main/java/com/hbm/blocks/machine/BlockMachineBase.java index 045167909..634f09347 100644 --- a/src/main/java/com/hbm/blocks/machine/BlockMachineBase.java +++ b/src/main/java/com/hbm/blocks/machine/BlockMachineBase.java @@ -21,7 +21,7 @@ public abstract class BlockMachineBase extends BlockContainer { int guiID = -1; protected boolean rotatable = false; - protected BlockMachineBase(Material mat, int guiID) { + public BlockMachineBase(Material mat, int guiID) { super(mat); this.guiID = guiID; } diff --git a/src/main/java/com/hbm/blocks/machine/StorageDrum.java b/src/main/java/com/hbm/blocks/machine/StorageDrum.java new file mode 100644 index 000000000..7083eed48 --- /dev/null +++ b/src/main/java/com/hbm/blocks/machine/StorageDrum.java @@ -0,0 +1,49 @@ +package com.hbm.blocks.machine; + +import com.hbm.tileentity.machine.TileEntityStorageDrum; + +import net.minecraft.block.material.Material; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.AxisAlignedBB; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +public class StorageDrum extends BlockMachineBase { + + public StorageDrum(Material mat, int guiID) { + super(mat, guiID); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return new TileEntityStorageDrum(); + } + + @Override + public int getRenderType() { + return -1; + } + + @Override + public boolean isOpaqueCube() { + return false; + } + + @Override + public boolean renderAsNormalBlock() { + return false; + } + + @Override + public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) { + float f = 0.0625F; + this.setBlockBounds(2 * f, 0.0F, 2 * f, 14 * f, 1.0F, 14 * f); + } + + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + float f = 0.0625F; + this.setBlockBounds(2 * f, 0.0F, 2 * f, 14 * f, 1.0F, 14 * f); + return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); + } +} diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 24b2a8e05..389d0c89f 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -191,6 +191,7 @@ public class ModItems { public static Item nugget_pu_mix; public static Item nugget_neptunium; public static Item nugget_polonium; + public static Item nugget_technetium; public static Item nugget_co60; public static Item nugget_au198; public static Item nugget_ra226; @@ -2504,6 +2505,7 @@ public class ModItems { nugget_pu_mix = new ItemHazard(ItemHazard.purg * ItemHazard.nugget).setUnlocalizedName("nugget_pu_mix").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_pu_mix"); nugget_neptunium = new ItemHazard(ItemHazard.np237 * ItemHazard.nugget).setUnlocalizedName("nugget_neptunium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_neptunium"); nugget_polonium = new ItemHazard(ItemHazard.po210 * ItemHazard.nugget, true).setUnlocalizedName("nugget_polonium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_polonium"); + nugget_technetium = new ItemHazard().addRadiation(ItemHazard.tc99 * ItemHazard.nugget).toItem().setUnlocalizedName("nugget_technetium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_technetium"); nugget_co60 = new ItemHazard().addRadiation(ItemHazard.co60 * ItemHazard.nugget).addFire(5).toItem().setUnlocalizedName("nugget_co60").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_co60"); nugget_au198 = new ItemHazard().addRadiation(ItemHazard.au198 * ItemHazard.nugget).addFire(15).toItem().setUnlocalizedName("nugget_au198").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_au198"); nugget_ra226 = new ItemHazard().addRadiation(ItemHazard.ra226 * ItemHazard.nugget).toItem().setUnlocalizedName("nugget_ra226").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_ra226"); @@ -5254,6 +5256,7 @@ public class ModItems { GameRegistry.registerItem(nugget_neptunium, nugget_neptunium.getUnlocalizedName()); GameRegistry.registerItem(nugget_polonium, nugget_polonium.getUnlocalizedName()); GameRegistry.registerItem(nugget_co60, nugget_co60.getUnlocalizedName()); + GameRegistry.registerItem(nugget_technetium, nugget_technetium.getUnlocalizedName()); GameRegistry.registerItem(nugget_au198, nugget_au198.getUnlocalizedName()); GameRegistry.registerItem(nugget_ra226, nugget_ra226.getUnlocalizedName()); GameRegistry.registerItem(nugget_lead, nugget_lead.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/special/ItemHazard.java b/src/main/java/com/hbm/items/special/ItemHazard.java index c19f21746..afac46d7b 100644 --- a/src/main/java/com/hbm/items/special/ItemHazard.java +++ b/src/main/java/com/hbm/items/special/ItemHazard.java @@ -15,6 +15,7 @@ import net.minecraft.world.World; public class ItemHazard extends ItemCustomLore implements IItemHazard { //CO60 5a α 030.00Rad/s Spicy + //TC99 211,000a α 002.75Rad/s Spicy //I181 192h α 150.00Rad/s 2 much spice :( //XE135 9h α aaaaaaaaaaaaaaaa //CS137 30a α 020.00Rad/s Spicy @@ -32,6 +33,7 @@ public class ItemHazard extends ItemCustomLore implements IItemHazard { //PU240 6,600a α 007.50Rad/s public static final float co60 = 30.0F; + public static final float tc99 = 2.75F; public static final float i131 = 150.0F; public static final float xe135 = 1250.0F; public static final float cs137 = 20.0F; diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index 4e2c29343..9224c8b19 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -177,6 +177,7 @@ public class ClientProxy extends ServerProxy { ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineLargeTurbine.class, new RenderBigTurbine()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineReactor.class, new RenderBreeder()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntitySolarBoiler.class, new RenderSolarBoiler()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntityStorageDrum.class, new RenderStorageDrum()); //AMS ClientRegistry.bindTileEntitySpecialRenderer(TileEntityAMSBase.class, new RenderAMSBase()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityAMSEmitter.class, new RenderAMSEmitter()); diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 50d115430..eaecc23dc 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -466,6 +466,7 @@ public class MainRegistry { GameRegistry.registerTileEntity(TileEntitySILEX.class, "tileentity_silex"); GameRegistry.registerTileEntity(TileEntityFEL.class, "tileentity_fel"); GameRegistry.registerTileEntity(TileEntityDemonLamp.class, "tileentity_demonlamp"); + GameRegistry.registerTileEntity(TileEntityStorageDrum.class, "tileentity_waste_storage_drum"); GameRegistry.registerTileEntity(TileEntityRBMKRod.class, "tileentity_rbmk_rod"); GameRegistry.registerTileEntity(TileEntityRBMKControlManual.class, "tileentity_rbmk_control"); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index d7668a02b..f84dc1818 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -126,6 +126,9 @@ public class ResourceManager { //RTG public static final IModelCustom rtg = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/machines/rtg.obj")); + + //Waste Drum + public static final IModelCustom waste_drum = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/machines/drum.obj")); //Anti Mass Spectrometer public static final IModelCustom ams_base = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/ams_base.obj")); @@ -387,6 +390,9 @@ public class ResourceManager { public static final ResourceLocation rtg_cell_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/rtg_cell.png"); public static final ResourceLocation rtg_polonium_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/rtg_polonium.png"); + //Waste Drum + public static final ResourceLocation waste_drum_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/drum_gray.png"); + //Anti Mass Spectrometer public static final ResourceLocation ams_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/ams_base.png"); public static final ResourceLocation ams_emitter_tex = new ResourceLocation(RefStrings.MODID, "textures/models/ams_emitter.png"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderStorageDrum.java b/src/main/java/com/hbm/render/tileentity/RenderStorageDrum.java new file mode 100644 index 000000000..e0d270874 --- /dev/null +++ b/src/main/java/com/hbm/render/tileentity/RenderStorageDrum.java @@ -0,0 +1,25 @@ +package com.hbm.render.tileentity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.main.ResourceManager; + +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.tileentity.TileEntity; + +public class RenderStorageDrum extends TileEntitySpecialRenderer { + + @Override + public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) { + + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_CULL_FACE); + + bindTexture(ResourceManager.waste_drum_tex); + ResourceManager.waste_drum.renderAll(); + + GL11.glPopMatrix(); + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityStorageDrum.java b/src/main/java/com/hbm/tileentity/machine/TileEntityStorageDrum.java new file mode 100644 index 000000000..180d699cd --- /dev/null +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityStorageDrum.java @@ -0,0 +1,20 @@ +package com.hbm.tileentity.machine; + +import com.hbm.tileentity.TileEntityMachineBase; + +public class TileEntityStorageDrum extends TileEntityMachineBase { + + public TileEntityStorageDrum() { + super(24); + } + + @Override + public String getName() { + return "container.storageDrum"; + } + + @Override + public void updateEntity() { + + } +} diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index bd67b31d6..0394f2072 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -1732,6 +1732,7 @@ item.nugget_reiium.name=Reiiumnugget item.nugget_schrabidium.name=Schrabidiumnugget item.nugget_schrabidium_fuel.name=Schrabidiumkernbrennstoffnugget item.nugget_solinium.name=Soliniumnugget +item.nugget_technetium.name=Technetium-99-Nugget item.nugget_th232.name=Th232-Nugget item.nugget_thorium_fuel.name=Thoriumkernbrennstoffnugget item.nugget_u233.name=U233-Nugget diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 7a50b290b..9c0195c88 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1800,6 +1800,7 @@ item.nugget_reiium.name=Reiium Nugget item.nugget_schrabidium.name=Schrabidium Nugget item.nugget_schrabidium_fuel.name=Nugget of Schrabidium Fuel item.nugget_solinium.name=Solinium Nugget +item.nugget_technetium.name=Technetium-99 Nugget item.nugget_th232.name=Th232 Nugget item.nugget_thorium_fuel.name=Nugget of Thorium Fuel item.nugget_u233.name=U233 Nugget @@ -2936,7 +2937,7 @@ tile.ore_coal_oil.name=Oily Coal Ore tile.ore_coal_oil_burning.name=Burning Oily Coal Ore tile.ore_copper.name=Copper Ore tile.ore_daffergon.name=Dellite -tile.ore_depth_cinnebar.name=Depth Cinnebar Ore +tile.ore_depth_cinnebar.name=Depth Cinnibar Ore tile.ore_depth_zirconium.name=Depth Zirconium Ore tile.ore_fluorite.name=Fluorite Ore tile.ore_gneiss_asbestos.name=Schist Asbestos Ore diff --git a/src/main/resources/assets/hbm/models/machines/drum.obj b/src/main/resources/assets/hbm/models/machines/drum.obj new file mode 100644 index 000000000..54c102d88 --- /dev/null +++ b/src/main/resources/assets/hbm/models/machines/drum.obj @@ -0,0 +1,530 @@ +# Blender v2.79 (sub 0) OBJ File: 'drum.blend' +# www.blender.org +o Cube_Cube.001 +v 0.343750 1.000000 0.156250 +v 0.343750 1.000000 -0.156250 +v -0.156250 1.000000 0.343750 +v 0.156250 1.000000 0.343750 +v -0.343750 1.000000 -0.156250 +v -0.343750 1.000000 0.156250 +v 0.156250 1.000000 -0.343750 +v -0.156250 1.000000 -0.343750 +v 0.312500 0.935000 0.125000 +v 0.312500 0.935000 -0.125000 +v 0.125000 0.935000 -0.312500 +v -0.125000 0.935000 -0.312500 +v -0.312500 0.935000 -0.125000 +v -0.312500 0.935000 0.125000 +v -0.125000 0.935000 0.312500 +v 0.125000 0.935000 0.312500 +v -0.156250 0.000000 -0.343750 +v 0.156250 0.000000 -0.343750 +v -0.343750 0.000000 0.156250 +v -0.343750 0.000000 -0.156250 +v 0.156250 0.000000 0.343750 +v -0.156250 0.000000 0.343750 +v 0.343750 0.000000 -0.156250 +v 0.343750 0.000000 0.156250 +v 0.125000 0.062500 0.312500 +v -0.125000 0.062500 0.312500 +v -0.312500 0.062500 0.125000 +v -0.312500 0.062500 -0.125000 +v -0.125000 0.062500 -0.312500 +v 0.125000 0.062500 -0.312500 +v 0.312500 0.062500 -0.125000 +v 0.312500 0.062500 0.125000 +v -0.156250 0.062500 -0.343750 +v 0.156250 0.062500 -0.343750 +v -0.343750 0.062500 0.156250 +v -0.343750 0.062500 -0.156250 +v 0.156250 0.062500 0.343750 +v -0.156250 0.062500 0.343750 +v 0.343750 0.062500 -0.156250 +v 0.343750 0.062500 0.156250 +v -0.156250 0.935000 -0.343750 +v 0.156250 0.935000 -0.343750 +v -0.343750 0.935000 0.156250 +v -0.343750 0.935000 -0.156250 +v 0.156250 0.935000 0.343750 +v -0.156250 0.935000 0.343750 +v 0.343750 0.935000 -0.156250 +v 0.343750 0.935000 0.156250 +v 0.125000 0.312500 0.312500 +v -0.125000 0.312500 0.312500 +v -0.312500 0.312500 0.125000 +v -0.312500 0.312500 -0.125000 +v -0.125000 0.312500 -0.312500 +v 0.125000 0.312500 -0.312500 +v 0.312500 0.312500 -0.125000 +v 0.312500 0.312500 0.125000 +v -0.156250 0.312500 -0.343750 +v 0.156250 0.312500 -0.343750 +v -0.343750 0.312500 0.156250 +v -0.343750 0.312500 -0.156250 +v 0.156250 0.312500 0.343750 +v -0.156250 0.312500 0.343750 +v 0.343750 0.312500 -0.156250 +v 0.343750 0.312500 0.156250 +v 0.125000 0.375000 0.312500 +v -0.125000 0.375000 0.312500 +v -0.312500 0.375000 0.125000 +v -0.312500 0.375000 -0.125000 +v -0.125000 0.375000 -0.312500 +v 0.125000 0.375000 -0.312500 +v 0.312500 0.375000 -0.125000 +v 0.312500 0.375000 0.125000 +v -0.156250 0.375000 -0.343750 +v 0.156250 0.375000 -0.343750 +v -0.343750 0.375000 0.156250 +v -0.343750 0.375000 -0.156250 +v 0.156250 0.375000 0.343750 +v -0.156250 0.375000 0.343750 +v 0.343750 0.375000 -0.156250 +v 0.343750 0.375000 0.156250 +v 0.125000 0.625000 0.312500 +v -0.125000 0.625000 0.312500 +v -0.312500 0.625000 0.125000 +v -0.312500 0.625000 -0.125000 +v -0.125000 0.625000 -0.312500 +v 0.125000 0.625000 -0.312500 +v 0.312500 0.625000 -0.125000 +v 0.312500 0.625000 0.125000 +v -0.156250 0.625000 -0.343750 +v 0.156250 0.625000 -0.343750 +v -0.343750 0.625000 0.156250 +v -0.343750 0.625000 -0.156250 +v 0.156250 0.625000 0.343750 +v -0.156250 0.625000 0.343750 +v 0.343750 0.625000 -0.156250 +v 0.343750 0.625000 0.156250 +v 0.125000 0.687500 0.312500 +v -0.125000 0.687500 0.312500 +v -0.312500 0.687500 0.125000 +v -0.312500 0.687500 -0.125000 +v -0.125000 0.687500 -0.312500 +v 0.125000 0.687500 -0.312500 +v 0.312500 0.687500 -0.125000 +v 0.312500 0.687500 0.125000 +v -0.156250 0.687500 -0.343750 +v 0.156250 0.687500 -0.343750 +v -0.343750 0.687500 0.156250 +v -0.343750 0.687500 -0.156250 +v 0.156250 0.687500 0.343750 +v -0.156250 0.687500 0.343750 +v 0.343750 0.687500 -0.156250 +v 0.343750 0.687500 0.156250 +vt 1.000000 0.030303 +vt 0.875000 0.000000 +vt 1.000000 0.000000 +vt 0.125000 0.030303 +vt -0.000000 0.000000 +vt 0.125000 0.000000 +vt 0.250000 0.030303 +vt 0.250000 0.000000 +vt 0.375000 0.030303 +vt 0.375000 0.000000 +vt 0.500000 0.030303 +vt 0.500000 0.000000 +vt 0.625000 0.030303 +vt 0.625000 -0.000000 +vt 0.750000 0.000000 +vt 0.875000 0.030303 +vt 0.975000 0.060606 +vt -0.000000 0.060606 +vt 0.100000 0.060606 +vt 0.125000 0.060606 +vt 0.225000 0.060606 +vt 0.250000 0.060606 +vt 0.350000 0.060606 +vt 0.375000 0.060606 +vt 0.475000 0.060606 +vt 0.500000 0.060606 +vt 0.600000 0.060606 +vt 0.725000 0.060606 +vt 0.625000 0.060606 +vt 0.750000 0.060606 +vt 0.850000 0.060606 +vt 0.975000 0.181818 +vt 0.875000 0.060606 +vt 1.000000 0.212121 +vt 0.875000 0.181818 +vt 1.000000 0.242424 +vt 0.875000 0.212121 +vt 0.975000 0.272727 +vt 0.875000 0.242424 +vt 0.975000 0.393939 +vt 0.875000 0.272727 +vt 1.000000 0.424242 +vt 0.875000 0.393939 +vt 1.000000 0.454545 +vt 0.875000 0.424242 +vt 0.975000 0.484848 +vt 0.875000 0.454545 +vt 0.875000 0.606061 +vt 0.975000 0.606061 +vt 1.000000 0.636364 +vt 0.875000 0.666667 +vt 1.000000 0.666667 +vt 0.100000 0.181818 +vt 0.225000 0.181818 +vt 0.350000 0.181818 +vt 0.375000 0.181818 +vt 0.600000 0.181818 +vt 0.725000 0.181818 +vt 0.850000 0.181818 +vt 0.125000 0.212121 +vt -0.000000 0.181818 +vt 0.250000 0.212121 +vt 0.125000 0.181818 +vt 0.375000 0.212121 +vt 0.250000 0.181818 +vt 0.500000 0.212121 +vt 0.475000 0.181818 +vt 0.625000 0.212121 +vt 0.500000 0.181818 +vt 0.625000 0.181818 +vt 0.750000 0.181818 +vt 0.125000 0.242424 +vt -0.000000 0.212121 +vt 0.250000 0.242424 +vt 0.375000 0.242424 +vt 0.500000 0.242424 +vt 0.625000 0.242424 +vt 0.750000 0.212121 +vt 0.000000 0.272727 +vt 0.100000 0.272727 +vt 0.125000 0.272727 +vt 0.225000 0.272727 +vt 0.250000 0.272727 +vt 0.350000 0.272727 +vt 0.375000 0.272727 +vt 0.475000 0.272727 +vt 0.500000 0.272727 +vt 0.600000 0.272727 +vt 0.725000 0.272727 +vt 0.625000 0.272727 +vt 0.750000 0.272727 +vt 0.850000 0.272727 +vt 0.100000 0.393939 +vt 0.225000 0.393939 +vt 0.350000 0.393939 +vt 0.375000 0.393939 +vt 0.600000 0.393939 +vt 0.725000 0.393939 +vt 0.850000 0.393939 +vt 0.125000 0.424242 +vt 0.000000 0.393939 +vt 0.250000 0.424242 +vt 0.125000 0.393939 +vt 0.375000 0.424242 +vt 0.250000 0.393939 +vt 0.500000 0.424242 +vt 0.475000 0.393939 +vt 0.625000 0.424242 +vt 0.500000 0.393939 +vt 0.625000 0.393939 +vt 0.750000 0.393939 +vt 0.125000 0.454545 +vt -0.000000 0.424242 +vt 0.250000 0.454545 +vt 0.375000 0.454545 +vt 0.500000 0.454545 +vt 0.625000 0.454545 +vt 0.750000 0.424242 +vt -0.000000 0.484848 +vt 0.100000 0.484848 +vt 0.125000 0.484848 +vt 0.225000 0.484848 +vt 0.250000 0.484848 +vt 0.350000 0.484848 +vt 0.375000 0.484848 +vt 0.475000 0.484848 +vt 0.500000 0.484848 +vt 0.600000 0.484848 +vt 0.725000 0.484848 +vt 0.625000 0.484848 +vt 0.750000 0.484848 +vt 0.850000 0.484848 +vt -0.000000 0.606061 +vt 0.100000 0.606061 +vt 0.125000 0.606061 +vt 0.225000 0.606061 +vt 0.250000 0.606061 +vt 0.350000 0.606061 +vt 0.475000 0.606061 +vt 0.375000 0.606061 +vt 0.500000 0.606061 +vt 0.600000 0.606061 +vt 0.625000 0.606061 +vt 0.725000 0.606061 +vt 0.750000 0.606061 +vt 0.850000 0.606061 +vt 0.125000 0.636364 +vt 0.250000 0.636364 +vt 0.375000 0.636364 +vt 0.500000 0.636364 +vt 0.625000 0.636364 +vt 0.875000 0.636364 +vt 0.000000 0.666667 +vt 0.125000 0.666667 +vt 0.250000 0.666667 +vt 0.375000 0.666667 +vt 0.500000 0.666667 +vt 0.625000 0.666667 +vt 0.750000 0.666667 +vt 0.075000 1.000000 +vt -0.000000 0.757576 +vt 0.200000 0.666667 +vt 0.350000 0.666667 +vt 0.550000 0.757576 +vt 0.475000 1.000000 +vt -0.000000 0.030303 +vt 0.750000 0.030303 +vt 0.875000 0.484848 +vt -0.000000 0.242424 +vt 0.750000 0.242424 +vt -0.000000 0.454545 +vt 0.750000 0.454545 +vt 0.000000 0.636364 +vt 0.750000 0.636364 +vt 0.275000 0.757576 +vt 0.275000 0.909091 +vt 0.200000 1.000000 +vt 0.000000 0.909091 +vt 0.075000 0.666667 +vt 0.350000 1.000000 +vt 0.275000 0.909091 +vt 0.275000 0.757576 +vt 0.475000 0.666667 +vt 0.550000 0.909091 +vn -0.7071 0.0000 -0.7071 +vn -1.0000 0.0000 0.0000 +vn -0.7071 0.0000 0.7071 +vn 0.0000 0.0000 1.0000 +vn 0.7071 0.0000 0.7071 +vn 1.0000 0.0000 0.0000 +vn 0.7071 0.0000 -0.7071 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +s off +f 36/1/1 17/2/1 20/3/1 +f 35/4/2 20/5/2 19/6/2 +f 38/7/3 19/6/3 22/8/3 +f 37/9/4 22/8/4 21/10/4 +f 40/11/5 21/10/5 24/12/5 +f 39/13/6 24/12/6 23/14/6 +f 18/15/7 39/13/7 23/14/7 +f 33/16/8 18/15/8 17/2/8 +f 28/17/9 33/16/9 36/1/9 +f 28/18/9 35/4/9 27/19/9 +f 27/20/9 38/7/9 26/21/9 +f 26/22/9 37/9/9 25/23/9 +f 25/24/9 40/11/9 32/25/9 +f 32/26/9 39/13/9 31/27/9 +f 39/13/9 30/28/9 31/29/9 +f 30/30/9 33/16/9 29/31/9 +f 52/32/1 29/33/1 28/17/1 +f 60/34/10 53/35/10 52/32/10 +f 76/36/1 57/37/1 60/34/1 +f 68/38/9 73/39/9 76/36/9 +f 84/40/1 69/41/1 68/38/1 +f 92/42/10 85/43/10 84/40/10 +f 108/44/1 89/45/1 92/42/1 +f 100/46/9 105/47/9 108/44/9 +f 12/48/1 100/46/1 13/49/1 +f 44/50/10 12/48/10 13/49/10 +f 8/51/1 44/50/1 5/52/1 +f 51/53/2 28/18/2 27/19/2 +f 50/54/3 27/20/3 26/21/3 +f 49/55/4 26/22/4 25/23/4 +f 32/25/5 49/56/5 25/24/5 +f 55/57/6 32/26/6 31/27/6 +f 54/58/7 31/29/7 30/28/7 +f 53/59/8 30/30/8 29/31/8 +f 59/60/10 52/61/10 51/53/10 +f 62/62/10 51/63/10 50/54/10 +f 61/64/10 50/65/10 49/55/10 +f 64/66/10 49/56/10 56/67/10 +f 63/68/10 56/69/10 55/57/10 +f 54/58/10 63/68/10 55/70/10 +f 57/37/10 54/71/10 53/59/10 +f 75/72/2 60/73/2 59/60/2 +f 78/74/3 59/60/3 62/62/3 +f 77/75/4 62/62/4 61/64/4 +f 80/76/5 61/64/5 64/66/5 +f 79/77/6 64/66/6 63/68/6 +f 58/78/7 79/77/7 63/68/7 +f 73/39/8 58/78/8 57/37/8 +f 68/79/9 75/72/9 67/80/9 +f 67/81/9 78/74/9 66/82/9 +f 66/83/9 77/75/9 65/84/9 +f 65/85/9 80/76/9 72/86/9 +f 72/87/9 79/77/9 71/88/9 +f 79/77/9 70/89/9 71/90/9 +f 70/91/9 73/39/9 69/92/9 +f 83/93/2 68/79/2 67/80/2 +f 82/94/3 67/81/3 66/82/3 +f 81/95/4 66/83/4 65/84/4 +f 72/86/5 81/96/5 65/85/5 +f 87/97/6 72/87/6 71/88/6 +f 86/98/7 71/90/7 70/89/7 +f 85/99/8 70/91/8 69/92/8 +f 91/100/10 84/101/10 83/93/10 +f 94/102/10 83/103/10 82/94/10 +f 93/104/10 82/105/10 81/95/10 +f 96/106/10 81/96/10 88/107/10 +f 95/108/10 88/109/10 87/97/10 +f 86/98/10 95/108/10 87/110/10 +f 89/45/10 86/111/10 85/99/10 +f 107/112/2 92/113/2 91/100/2 +f 110/114/3 91/100/3 94/102/3 +f 109/115/4 94/102/4 93/104/4 +f 112/116/5 93/104/5 96/106/5 +f 111/117/6 96/106/6 95/108/6 +f 90/118/7 111/117/7 95/108/7 +f 105/47/8 90/118/8 89/45/8 +f 100/119/9 107/112/9 99/120/9 +f 99/121/9 110/114/9 98/122/9 +f 98/123/9 109/115/9 97/124/9 +f 97/125/9 112/116/9 104/126/9 +f 104/127/9 111/117/9 103/128/9 +f 111/117/9 102/129/9 103/130/9 +f 102/131/9 105/47/9 101/132/9 +f 13/133/2 99/120/2 14/134/2 +f 14/135/3 98/122/3 15/136/3 +f 15/137/4 97/124/4 16/138/4 +f 97/125/5 9/139/5 16/140/5 +f 9/141/6 103/128/6 10/142/6 +f 10/143/7 102/129/7 11/144/7 +f 11/145/8 101/132/8 12/146/8 +f 43/147/10 13/133/10 14/134/10 +f 46/148/10 14/135/10 15/136/10 +f 45/149/10 15/137/10 16/138/10 +f 48/150/10 16/140/10 9/139/10 +f 47/151/10 9/141/10 10/142/10 +f 11/144/10 47/151/10 10/143/10 +f 41/152/10 11/145/10 12/146/10 +f 5/153/2 43/147/2 6/154/2 +f 6/154/3 46/148/3 3/155/3 +f 3/155/4 45/149/4 4/156/4 +f 4/156/5 48/150/5 1/157/5 +f 1/157/6 47/151/6 2/158/6 +f 47/151/7 7/159/7 2/158/7 +f 7/159/8 41/152/8 8/51/8 +f 8/160/9 6/161/9 4/162/9 +f 17/163/10 23/164/10 21/165/10 +f 36/1/1 33/16/1 17/2/1 +f 35/4/2 36/166/2 20/5/2 +f 38/7/3 35/4/3 19/6/3 +f 37/9/4 38/7/4 22/8/4 +f 40/11/5 37/9/5 21/10/5 +f 39/13/6 40/11/6 24/12/6 +f 18/15/7 34/167/7 39/13/7 +f 33/16/8 34/167/8 18/15/8 +f 28/17/9 29/33/9 33/16/9 +f 28/18/9 36/166/9 35/4/9 +f 27/20/9 35/4/9 38/7/9 +f 26/22/9 38/7/9 37/9/9 +f 25/24/9 37/9/9 40/11/9 +f 32/26/9 40/11/9 39/13/9 +f 39/13/9 34/167/9 30/28/9 +f 30/30/9 34/167/9 33/16/9 +f 52/32/1 53/35/1 29/33/1 +f 60/34/10 57/37/10 53/35/10 +f 76/36/1 73/39/1 57/37/1 +f 68/38/9 69/41/9 73/39/9 +f 84/40/1 85/43/1 69/41/1 +f 92/42/10 89/45/10 85/43/10 +f 108/44/1 105/47/1 89/45/1 +f 100/46/9 101/168/9 105/47/9 +f 12/48/1 101/168/1 100/46/1 +f 44/50/10 41/152/10 12/48/10 +f 8/51/1 41/152/1 44/50/1 +f 51/53/2 52/61/2 28/18/2 +f 50/54/3 51/63/3 27/20/3 +f 49/55/4 50/65/4 26/22/4 +f 32/25/5 56/67/5 49/56/5 +f 55/57/6 56/69/6 32/26/6 +f 54/58/7 55/70/7 31/29/7 +f 53/59/8 54/71/8 30/30/8 +f 59/60/10 60/73/10 52/61/10 +f 62/62/10 59/60/10 51/63/10 +f 61/64/10 62/62/10 50/65/10 +f 64/66/10 61/64/10 49/56/10 +f 63/68/10 64/66/10 56/69/10 +f 54/58/10 58/78/10 63/68/10 +f 57/37/10 58/78/10 54/71/10 +f 75/72/2 76/169/2 60/73/2 +f 78/74/3 75/72/3 59/60/3 +f 77/75/4 78/74/4 62/62/4 +f 80/76/5 77/75/5 61/64/5 +f 79/77/6 80/76/6 64/66/6 +f 58/78/7 74/170/7 79/77/7 +f 73/39/8 74/170/8 58/78/8 +f 68/79/9 76/169/9 75/72/9 +f 67/81/9 75/72/9 78/74/9 +f 66/83/9 78/74/9 77/75/9 +f 65/85/9 77/75/9 80/76/9 +f 72/87/9 80/76/9 79/77/9 +f 79/77/9 74/170/9 70/89/9 +f 70/91/9 74/170/9 73/39/9 +f 83/93/2 84/101/2 68/79/2 +f 82/94/3 83/103/3 67/81/3 +f 81/95/4 82/105/4 66/83/4 +f 72/86/5 88/107/5 81/96/5 +f 87/97/6 88/109/6 72/87/6 +f 86/98/7 87/110/7 71/90/7 +f 85/99/8 86/111/8 70/91/8 +f 91/100/10 92/113/10 84/101/10 +f 94/102/10 91/100/10 83/103/10 +f 93/104/10 94/102/10 82/105/10 +f 96/106/10 93/104/10 81/96/10 +f 95/108/10 96/106/10 88/109/10 +f 86/98/10 90/118/10 95/108/10 +f 89/45/10 90/118/10 86/111/10 +f 107/112/2 108/171/2 92/113/2 +f 110/114/3 107/112/3 91/100/3 +f 109/115/4 110/114/4 94/102/4 +f 112/116/5 109/115/5 93/104/5 +f 111/117/6 112/116/6 96/106/6 +f 90/118/7 106/172/7 111/117/7 +f 105/47/8 106/172/8 90/118/8 +f 100/119/9 108/171/9 107/112/9 +f 99/121/9 107/112/9 110/114/9 +f 98/123/9 110/114/9 109/115/9 +f 97/125/9 109/115/9 112/116/9 +f 104/127/9 112/116/9 111/117/9 +f 111/117/9 106/172/9 102/129/9 +f 102/131/9 106/172/9 105/47/9 +f 13/133/2 100/119/2 99/120/2 +f 14/135/3 99/121/3 98/122/3 +f 15/137/4 98/123/4 97/124/4 +f 97/125/5 104/126/5 9/139/5 +f 9/141/6 104/127/6 103/128/6 +f 10/143/7 103/130/7 102/129/7 +f 11/145/8 102/131/8 101/132/8 +f 43/147/10 44/173/10 13/133/10 +f 46/148/10 43/147/10 14/135/10 +f 45/149/10 46/148/10 15/137/10 +f 48/150/10 45/149/10 16/140/10 +f 47/151/10 48/150/10 9/141/10 +f 11/144/10 42/174/10 47/151/10 +f 41/152/10 42/174/10 11/145/10 +f 5/153/2 44/173/2 43/147/2 +f 6/154/3 43/147/3 46/148/3 +f 3/155/4 46/148/4 45/149/4 +f 4/156/5 45/149/5 48/150/5 +f 1/157/6 48/150/6 47/151/6 +f 47/151/7 42/174/7 7/159/7 +f 7/159/8 42/174/8 41/152/8 +f 4/162/9 1/175/9 2/176/9 +f 2/176/9 7/177/9 8/160/9 +f 8/160/9 5/178/9 6/161/9 +f 6/161/9 3/179/9 4/162/9 +f 4/162/9 2/176/9 8/160/9 +f 21/165/10 22/180/10 19/181/10 +f 19/181/10 20/182/10 17/163/10 +f 17/163/10 18/183/10 23/164/10 +f 23/164/10 24/184/10 21/165/10 +f 21/165/10 19/181/10 17/163/10 diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_drum.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_drum.png new file mode 100644 index 000000000..56db1aacf Binary files /dev/null and b/src/main/resources/assets/hbm/textures/gui/processing/gui_drum.png differ diff --git a/src/main/resources/assets/hbm/textures/items/billet_pu241.png b/src/main/resources/assets/hbm/textures/items/billet_pu241.png new file mode 100644 index 000000000..414a217fa Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/billet_pu241.png differ diff --git a/src/main/resources/assets/hbm/textures/items/billet_technetium.png b/src/main/resources/assets/hbm/textures/items/billet_technetium.png new file mode 100644 index 000000000..452bed2d1 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/billet_technetium.png differ diff --git a/src/main/resources/assets/hbm/textures/items/circuit_s.png b/src/main/resources/assets/hbm/textures/items/circuit_s.png new file mode 100644 index 000000000..eab66700a Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/circuit_s.png differ diff --git a/src/main/resources/assets/hbm/textures/items/ingot_s.png b/src/main/resources/assets/hbm/textures/items/ingot_s.png new file mode 100644 index 000000000..333c6c81e Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/ingot_s.png differ diff --git a/src/main/resources/assets/hbm/textures/items/ingot_technetium.png b/src/main/resources/assets/hbm/textures/items/ingot_technetium.png new file mode 100644 index 000000000..e227ccbfd Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/ingot_technetium.png differ diff --git a/src/main/resources/assets/hbm/textures/items/nugget_pu241.png b/src/main/resources/assets/hbm/textures/items/nugget_pu241.png new file mode 100644 index 000000000..65061bea2 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/nugget_pu241.png differ diff --git a/src/main/resources/assets/hbm/textures/items/nugget_s.png b/src/main/resources/assets/hbm/textures/items/nugget_s.png new file mode 100644 index 000000000..e5cacaeb7 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/nugget_s.png differ diff --git a/src/main/resources/assets/hbm/textures/items/nugget_technetium.png b/src/main/resources/assets/hbm/textures/items/nugget_technetium.png new file mode 100644 index 000000000..83abee686 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/nugget_technetium.png differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/anvil.png b/src/main/resources/assets/hbm/textures/models/machines/anvil.png new file mode 100644 index 000000000..77e32587c Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/anvil.png differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/bat9000.png b/src/main/resources/assets/hbm/textures/models/machines/bat9000.png new file mode 100644 index 000000000..ac8bb4006 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/bat9000.png differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/drum_gray.png b/src/main/resources/assets/hbm/textures/models/machines/drum_gray.png new file mode 100644 index 000000000..c6a641965 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/drum_gray.png differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/igen3.png b/src/main/resources/assets/hbm/textures/models/machines/igen3.png new file mode 100644 index 000000000..6379d561f Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/igen3.png differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/zpe.png b/src/main/resources/assets/hbm/textures/models/machines/zpe.png new file mode 100644 index 000000000..f11bb8995 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/zpe.png differ