diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index b8ed67088..9617283a8 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -119,6 +119,7 @@ public class ModBlocks { public static Block stone_depth; public static Block ore_depth_cinnebar; public static Block ore_depth_zirconium; + public static Block ore_depth_borax; public static Block cluster_depth_iron; public static Block cluster_depth_titanium; public static Block cluster_depth_tungsten; @@ -485,6 +486,7 @@ public class ModBlocks { public static Block fireworks; public static Block charge_dynamite; + public static Block charge_miner; public static Block mine_ap; public static Block mine_he; @@ -1295,6 +1297,7 @@ public class ModBlocks { stone_depth = new BlockDepth().setBlockName("stone_depth").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":stone_depth"); ore_depth_cinnebar = new BlockDepthOre().setBlockName("ore_depth_cinnebar").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_cinnebar"); ore_depth_zirconium = new BlockDepthOre().setBlockName("ore_depth_zirconium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_zirconium"); + ore_depth_borax = new BlockDepthOre().setBlockName("ore_depth_borax").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_borax"); cluster_depth_iron = new BlockDepthOre().setBlockName("cluster_depth_iron").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_iron"); cluster_depth_titanium = new BlockDepthOre().setBlockName("cluster_depth_titanium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_titanium"); cluster_depth_tungsten = new BlockDepthOre().setBlockName("cluster_depth_tungsten").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_tungsten"); @@ -1683,6 +1686,7 @@ public class ModBlocks { crashed_balefire = new BlockCrashedBomb(Material.iron).setBlockName("crashed_bomb").setCreativeTab(MainRegistry.nukeTab).setBlockUnbreakable().setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":crashed_balefire"); fireworks = new BlockFireworks(Material.iron).setBlockName("fireworks").setCreativeTab(MainRegistry.nukeTab).setResistance(5.0F); charge_dynamite = new BlockChargeDynamite().setBlockName("charge_dynamite").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); + charge_miner = new BlockChargeMiner().setBlockName("charge_miner").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); mine_ap = new Landmine(Material.iron).setBlockName("mine_ap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_ap"); mine_he = new Landmine(Material.iron).setBlockName("mine_he").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_he"); mine_shrap = new Landmine(Material.iron).setBlockName("mine_shrap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_shrap"); @@ -2297,6 +2301,7 @@ public class ModBlocks { //Depth ores GameRegistry.registerBlock(ore_depth_cinnebar, ItemBlockBase.class, ore_depth_cinnebar.getUnlocalizedName()); GameRegistry.registerBlock(ore_depth_zirconium, ItemBlockBase.class, ore_depth_zirconium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_depth_borax, ItemBlockBase.class, ore_depth_borax.getUnlocalizedName()); GameRegistry.registerBlock(cluster_depth_iron, ItemBlockBase.class, cluster_depth_iron.getUnlocalizedName()); GameRegistry.registerBlock(cluster_depth_titanium, ItemBlockBase.class, cluster_depth_titanium.getUnlocalizedName()); GameRegistry.registerBlock(cluster_depth_tungsten, ItemBlockBase.class, cluster_depth_tungsten.getUnlocalizedName()); @@ -2668,6 +2673,7 @@ public class ModBlocks { //Wall-mounted Explosives GameRegistry.registerBlock(charge_dynamite, ItemBlockBase.class, charge_dynamite.getUnlocalizedName()); + GameRegistry.registerBlock(charge_miner, ItemBlockBase.class, charge_miner.getUnlocalizedName()); //Mines GameRegistry.registerBlock(mine_ap, mine_ap.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/blocks/bomb/BlockChargeMiner.java b/src/main/java/com/hbm/blocks/bomb/BlockChargeMiner.java new file mode 100644 index 000000000..1470e078c --- /dev/null +++ b/src/main/java/com/hbm/blocks/bomb/BlockChargeMiner.java @@ -0,0 +1,45 @@ +package com.hbm.blocks.bomb; + +import java.util.List; + +import com.hbm.explosion.ExplosionLarge; +import com.hbm.explosion.ExplosionNT; +import com.hbm.explosion.ExplosionNT.ExAttrib; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; + +public class BlockChargeMiner extends BlockChargeBase { + + @Override + public BombReturnCode explode(World world, int x, int y, int z) { + + if(!world.isRemote) { + safe = true; + world.setBlockToAir(x, y, z); + safe = false; + ExplosionNT exp = new ExplosionNT(world, null, x + 0.5, y + 0.5, z + 0.5, 4F); + exp.addAllAttrib(ExAttrib.NOHURT, ExAttrib.ALLDROP); + exp.explode(); + ExplosionLarge.spawnParticles(world, x + 0.5, y + 0.5, z + 0.5, 20); + + return BombReturnCode.DETONATED; + } + + return BombReturnCode.UNDEFINED; + } + + @Override + public int getRenderType() { + return BlockChargeDynamite.renderID; + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + super.addInformation(stack, player, list, ext); + list.add(EnumChatFormatting.BLUE + "Will drop all blocks."); + list.add(EnumChatFormatting.BLUE + "Does not do damage."); + } +} diff --git a/src/main/java/com/hbm/blocks/generic/BlockDepthOre.java b/src/main/java/com/hbm/blocks/generic/BlockDepthOre.java index ed1b13b55..df966575a 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockDepthOre.java +++ b/src/main/java/com/hbm/blocks/generic/BlockDepthOre.java @@ -30,6 +30,9 @@ public class BlockDepthOre extends BlockDepth { if(this == ModBlocks.ore_depth_nether_neodymium) { return ModItems.fragment_neodymium; } + if(this == ModBlocks.ore_depth_borax) { + return ModItems.powder_borax; + } return super.getItemDropped(metadata, rand, fortune); } diff --git a/src/main/java/com/hbm/crafting/MineralRecipes.java b/src/main/java/com/hbm/crafting/MineralRecipes.java index d50969699..9d1e6ff7b 100644 --- a/src/main/java/com/hbm/crafting/MineralRecipes.java +++ b/src/main/java/com/hbm/crafting/MineralRecipes.java @@ -97,14 +97,14 @@ public class MineralRecipes { addBillet(ModItems.billet_pu240, ModItems.ingot_pu240, ModItems.nugget_pu240, "nuggetPlutonium240", "tinyPu240"); addBillet(ModItems.billet_pu241, ModItems.ingot_pu241, ModItems.nugget_pu241, "nuggetPlutonium241", "tinyPu241"); addBillet(ModItems.billet_pu_mix, ModItems.ingot_pu_mix, ModItems.nugget_pu_mix); - addBillet(ModItems.billet_am241, ModItems.ingot_am241, ModItems.nugget_am241, "nuggetAmericium241", "tinyAm241"); - addBillet(ModItems.billet_am242, ModItems.ingot_am242, ModItems.nugget_am242, "nuggetAmericium242", "tinyAm242"); + addBillet(ModItems.billet_am241, ModItems.ingot_am241, ModItems.nugget_am241, AM241.allNuggets()); + addBillet(ModItems.billet_am242, ModItems.ingot_am242, ModItems.nugget_am242, AM242.allNuggets()); addBillet(ModItems.billet_am_mix, ModItems.ingot_am_mix, ModItems.nugget_am_mix); - addBillet(ModItems.billet_neptunium, ModItems.ingot_neptunium, ModItems.nugget_neptunium, "nuggetNeptunium237", "tinyNp237"); - addBillet(ModItems.billet_polonium, ModItems.ingot_polonium, ModItems.nugget_polonium, "nuggetPolonium"); - addBillet(ModItems.billet_technetium, ModItems.ingot_technetium, ModItems.nugget_technetium, "nuggetTechnetium"); - addBillet(ModItems.billet_au198, ModItems.ingot_au198, ModItems.nugget_au198, "nuggetGold198"); - addBillet(ModItems.billet_pb209, ModItems.ingot_pb209, ModItems.nugget_pb209, "nuggetLead200"); + addBillet(ModItems.billet_neptunium, ModItems.ingot_neptunium, ModItems.nugget_neptunium, NP237.allNuggets()); + addBillet(ModItems.billet_polonium, ModItems.ingot_polonium, ModItems.nugget_polonium, PO210.allNuggets()); + addBillet(ModItems.billet_technetium, ModItems.ingot_technetium, ModItems.nugget_technetium, TC99.allNuggets()); + addBillet(ModItems.billet_au198, ModItems.ingot_au198, ModItems.nugget_au198, AU198.allNuggets()); + addBillet(ModItems.billet_pb209, ModItems.ingot_pb209, ModItems.nugget_pb209, PB209.allNuggets()); //and so forth addBillet(ModItems.billet_ra226, ModItems.ingot_ra226, ModItems.nugget_ra226, "nuggetRa226"); addBillet(ModItems.billet_schrabidium, ModItems.ingot_schrabidium, ModItems.nugget_schrabidium, "nuggetSchrabidium"); addBillet(ModItems.billet_solinium, ModItems.ingot_solinium, ModItems.nugget_solinium, "nuggetSolinium"); diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index c9ac16a93..1d0c9c461 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -13,16 +13,13 @@ import com.hbm.hazard.HazardData; import com.hbm.hazard.HazardEntry; import com.hbm.hazard.HazardRegistry; import com.hbm.hazard.HazardSystem; -import com.hbm.interfaces.Untested; import com.hbm.items.ModItems; -import cpw.mods.fml.common.registry.GameRegistry; import net.minecraft.block.Block; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; -import net.minecraftforge.oredict.ShapelessOreRecipe; //the more i optimize this, the more it starts looking like gregtech public class OreDictManager { @@ -114,7 +111,7 @@ public class OreDictManager { public static final DictFrame RA226 = new DictFrame("Radium226", "Ra226"); public static final DictFrame CO60 = new DictFrame("Cobalt60", "Co60"); public static final DictFrame AU198 = new DictFrame("Gold198", "Au198"); - public static final DictFrame PB209 = new DictFrame("Lead200", "Pb200"); + public static final DictFrame PB209 = new DictFrame("Lead209", "Pb209"); public static final DictFrame SA326 = new DictFrame("Schrabidium"); public static final DictFrame SA327 = new DictFrame("Solinium"); public static final DictFrame SBD = new DictFrame("Schrabidate"); @@ -430,6 +427,7 @@ public class OreDictManager { public String ore() { return ORE + mats[0]; } public String[] nuggets() { return appendToAll(NUGGET); } public String[] tinys() { return appendToAll(TINY); } + public String[] allNuggets() { return appendToAll(NUGGET, TINY); } public String[] ingots() { return appendToAll(INGOT); } public String[] dustTinys() { return appendToAll(DUSTTINY); } public String[] dusts() { return appendToAll(DUST); } @@ -440,10 +438,14 @@ public class OreDictManager { public String[] blocks() { return appendToAll(BLOCK); } public String[] ores() { return appendToAll(ORE); } - private String[] appendToAll(String prefix) { - String[] names = new String[mats.length]; + private String[] appendToAll(String... prefix) { + + String[] names = new String[mats.length * prefix.length]; + for(int i = 0; i < mats.length; i++) { - names[i] = prefix + mats[i]; + for(int j = 0; j < prefix.length; j++) { + names[i * prefix.length + j] = prefix[j] + mats[i]; + } } return names; } diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index 3ebdb4733..f5892d50f 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -199,7 +199,7 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModItems.sat_head_resonator, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 32), new OreDictStack(POLYMER.ingot(), 48), new ComparableStack(ModItems.plate_polymer, 8), new ComparableStack(ModItems.crystal_xen, 1), new OreDictStack(STAR.ingot(), 7), new ComparableStack(ModItems.circuit_targeting_tier5, 6), new ComparableStack(ModItems.circuit_targeting_tier6, 2), },1000); makeRecipe(new ComparableStack(ModItems.sat_foeq, 1), new AStack[] {new OreDictStack(STEEL.plate(), 8), new OreDictStack(TI.plate(), 12), new ComparableStack(ModItems.plate_desh, 8), new ComparableStack(ModItems.hull_big_titanium, 3), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.HYDROGEN.ordinal()), new ComparableStack(ModItems.photo_panel, 16), new ComparableStack(ModItems.thruster_nuclear, 1), new ComparableStack(ModItems.ingot_uranium_fuel, 6), new ComparableStack(ModItems.circuit_targeting_tier5, 6), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },1200); makeRecipe(new ComparableStack(ModItems.sat_miner, 1), new AStack[] {new OreDictStack(BIGMT.plate(), 24), new ComparableStack(ModItems.plate_desh, 8), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.centrifuge_element, 4), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.plate_polymer, 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); - makeRecipe(new ComparableStack(ModItems.sat_lunar_miner, 1), new AStack[] {new ComparableStack(ModItems.ingot_meteorite, 24), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.plate_polymer, 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); + makeRecipe(new ComparableStack(ModItems.sat_lunar_miner, 1), new AStack[] {new ComparableStack(ModItems.ingot_meteorite, 4), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.motor_desh, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.plate_polymer, 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); makeRecipe(new ComparableStack(ModItems.chopper_head, 1), new AStack[] {new ComparableStack(ModBlocks.reinforced_glass, 2), new ComparableStack(ModBlocks.fwatz_computer, 1), new OreDictStack(CMB.ingot(), 22), new ComparableStack(ModItems.wire_magnetized_tungsten, 4), },300); makeRecipe(new ComparableStack(ModItems.chopper_gun, 1), new AStack[] {new OreDictStack(CMB.plate(), 4), new OreDictStack(CMB.ingot(), 2), new ComparableStack(ModItems.wire_tungsten, 6), new ComparableStack(ModItems.coil_magnetized_tungsten, 1), new ComparableStack(ModItems.motor, 1), },150); makeRecipe(new ComparableStack(ModItems.chopper_torso, 1), new AStack[] {new OreDictStack(CMB.ingot(), 26), new ComparableStack(ModBlocks.fwatz_computer, 1), new ComparableStack(ModItems.wire_magnetized_tungsten, 4), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.chopper_blades, 2), },350); diff --git a/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java b/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java index 037d354f9..33784fad8 100644 --- a/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java @@ -1163,8 +1163,8 @@ public class MachineRecipes { Map recipes = new HashMap(); - for(int i = 0; i < FluidTypeTheOldOne.values().length; i++) { - Object[] outs = getBoilerOutput(FluidTypeTheOldOne.getEnum(i)); + for(int i = 0; i < FluidType.values().length; i++) { + Object[] outs = getBoilerOutput(FluidType.getEnum(i)); if(outs != null) { @@ -1172,7 +1172,7 @@ public class MachineRecipes { in.stackTagCompound = new NBTTagCompound(); in.stackTagCompound.setInteger("fill", (Integer) outs[2]); - ItemStack out = new ItemStack(ModItems.fluid_icon, 1, ((FluidTypeTheOldOne)outs[0]).getID()); + ItemStack out = new ItemStack(ModItems.fluid_icon, 1, ((FluidType)outs[0]).getID()); out.stackTagCompound = new NBTTagCompound(); out.stackTagCompound.setInteger("fill", (Integer) outs[1]); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index bbda3f971..3b8a71e99 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -453,6 +453,7 @@ public class ModItems { public static Item powder_paleogenite; public static Item powder_paleogenite_tiny; public static Item powder_impure_osmiridium; + public static Item powder_borax; public static Item powder_lanthanium; public static Item powder_actinium; @@ -2876,6 +2877,7 @@ public class ModItems { powder_paleogenite = new Item().setUnlocalizedName("powder_paleogenite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_paleogenite"); powder_paleogenite_tiny = new Item().setUnlocalizedName("powder_paleogenite_tiny").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_paleogenite_tiny"); powder_impure_osmiridium = new Item().setUnlocalizedName("powder_impure_osmiridium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_impure_osmiridium"); + powder_borax = new Item().setUnlocalizedName("powder_borax").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_borax"); fragment_neodymium = new Item().setUnlocalizedName("fragment_neodymium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fragment_neodymium"); fragment_cobalt = new Item().setUnlocalizedName("fragment_cobalt").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fragment_cobalt"); @@ -5655,11 +5657,12 @@ public class ModItems { GameRegistry.registerItem(powder_lead, powder_lead.getUnlocalizedName()); GameRegistry.registerItem(powder_coltan_ore, powder_coltan_ore.getUnlocalizedName()); GameRegistry.registerItem(powder_coltan, powder_coltan.getUnlocalizedName()); + GameRegistry.registerItem(powder_tantalium, powder_tantalium.getUnlocalizedName()); GameRegistry.registerItem(powder_tektite, powder_tektite.getUnlocalizedName()); GameRegistry.registerItem(powder_paleogenite, powder_paleogenite.getUnlocalizedName()); GameRegistry.registerItem(powder_paleogenite_tiny, powder_paleogenite_tiny.getUnlocalizedName()); GameRegistry.registerItem(powder_impure_osmiridium, powder_impure_osmiridium.getUnlocalizedName()); - GameRegistry.registerItem(powder_tantalium, powder_tantalium.getUnlocalizedName()); + GameRegistry.registerItem(powder_borax, powder_borax.getUnlocalizedName()); GameRegistry.registerItem(powder_yellowcake, powder_yellowcake.getUnlocalizedName()); GameRegistry.registerItem(powder_beryllium, powder_beryllium.getUnlocalizedName()); GameRegistry.registerItem(powder_dura_steel, powder_dura_steel.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/lib/HbmWorldGen.java b/src/main/java/com/hbm/lib/HbmWorldGen.java index 89c4d468e..88ddb03cf 100644 --- a/src/main/java/com/hbm/lib/HbmWorldGen.java +++ b/src/main/java/com/hbm/lib/HbmWorldGen.java @@ -80,6 +80,7 @@ public class HbmWorldGen implements IWorldGenerator { DepthDeposit.generateConditionOverworld(world, i, 0, 3, j, 5, 0.6D, ModBlocks.cluster_depth_tungsten, rand, 32); DepthDeposit.generateConditionOverworld(world, i, 0, 3, j, 5, 0.8D, ModBlocks.ore_depth_cinnebar, rand, 16); DepthDeposit.generateConditionOverworld(world, i, 0, 3, j, 5, 0.8D, ModBlocks.ore_depth_zirconium, rand, 16); + DepthDeposit.generateConditionOverworld(world, i, 0, 3, j, 5, 0.8D, ModBlocks.ore_depth_borax, rand, 16); if(WorldConfig.overworldOre) { DungeonToolbox.generateOre(world, rand, i, j, 25, 6, 30, 10, ModBlocks.ore_gneiss_iron, ModBlocks.stone_gneiss); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java b/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java index fa5dd0725..c49a3928d 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java @@ -5,11 +5,11 @@ import java.util.List; import java.util.Random; import com.hbm.blocks.BlockDummyable; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.MachineRecipes; import com.hbm.lib.Library; import com.hbm.packet.NBTPacket; @@ -40,8 +40,8 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl public TileEntityChungus() { tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.STEAM, 1000000000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.SPENTSTEAM, 1000000000, 1); + tanks[0] = new FluidTank(Fluids.STEAM, 1000000000, 0); + tanks[1] = new FluidTank(Fluids.SPENTSTEAM, 1000000000, 1); } @Override @@ -51,7 +51,7 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl Object[] outs = MachineRecipes.getTurbineOutput(tanks[0].getTankType()); - tanks[1].setTankType((FluidTypeTheOldOne) outs[0]); + tanks[1].setTankType((FluidType) outs[0]); int processMax = (int) Math.ceil(tanks[0].getFill() / (Integer)outs[2]); //the maximum amount of cycles total int processSteam = tanks[0].getFill() / (Integer)outs[2]; //the maximum amount of cycles depending on steam @@ -79,7 +79,7 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl NBTTagCompound data = new NBTTagCompound(); data.setLong("power", power); - data.setInteger("type", tanks[0].getTankType().ordinal()); + data.setInteger("type", tanks[0].getTankType().getID()); data.setInteger("operational", turnTimer); this.networkPack(data, 150); @@ -119,7 +119,7 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl public void networkUnpack(NBTTagCompound data) { this.power = data.getLong("power"); this.turnTimer = data.getInteger("operational"); - this.tanks[0].setTankType(FluidTypeTheOldOne.values()[data.getInteger("type")]); + this.tanks[0].setTankType(Fluids.fromID(data.getInteger("type"))); } @Override diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityPylonBase.java b/src/main/java/com/hbm/tileentity/network/TileEntityPylonBase.java index 93a185e27..bee551249 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityPylonBase.java +++ b/src/main/java/com/hbm/tileentity/network/TileEntityPylonBase.java @@ -24,6 +24,9 @@ public abstract class TileEntityPylonBase extends TileEntityCableBaseNT { if(first.getConnectionType() != second.getConnectionType()) return false; + if(first == second) + return false; + double len = Math.min(first.getMaxWireLength(), second.getMaxWireLength()); Vec3 firstPos = first.getConnectionPoint(); @@ -61,6 +64,9 @@ public abstract class TileEntityPylonBase extends TileEntityCableBaseNT { TileEntity te = worldObj.getTileEntity(pos[0], pos[1], pos[2]); + if(te == this) + continue; + if(te instanceof TileEntityPylonBase) { TileEntityPylonBase pylon = (TileEntityPylonBase) te; diff --git a/src/main/resources/assets/hbm/textures/blocks/charge_miner.png b/src/main/resources/assets/hbm/textures/blocks/charge_miner.png new file mode 100644 index 000000000..c3036bc0b Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/charge_miner.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_depth_borax.png b/src/main/resources/assets/hbm/textures/blocks/ore_depth_borax.png new file mode 100644 index 000000000..3e76a73c1 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/ore_depth_borax.png differ diff --git a/src/main/resources/assets/hbm/textures/items/powder_borax.png b/src/main/resources/assets/hbm/textures/items/powder_borax.png new file mode 100644 index 000000000..e9a6e04f7 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/powder_borax.png differ