diff --git a/build.gradle b/build.gradle index 0b971f3f20..fbe3982cc1 100644 --- a/build.gradle +++ b/build.gradle @@ -11,7 +11,7 @@ apply plugin: 'net.minecraftforge.gradle.forge' //Only edit below this line, the above code adds and enables the necessary things for Forge to be setup. -version = "1.6.3a" +version = "1.6.4a" group = "com.hbm" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "hbm" diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index d7fdd32a65..408c80884d 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -784,9 +784,9 @@ public SoundEvent getBreakSound() { public static final Block red_pylon = new PylonRedWire(Material.IRON, "red_pylon").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); public static final Block machine_battery_potato = new MachineBattery(Material.IRON, 10000, "machine_battery_potato").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); public static final Block machine_battery = new MachineBattery(Material.IRON, 1000000, "machine_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - public static final Block machine_lithium_battery = new MachineBattery(Material.IRON, 15000000, "machine_lithium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - public static final Block machine_schrabidium_battery = new MachineBattery(Material.IRON, 500000000, "machine_schrabidium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - public static final Block machine_dineutronium_battery = new MachineBattery(Material.IRON, 150000000000L, "machine_dineutronium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + public static final Block machine_lithium_battery = new MachineBattery(Material.IRON, 50000000, "machine_lithium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + public static final Block machine_schrabidium_battery = new MachineBattery(Material.IRON, 25000000000L, "machine_schrabidium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + public static final Block machine_dineutronium_battery = new MachineBattery(Material.IRON, 1000000000000L, "machine_dineutronium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); public static final Block machine_fensu = new MachineFENSU(Material.IRON, "machine_fensu").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); public static final int guiID_machine_battery = 21; diff --git a/src/main/java/com/hbm/blocks/generic/WasteEarth.java b/src/main/java/com/hbm/blocks/generic/WasteEarth.java index 43522805c1..c5864ca31b 100644 --- a/src/main/java/com/hbm/blocks/generic/WasteEarth.java +++ b/src/main/java/com/hbm/blocks/generic/WasteEarth.java @@ -92,83 +92,34 @@ public void randomDisplayTick(IBlockState stateIn, World worldIn, BlockPos pos, @Override public void updateTick(World world, BlockPos pos1, IBlockState state, Random rand) { - if(this.radIn > 0){ - RadiationSavedData.incrementRad(world, pos1, this.radIn, this.radMax); - world.scheduleUpdate(pos1, state.getBlock(), this.tickRate(world)); + int x = pos1.getX(); + int y = pos1.getY(); + int z = pos1.getZ(); + if(this == ModBlocks.waste_mycelium && GeneralConfig.enableMycelium) { + for(int i = -1; i < 2; i++) { + for(int j = -1; j < 2; j++) { + for(int k = -1; k < 2; k++) { + Block b0 = world.getBlockState(new BlockPos(x + i, y + j, z + k)).getBlock(); + IBlockState b1 = world.getBlockState(new BlockPos(x + i, y + j + 1, z + k)); + if(!b1.isOpaqueCube() && (b0 == Blocks.DIRT || b0 == Blocks.GRASS || b0 == Blocks.MYCELIUM || b0 == ModBlocks.waste_earth)) { + world.setBlockState(new BlockPos(x + i, y + j, z + k), ModBlocks.waste_mycelium.getDefaultState()); + } + } + } + } + } + + if(this == ModBlocks.waste_earth || this == ModBlocks.waste_mycelium) { + + if(GeneralConfig.enableAutoCleanup || (world.getLightBrightness(new BlockPos(x, y + 1, z)) < 4 && world.getBlockLightOpacity(new BlockPos(x, y + 1, z)) > 2)) { + world.setBlockState(new BlockPos(x, y, z), Blocks.DIRT.getDefaultState()); + + } + + if(world.getBlockState(new BlockPos(x, y + 1, z)).getBlock() instanceof BlockMushroom) { + world.setBlockState(new BlockPos(x, y + 1, z), ModBlocks.mush.getDefaultState()); + } } - MutableBlockPos pos = new BlockPos.MutableBlockPos().setPos(pos1.getX(), pos1.getY(), pos1.getZ()); - if((this == ModBlocks.waste_earth || this == ModBlocks.waste_mycelium) && world.getBlockState(pos.add(0, 1, 0)).getBlock() == Blocks.AIR && rand.nextInt(1000) == 0) - { - Block b0; - int count = 0; - for(int i = -5; i < 5; i++) { - for(int j = -5; j < 6; j++) { - for(int k = -5; k < 5; k++) { - if(world.isBlockLoaded((pos.add(i, j, k)))){ - b0 = world.getBlockState(pos.add(i, j, k)).getBlock(); - if((b0 instanceof BlockMushroom) || b0 == ModBlocks.mush) - { - count++; - } - } - - } - } - } - if(count > 0 && count < 5) - world.setBlockState(pos.add(0, 1, 0), ModBlocks.mush.getDefaultState()); - } - - if(this == ModBlocks.waste_mycelium && GeneralConfig.enableMycelium) - { - for(int i = -1; i < 2; i++) { - for(int j = -1; j < 2; j++) { - for(int k = -1; k < 2; k++) { - IBlockState bs = world.getBlockState(pos.add(0, 1, 0)); - Block b0 = world.getBlockState(pos.add(i, j, k)).getBlock(); - Block b1 = world.getBlockState(pos.add(0, 1, 0)).getBlock(); - if(!bs.isOpaqueCube() && (b0 == Blocks.DIRT || b0 == Blocks.GRASS || b0 == Blocks.MYCELIUM || b0 == ModBlocks.waste_earth)) - { - world.setBlockState(pos.add(i, j, k), ModBlocks.waste_mycelium.getDefaultState()); - } - } - } - } - - if(rand.nextInt(10) == 0) { - Block b0; - int count = 0; - for(int i = -5; i < 5; i++) { - for(int j = -5; j < 6; j++) { - for(int k = -5; k < 5; k++) { - b0 = world.getBlockState(pos.add(i, j, k)).getBlock(); - if(b0 == ModBlocks.mush) - { - count++; - } - } - } - } - if(count < 5) - world.setBlockState(pos.add(0, 1, 0), ModBlocks.mush.getDefaultState()); - } - } - - if(this == ModBlocks.waste_earth || this == ModBlocks.waste_mycelium) - { - if (!world.isRemote) - { - if (world.getLight(pos.add(0, 1, 0)) < 4 && world.getLight(pos.add(0, 1, 0)) > 2) - { - - world.setBlockState(pos, Blocks.DIRT.getDefaultState()); - } - } - } - - if(GeneralConfig.enableAutoCleanup && (this == ModBlocks.waste_earth | this == ModBlocks.waste_mycelium)) - if(!world.isRemote) - world.setBlockState(pos, Blocks.DIRT.getDefaultState()); } @Override diff --git a/src/main/java/com/hbm/crafting/handlers/MKUCraftingHandler.java b/src/main/java/com/hbm/crafting/handlers/MKUCraftingHandler.java index 7e7640f938..d57d81b8ed 100644 --- a/src/main/java/com/hbm/crafting/handlers/MKUCraftingHandler.java +++ b/src/main/java/com/hbm/crafting/handlers/MKUCraftingHandler.java @@ -22,7 +22,7 @@ public class MKUCraftingHandler extends net.minecraftforge.registries.IForgeRegi @Override public boolean matches(InventoryCrafting inventory, World world) { - if(world == null || world.provider == null || world.getWorldInfo() == null) + if(world == null || world.provider == null || world.getWorldInfo() == null || HbmWorldUtility.getProviderWorld(world.provider) == null) return false; if(MKURecipe == null || world.getSeed() != lastSeed) diff --git a/src/main/java/com/hbm/inventory/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/AssemblerRecipes.java index e456f53e34..fa9310b553 100644 --- a/src/main/java/com/hbm/inventory/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/AssemblerRecipes.java @@ -149,7 +149,7 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModItems.plate_schrabidium, 2), new AStack[] { new ComparableStack(ModItems.ingot_schrabidium, 3), }, 30); makeRecipe(new ComparableStack(ModItems.plate_combine_steel, 2), new AStack[] { new ComparableStack(ModItems.ingot_combine_steel, 3), }, 30); makeRecipe(new ComparableStack(ModItems.plate_saturnite, 2), new AStack[] { new ComparableStack(ModItems.ingot_saturnite, 3), }, 30); - makeRecipe(new ComparableStack(ModItems.plate_mixed, 6), new AStack[] { new ComparableStack(ModItems.plate_advanced_alloy, 2), new OreDictStack("plateDenseLead", 2), new ComparableStack(ModItems.plate_combine_steel, 1), new OreDictStack("plateLead", 4), }, 100); + makeRecipe(new ComparableStack(ModItems.plate_mixed, 6), new AStack[] { new ComparableStack(ModItems.plate_advanced_alloy, 2), new OreDictStack(OreDictManager.getReflector(), 2), new ComparableStack(ModItems.plate_combine_steel, 1), new OreDictStack("plateLead", 4), }, 100); makeRecipe(new ComparableStack(ModItems.wire_aluminium, 6), new AStack[] { new OreDictStack("ingotAluminum", 1), }, 20); makeRecipe(new ComparableStack(ModItems.wire_copper, 6), new AStack[] { new OreDictStack("ingotCopper", 1), }, 20); makeRecipe(new ComparableStack(ModItems.wire_tungsten, 6), new AStack[] { new OreDictStack("ingotTungsten", 1), }, 20); @@ -166,13 +166,13 @@ private static void registerDefaults() { //makeRecipe(new ComparableStack(ModItems.magnet_dee, 1), new AStack[] { new ComparableStack(ModBlocks.fusion_conductor, 6), new OreDictStack("ingotSteel", 3), new ComparableStack(ModItems.coil_advanced_torus, 1), }, 150); makeRecipe(new ComparableStack(ModItems.magnet_circular, 1), new AStack[] { new ComparableStack(ModBlocks.fusion_conductor, 5), new OreDictStack("ingotSteel", 4), new ComparableStack(ModItems.plate_advanced_alloy, 6), }, 300); //makeRecipe(new ComparableStack(ModItems.cyclotron_tower, 1), new AStack[] { new ComparableStack(ModItems.magnet_circular, 6), new ComparableStack(ModItems.magnet_dee, 3), new OreDictStack("plateSteel", 12), new ComparableStack(ModItems.wire_advanced_alloy, 8), new ComparableStack(ModItems.plate_polymer, 24), }, 100); - makeRecipe(new ComparableStack(ModItems.reactor_core, 1), new AStack[] { new OreDictStack("ingotLead", 8), new OreDictStack("ingotBeryllium", 6), new OreDictStack("plateSteel", 16), new OreDictStack("plateDenseLead", 8), new ComparableStack(ModItems.ingot_fiberglass, 2) }, 100); + makeRecipe(new ComparableStack(ModItems.reactor_core, 1), new AStack[] { new OreDictStack("ingotLead", 8), new OreDictStack("ingotBeryllium", 6), new OreDictStack("plateSteel", 16), new OreDictStack(OreDictManager.getReflector(), 8), new ComparableStack(ModItems.ingot_fiberglass, 2) }, 100); makeRecipe(new ComparableStack(ModItems.rtg_unit, 1), new AStack[] { new ComparableStack(ModItems.thermo_element, 3), new ComparableStack(ModItems.board_copper, 1), new OreDictStack("ingotLead", 2), new OreDictStack("plateSteel", 2), new ComparableStack(ModItems.circuit_copper, 1), }, 100); makeRecipe(new ComparableStack(ModItems.thermo_unit_empty, 1), new AStack[] { new ComparableStack(ModItems.coil_copper_torus, 3), new OreDictStack("ingotSteel", 3), new OreDictStack("plateTitanium", 6), new ComparableStack(ModItems.plate_polymer, 12), }, 100); makeRecipe(new ComparableStack(ModItems.levitation_unit, 1), new AStack[] { new ComparableStack(ModItems.coil_copper, 4), new ComparableStack(ModItems.coil_tungsten, 2), new OreDictStack("plateTitanium", 6), new ComparableStack(ModItems.nugget_schrabidium, 2), }, 100); makeRecipe(new ComparableStack(ModItems.drill_titanium, 1), new AStack[] { new OreDictStack("ingotSteel", 2), new ComparableStack(ModItems.ingot_dura_steel, 2), new ComparableStack(ModItems.bolt_dura_steel, 2), new OreDictStack("plateTitanium", 6), }, 100); makeRecipe(new ComparableStack(ModItems.telepad, 1), new AStack[] { new ComparableStack(ModItems.ingot_polymer, 12), new ComparableStack(ModItems.plate_schrabidium, 2), new ComparableStack(ModItems.plate_combine_steel, 4), new OreDictStack("plateSteel", 2), new ComparableStack(ModItems.wire_gold, 6), new ComparableStack(ModItems.circuit_schrabidium, 1), }, 300); - makeRecipe(new ComparableStack(ModItems.entanglement_kit, 1), new AStack[] { new ComparableStack(ModItems.coil_magnetized_tungsten, 6), new OreDictStack("plateLead", 16), new OreDictStack("plateDenseLead", 4), new ComparableStack(ModItems.singularity_counter_resonant, 1), new ComparableStack(ModItems.singularity_super_heated, 1), new ComparableStack(ModItems.powder_power, 4), }, 200); + makeRecipe(new ComparableStack(ModItems.entanglement_kit, 1), new AStack[] { new ComparableStack(ModItems.coil_magnetized_tungsten, 6), new OreDictStack("plateLead", 16), new OreDictStack(OreDictManager.getReflector(), 4), new ComparableStack(ModItems.singularity_counter_resonant, 1), new ComparableStack(ModItems.singularity_super_heated, 1), new ComparableStack(ModItems.powder_power, 4), }, 200); makeRecipe(new ComparableStack(ModItems.dysfunctional_reactor, 1), new AStack[] { new OreDictStack("plateSteel", 15), new OreDictStack("ingotLead", 5), new ComparableStack(ModItems.rod_quad_empty, 10), new OreDictStack("dyeBrown", 3), }, 200); //makeRecipe(new ComparableStack(ModItems.generator_front, 1), new AStack[] {new OreDictStack("ingotSteel", 3), new OreDictStack("plateSteel", 6), new ComparableStack(ModItems.tank_steel, 4), new ComparableStack(ModItems.turbine_titanium, 1), new ComparableStack(ModItems.wire_red_copper, 6), new ComparableStack(ModItems.wire_gold, 4), },200); makeRecipe(new ComparableStack(ModItems.missile_assembly, 1), new AStack[] { new ComparableStack(ModItems.hull_small_steel, 1), new ComparableStack(ModItems.hull_small_aluminium, 4), new OreDictStack("ingotSteel", 2), new OreDictStack("plateTitanium", 6), new ComparableStack(ModItems.wire_aluminium, 6), new NbtComparableStack(ItemFluidCanister.getFullCanister(ModForgeFluids.kerosene, 3)), new ComparableStack(ModItems.circuit_targeting_tier1, 1), }, 200); @@ -191,7 +191,7 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModItems.warhead_buster_large, 1), new AStack[] { new ComparableStack(ModItems.warhead_generic_large, 1), new ComparableStack(ModBlocks.det_charge, 8), }, 200); makeRecipe(new ComparableStack(ModItems.warhead_nuclear, 1), new AStack[] { new ComparableStack(ModItems.boy_shielding, 1), new ComparableStack(ModItems.boy_target, 1), new ComparableStack(ModItems.boy_bullet, 1), new OreDictStack("plateTitanium", 20), new OreDictStack("plateSteel", 12), }, 300); makeRecipe(new ComparableStack(ModItems.warhead_mirvlet, 1), new AStack[] { new OreDictStack("ingotSteel", 5), new OreDictStack("plateSteel", 18), new ComparableStack(ModItems.ingot_pu239, 1), new ComparableStack(Blocks.TNT, 2), }, 250); - makeRecipe(new ComparableStack(ModItems.warhead_mirv, 1), new AStack[] { new OreDictStack("plateTitanium", 20), new OreDictStack("plateSteel", 12), new ComparableStack(ModItems.ingot_pu239, 1), new ComparableStack(Blocks.TNT, 8), new OreDictStack("plateDenseLead", 6), new ComparableStack(ModItems.lithium, 4), new NbtComparableStack(ItemCell.getFullCell(ModForgeFluids.deuterium, 6)), }, 500); + makeRecipe(new ComparableStack(ModItems.warhead_mirv, 1), new AStack[] { new OreDictStack("plateTitanium", 20), new OreDictStack("plateSteel", 12), new ComparableStack(ModItems.ingot_pu239, 1), new ComparableStack(Blocks.TNT, 8), new OreDictStack(OreDictManager.getReflector(), 6), new ComparableStack(ModItems.lithium, 4), new NbtComparableStack(ItemCell.getFullCell(ModForgeFluids.deuterium, 6)), }, 500); makeRecipe(new ComparableStack(ModItems.warhead_thermo_endo, 1), new AStack[] { new ComparableStack(ModBlocks.therm_endo, 2), new OreDictStack("plateTitanium", 12), new OreDictStack("plateSteel", 6), }, 300); makeRecipe(new ComparableStack(ModItems.warhead_thermo_exo, 1), new AStack[] { new ComparableStack(ModBlocks.therm_exo, 2), new OreDictStack("plateTitanium", 12), new OreDictStack("plateSteel", 6), }, 300); makeRecipe(new ComparableStack(ModItems.fuel_tank_small, 1), new AStack[] { new NbtComparableStack(ItemFluidCanister.getFullCanister(ModForgeFluids.kerosene, 4)), new OreDictStack("plateTitanium", 6), new OreDictStack("plateSteel", 2), }, 100); @@ -277,7 +277,7 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModBlocks.machine_centrifuge, 1), new AStack[] { new ComparableStack(ModItems.centrifuge_tower, 1), new OreDictStack("ingotSteel", 4), new OreDictStack("ingotIron", 4), new OreDictStack("plateSteel", 2), new OreDictStack("plateCopper", 2), new ComparableStack(ModItems.wire_red_copper, 8), }, 250); makeRecipe(new ComparableStack(ModBlocks.machine_gascent, 1), new AStack[] { new ComparableStack(ModItems.centrifuge_tower, 1), new OreDictStack("ingotSteel", 4), new ComparableStack(ModItems.ingot_polymer, 4), new OreDictStack("ingotDesh", 2), new OreDictStack("plateSteel", 6), new ComparableStack(ModItems.plate_advanced_alloy, 4), new ComparableStack(ModItems.wire_red_copper, 8), new ComparableStack(ModItems.wire_gold, 4), }, 300); makeRecipe(new ComparableStack(ModBlocks.machine_reactor, 1), new AStack[] { new ComparableStack(ModItems.reactor_core, 1), new OreDictStack("ingotSteel", 12), new OreDictStack("plateLead", 16), new ComparableStack(ModBlocks.reinforced_glass, 4), new ComparableStack(ModItems.ingot_asbestos, 4) }, 150); - makeRecipe(new ComparableStack(ModBlocks.machine_rtg_furnace_off, 1), new AStack[] { new ComparableStack(Blocks.FURNACE, 1), new ComparableStack(ModItems.rtg_unit, 3), new OreDictStack("plateLead", 6), new OreDictStack("plateDenseLead", 4), new OreDictStack("plateCopper", 2), }, 150); + makeRecipe(new ComparableStack(ModBlocks.machine_rtg_furnace_off, 1), new AStack[] { new ComparableStack(Blocks.FURNACE, 1), new ComparableStack(ModItems.rtg_unit, 3), new OreDictStack("plateLead", 6), new OreDictStack(OreDictManager.getReflector(), 4), new OreDictStack("plateCopper", 2), }, 150); makeRecipe(new ComparableStack(ModBlocks.machine_radgen, 1), new AStack[] { new OreDictStack("ingotSteel", 8), new OreDictStack("plateSteel", 32), new ComparableStack(ModItems.coil_magnetized_tungsten, 6), new ComparableStack(ModItems.wire_magnetized_tungsten, 24), new ComparableStack(ModItems.circuit_gold, 4), new ComparableStack(ModItems.reactor_core, 3), new ComparableStack(ModItems.ingot_starmetal, 1), new OreDictStack("dyeRed", 1), }, 400); makeRecipe(new ComparableStack(ModBlocks.machine_diesel, 1), new AStack[] { new ComparableStack(ModItems.hull_small_steel, 4), new ComparableStack(Blocks.PISTON, 4), new OreDictStack("ingotSteel", 6), new OreDictStack("ingotMingrade", 2), new OreDictStack("plateCopper", 4), new ComparableStack(ModItems.wire_red_copper, 6), }, 200); makeRecipe(new ComparableStack(ModBlocks.machine_selenium, 1), new AStack[] { new OreDictStack("ingotSteel", 4), new OreDictStack("plateTitanium", 6), new OreDictStack("plateCopper", 8), new ComparableStack(ModItems.hull_big_steel, 1), new ComparableStack(ModItems.hull_small_steel, 9), new ComparableStack(ModItems.pedestal_steel, 1), new ComparableStack(ModItems.coil_copper, 4), }, 250); @@ -307,7 +307,7 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModBlocks.factory_advanced_furnace, 1), new AStack[] { new ComparableStack(ModItems.ingot_advanced_alloy, 4), new ComparableStack(ModItems.plate_advanced_alloy, 4), new OreDictStack("plateSteel", 8), new ComparableStack(ModItems.coil_advanced_alloy, 2), }, 100); makeRecipe(new ComparableStack(ModBlocks.factory_advanced_core, 1), new AStack[] { new ComparableStack(ModItems.ingot_advanced_alloy, 6), new ComparableStack(ModItems.plate_advanced_alloy, 6), new OreDictStack("plateSteel", 8), new ComparableStack(ModItems.coil_advanced_alloy, 2), new ComparableStack(ModItems.motor, 16), new ComparableStack(Blocks.PISTON, 6), }, 100); makeRecipe(new ComparableStack(ModBlocks.factory_advanced_conductor, 1), new AStack[] { new ComparableStack(ModItems.ingot_advanced_alloy, 8), new ComparableStack(ModItems.plate_advanced_alloy, 6), new ComparableStack(ModItems.wire_advanced_alloy, 4), new ComparableStack(ModItems.fuse, 6), }, 50); - makeRecipe(new ComparableStack(ModBlocks.reactor_element, 1), new AStack[] { new OreDictStack("ingotSteel", 2), new OreDictStack("plateDenseLead", 4), new OreDictStack("plateLead", 2), new ComparableStack(ModItems.rod_empty, 8), }, 150); + makeRecipe(new ComparableStack(ModBlocks.reactor_element, 1), new AStack[] { new OreDictStack("ingotSteel", 2), new OreDictStack(OreDictManager.getReflector(), 4), new OreDictStack("plateLead", 2), new ComparableStack(ModItems.rod_empty, 8), }, 150); makeRecipe(new ComparableStack(ModBlocks.reactor_control, 1), new AStack[] { new OreDictStack("ingotSteel", 4), new OreDictStack("ingotLead", 6), new ComparableStack(ModItems.bolt_tungsten, 6), new ComparableStack(ModItems.motor, 1), }, 100); makeRecipe(new ComparableStack(ModBlocks.reactor_hatch, 1), new AStack[] { new ComparableStack(ModBlocks.brick_concrete, 1), new OreDictStack("plateSteel", 6), }, 150); makeRecipe(new ComparableStack(ModBlocks.reactor_conductor, 1), new AStack[] { new OreDictStack("ingotSteel", 4), new OreDictStack("plateCopper", 12), new ComparableStack(ModItems.wire_tungsten, 4), }, 130); @@ -315,7 +315,7 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModBlocks.fusion_conductor, 1), new AStack[] { new OreDictStack("ingotSteel", 2), new ComparableStack(ModItems.coil_advanced_alloy, 5), }, 150); makeRecipe(new ComparableStack(ModBlocks.fusion_center, 1), new AStack[] { new OreDictStack("ingotTungsten", 4), new OreDictStack("plateSteel", 6), new ComparableStack(ModItems.wire_advanced_alloy, 24), }, 200); makeRecipe(new ComparableStack(ModBlocks.fusion_motor, 1), new AStack[] { new OreDictStack("ingotTitanium", 4), new OreDictStack("ingotSteel", 2), new ComparableStack(ModItems.motor, 4), }, 250); - makeRecipe(new ComparableStack(ModBlocks.fusion_heater, 1), new AStack[] { new OreDictStack("ingotTungsten", 4), new OreDictStack("plateSteel", 2), new OreDictStack("plateDenseLead", 2), new OreDictStack("plateCopper", 4), new ComparableStack(ModItems.magnetron, 1), new ComparableStack(ModItems.wire_advanced_alloy, 4), }, 150); + makeRecipe(new ComparableStack(ModBlocks.fusion_heater, 1), new AStack[] { new OreDictStack("ingotTungsten", 4), new OreDictStack("plateSteel", 2), new OreDictStack(OreDictManager.getReflector(), 2), new OreDictStack("plateCopper", 4), new ComparableStack(ModItems.magnetron, 1), new ComparableStack(ModItems.wire_advanced_alloy, 4), }, 150); makeRecipe(new ComparableStack(ModBlocks.watz_element, 1), new AStack[] { new OreDictStack("ingotTungsten", 4), new ComparableStack(ModItems.plate_advanced_alloy, 4), new ComparableStack(ModItems.rod_empty, 2), new ComparableStack(ModItems.wire_magnetized_tungsten, 2), new ComparableStack(ModItems.wire_advanced_alloy, 4), }, 200); makeRecipe(new ComparableStack(ModBlocks.watz_control, 1), new AStack[] { new OreDictStack("ingotTungsten", 4), new ComparableStack(ModItems.ingot_advanced_alloy, 4), new OreDictStack("ingotLead", 2), new ComparableStack(ModItems.wire_magnetized_tungsten, 4), new ComparableStack(ModItems.wire_advanced_alloy, 2), }, 250); makeRecipe(new ComparableStack(ModBlocks.watz_cooler, 1), new AStack[] { new OreDictStack("ingotTungsten", 2), new OreDictStack("ingotSteel", 2), new OreDictStack("dustSaltpeter", 4), }, 300); @@ -381,15 +381,15 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModItems.grenade_pulse, 4), new AStack[] { new OreDictStack("plateSteel", 1), new OreDictStack("plateIron", 3), new ComparableStack(ModItems.wire_red_copper, 6), new ComparableStack(Items.DIAMOND, 1), }, 300); makeRecipe(new ComparableStack(ModItems.grenade_plasma, 2), new AStack[] { new OreDictStack("plateSteel", 3), new ComparableStack(ModItems.plate_advanced_alloy, 1), new ComparableStack(ModItems.coil_advanced_torus, 1), new NbtComparableStack(ItemCell.getFullCell(ModForgeFluids.deuterium)), new NbtComparableStack(ItemCell.getFullCell(ModForgeFluids.tritium)), }, 300); makeRecipe(new ComparableStack(ModItems.grenade_tau, 2), new AStack[] { new OreDictStack("plateLead", 3), new ComparableStack(ModItems.plate_advanced_alloy, 1), new ComparableStack(ModItems.coil_advanced_torus, 1), new ComparableStack(ModItems.gun_xvl1456_ammo, 1), }, 300); - makeRecipe(new ComparableStack(ModItems.grenade_schrabidium, 1), new AStack[] { new ComparableStack(ModItems.grenade_flare, 1), new ComparableStack(ModItems.powder_schrabidium, 1), new OreDictStack("plateDenseLead", 2), }, 300); + makeRecipe(new ComparableStack(ModItems.grenade_schrabidium, 1), new AStack[] { new ComparableStack(ModItems.grenade_flare, 1), new ComparableStack(ModItems.powder_schrabidium, 1), new OreDictStack(OreDictManager.getReflector(), 2), }, 300); makeRecipe(new ComparableStack(ModItems.grenade_nuclear, 1), new AStack[] { new OreDictStack("plateIron", 1), new OreDictStack("plateSteel", 1), new ComparableStack(ModItems.nugget_pu239, 2), new ComparableStack(ModItems.wire_red_copper, 2), }, 200); - makeRecipe(new ComparableStack(ModItems.grenade_zomg, 1), new AStack[] { new ComparableStack(ModItems.plate_paa, 3), new OreDictStack("plateDenseLead", 1), new ComparableStack(ModItems.coil_magnetized_tungsten, 3), new ComparableStack(ModItems.powder_power, 3), }, 300); - makeRecipe(new ComparableStack(ModItems.grenade_black_hole, 1), new AStack[] { new ComparableStack(ModItems.ingot_polymer, 6), new OreDictStack("plateDenseLead", 3), new ComparableStack(ModItems.coil_magnetized_tungsten, 2), new ComparableStack(ModItems.black_hole, 1), }, 500); + makeRecipe(new ComparableStack(ModItems.grenade_zomg, 1), new AStack[] { new ComparableStack(ModItems.plate_paa, 3), new OreDictStack(OreDictManager.getReflector(), 1), new ComparableStack(ModItems.coil_magnetized_tungsten, 3), new ComparableStack(ModItems.powder_power, 3), }, 300); + makeRecipe(new ComparableStack(ModItems.grenade_black_hole, 1), new AStack[] { new ComparableStack(ModItems.ingot_polymer, 6), new OreDictStack(OreDictManager.getReflector(), 3), new ComparableStack(ModItems.coil_magnetized_tungsten, 2), new ComparableStack(ModItems.black_hole, 1), }, 500); makeRecipe(new ComparableStack(ModItems.multitool_dig, 1), new AStack[] { new ComparableStack(ModItems.rod_reiium, 1), new ComparableStack(ModItems.rod_weidanium, 1), new ComparableStack(ModItems.rod_australium, 1), new ComparableStack(ModItems.rod_verticium, 1), new ComparableStack(ModItems.rod_unobtainium, 1), new ComparableStack(ModItems.rod_daffergon, 1), new ComparableStack(ModItems.ingot_polymer, 4), new ComparableStack(ModItems.circuit_gold, 1), new ComparableStack(ModItems.ducttape, 1), }, 600); makeRecipe(new ComparableStack(ModItems.gadget_explosive, 1), new AStack[] { new ComparableStack(Blocks.TNT, 3), new OreDictStack("plateSteel", 2), new OreDictStack("plateAluminum", 4), new ComparableStack(ModItems.wire_gold, 3), }, 200); makeRecipe(new ComparableStack(ModItems.gadget_wireing, 1), new AStack[] { new OreDictStack("plateIron", 1), new ComparableStack(ModItems.wire_gold, 12), }, 100); makeRecipe(new ComparableStack(ModItems.gadget_core, 1), new AStack[] { new ComparableStack(ModItems.nugget_pu239, 7), new ComparableStack(ModItems.nugget_u238, 3), }, 200); - makeRecipe(new ComparableStack(ModItems.boy_shielding, 1), new AStack[] { new OreDictStack("plateDenseLead", 12), new OreDictStack("plateSteel", 4), }, 150); + makeRecipe(new ComparableStack(ModItems.boy_shielding, 1), new AStack[] { new OreDictStack(OreDictManager.getReflector(), 12), new OreDictStack("plateSteel", 4), }, 150); makeRecipe(new ComparableStack(ModItems.boy_target, 1), new AStack[] { new ComparableStack(ModItems.nugget_u235, 7), }, 200); makeRecipe(new ComparableStack(ModItems.boy_bullet, 1), new AStack[] { new ComparableStack(ModItems.nugget_u235, 3), }, 100); makeRecipe(new ComparableStack(ModItems.boy_propellant, 1), new AStack[] { new ComparableStack(Blocks.TNT, 3), new OreDictStack("plateIron", 8), new OreDictStack("plateAluminum", 4), new ComparableStack(ModItems.wire_red_copper, 4), }, 100); @@ -405,7 +405,7 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModItems.fleija_propellant, 1), new AStack[] { new ComparableStack(Blocks.TNT, 3), new ComparableStack(ModItems.plate_schrabidium, 8), }, 400); makeRecipe(new ComparableStack(ModItems.solinium_igniter, 1), new AStack[] { new OreDictStack("plateTitanium", 4), new ComparableStack(ModItems.wire_advanced_alloy, 2), new ComparableStack(ModItems.circuit_schrabidium, 1), new ComparableStack(ModItems.coil_gold, 1), }, 400); makeRecipe(new ComparableStack(ModItems.solinium_core, 1), new AStack[] { new ComparableStack(ModItems.nugget_solinium, 9), new ComparableStack(ModItems.nugget_euphemium, 1), }, 400); - makeRecipe(new ComparableStack(ModItems.solinium_propellant, 1), new AStack[] { new ComparableStack(Blocks.TNT, 3), new OreDictStack("plateDenseLead", 2), new ComparableStack(ModItems.plate_polymer, 6), new ComparableStack(ModItems.wire_tungsten, 6), new ComparableStack(ModItems.biomass_compressed, 4), }, 350); + makeRecipe(new ComparableStack(ModItems.solinium_propellant, 1), new AStack[] { new ComparableStack(Blocks.TNT, 3), new OreDictStack(OreDictManager.getReflector(), 2), new ComparableStack(ModItems.plate_polymer, 6), new ComparableStack(ModItems.wire_tungsten, 6), new ComparableStack(ModItems.biomass_compressed, 4), }, 350); makeRecipe(new ComparableStack(ModItems.schrabidium_hammer, 1), new AStack[] { new ComparableStack(ModBlocks.block_schrabidium, 15), new ComparableStack(ModItems.ingot_polymer, 128), new ComparableStack(Items.NETHER_STAR, 3), new ComparableStack(ModItems.fragment_meteorite, 512), }, 1000); makeRecipe(new ComparableStack(ModItems.component_limiter, 1), new AStack[] { new ComparableStack(ModItems.hull_big_steel, 2), new OreDictStack("plateSteel", 32), new OreDictStack("plateTitanium", 18), new ComparableStack(ModItems.plate_desh, 12), new ComparableStack(ModItems.pipes_steel, 4), new ComparableStack(ModItems.circuit_gold, 8), new ComparableStack(ModItems.circuit_schrabidium, 4), new ComparableStack(ModItems.ingot_starmetal, 14), new ComparableStack(ModItems.plate_dalekanium, 5), new ComparableStack(ModItems.powder_magic, 16), new ComparableStack(ModBlocks.fwatz_computer, 3), }, 2500); makeRecipe(new ComparableStack(ModItems.component_emitter, 1), new AStack[] { new ComparableStack(ModItems.hull_big_steel, 3), new ComparableStack(ModItems.hull_big_titanium, 2), new OreDictStack("plateSteel", 32), new OreDictStack("plateLead", 24), new ComparableStack(ModItems.plate_desh, 24), new ComparableStack(ModItems.pipes_steel, 8), new ComparableStack(ModItems.circuit_gold, 12), new ComparableStack(ModItems.circuit_schrabidium, 8), new ComparableStack(ModItems.ingot_starmetal, 26), new ComparableStack(ModItems.powder_magic, 48), new ComparableStack(ModBlocks.fwatz_computer, 2), new ComparableStack(ModItems.crystal_xen, 1), }, 2500); @@ -460,11 +460,11 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModItems.mp_warhead_15_n2, 1), new AStack[] { new ComparableStack(ModItems.seg_15, 1), new OreDictStack("plateSteel", 8), new OreDictStack("plateTitanium", 20), new ComparableStack(ModBlocks.det_charge, 24), new ComparableStack(Blocks.REDSTONE_BLOCK, 12), new ComparableStack(ModItems.powder_magnetized_tungsten, 6), new ComparableStack(ModItems.circuit_targeting_tier4, 1), }, 400); makeRecipe(new ComparableStack(ModItems.missile_soyuz0, 1), new AStack[] { new ComparableStack(ModItems.rocket_fuel, 40), new ComparableStack(ModBlocks.det_cord, 20), new ComparableStack(ModItems.thruster_medium, 12), new ComparableStack(ModItems.thruster_small, 12), new ComparableStack(ModItems.tank_steel, 10), new ComparableStack(ModItems.circuit_targeting_tier4, 4), new ComparableStack(ModItems.circuit_targeting_tier3, 8), new ComparableStack(ModItems.plate_polymer, 64), new ComparableStack(ModItems.fins_small_steel, 4), new ComparableStack(ModItems.hull_big_titanium, 40), new ComparableStack(ModItems.hull_big_steel, 24), new ComparableStack(ModItems.ingot_fiberglass, 64), }, 600); makeRecipe(new ComparableStack(ModItems.missile_soyuz_lander, 1), new AStack[] { new ComparableStack(ModItems.rocket_fuel, 10), new ComparableStack(ModItems.thruster_small, 3), new ComparableStack(ModItems.tank_steel, 2), new ComparableStack(ModItems.circuit_targeting_tier3, 4), new ComparableStack(ModItems.plate_polymer, 32), new ComparableStack(ModItems.hull_big_aluminium, 2), new ComparableStack(ModItems.sphere_steel, 1), new ComparableStack(ModItems.ingot_fiberglass, 12), }, 600); - makeRecipe(new ComparableStack(ModItems.fusion_shield_tungsten, 1), new AStack[] { new OreDictStack("blockTungsten", 32), new OreDictStack("plateDenseLead", 96) }, 600); + makeRecipe(new ComparableStack(ModItems.fusion_shield_tungsten, 1), new AStack[] { new OreDictStack("blockTungsten", 32), new OreDictStack(OreDictManager.getReflector(), 96) }, 600); makeRecipe(new ComparableStack(ModItems.fusion_shield_desh, 1), new AStack[] { new OreDictStack("blockDesh", 16), new OreDictStack("blockCobalt", 16), new ComparableStack(ModItems.plate_saturnite, 96) }, 600); - makeRecipe(new ComparableStack(ModItems.fusion_shield_chlorophyte, 1), new AStack[] { new OreDictStack("blockTungsten", 16), new ComparableStack(ModBlocks.block_dura_steel, 16), new OreDictStack("plateDenseLead", 48), new ComparableStack(ModItems.powder_chlorophyte, 48) }, 600); + makeRecipe(new ComparableStack(ModItems.fusion_shield_chlorophyte, 1), new AStack[] { new OreDictStack("blockTungsten", 16), new ComparableStack(ModBlocks.block_dura_steel, 16), new OreDictStack(OreDictManager.getReflector(), 48), new ComparableStack(ModItems.powder_chlorophyte, 48) }, 600); makeRecipe(new ComparableStack(ModBlocks.machine_fensu, 1), new AStack[] { new ComparableStack(ModItems.ingot_electronium, 32), new ComparableStack(ModBlocks.machine_dineutronium_battery, 16), new OreDictStack("blockSteel", 32), new ComparableStack(ModBlocks.block_dura_steel, 16), new ComparableStack(ModBlocks.block_starmetal, 64), new ComparableStack(ModBlocks.machine_transformer_dnt, 8), new ComparableStack(ModItems.coil_magnetized_tungsten, 24), new ComparableStack(ModItems.powder_magic, 64), new ComparableStack(ModItems.plate_dineutronium, 24), new ComparableStack(ModItems.ingot_u238m2), new ComparableStack(ModItems.ingot_fiberglass, 128) }, 1200); - makeRecipe(new ComparableStack(ModBlocks.struct_iter_core, 1), new AStack[] { new OreDictStack("ingotSteel", 6), new OreDictStack("ingotTungsten", 6), new OreDictStack("plateDenseLead", 12), new ComparableStack(ModItems.coil_advanced_alloy, 12), new ComparableStack(ModItems.ingot_polymer, 8), new ComparableStack(ModItems.circuit_red_copper, 24), new ComparableStack(ModItems.circuit_gold, 12) }, 600); + makeRecipe(new ComparableStack(ModBlocks.struct_iter_core, 1), new AStack[] { new OreDictStack("ingotSteel", 6), new OreDictStack("ingotTungsten", 6), new OreDictStack(OreDictManager.getReflector(), 12), new ComparableStack(ModItems.coil_advanced_alloy, 12), new ComparableStack(ModItems.ingot_polymer, 8), new ComparableStack(ModItems.circuit_red_copper, 24), new ComparableStack(ModItems.circuit_gold, 12) }, 600); makeRecipe(new ComparableStack(ModBlocks.machine_large_turbine, 1), new AStack[] { new ComparableStack(ModItems.hull_big_steel, 1), new OreDictStack("plateSteel", 12), new ComparableStack(ModItems.turbine_titanium, 3), new ComparableStack(ModItems.rotor_steel, 2), new ComparableStack(ModItems.generator_steel, 2), new ComparableStack(ModItems.bolt_compound, 3), new ComparableStack(ModItems.pipes_steel, 1), new ComparableStack(ModItems.circuit_aluminium, 1), }, 20); makeRecipe(new ComparableStack(ModItems.pellet_chlorophyte, 2), new AStack[] { new ComparableStack(ModItems.powder_chlorophyte, 1), new OreDictStack("nuggetLead", 12), }, 50); @@ -472,10 +472,10 @@ private static void registerDefaults() { makeRecipe(new ComparableStack(ModItems.pellet_meteorite, 2), new AStack[] { new ComparableStack(ModItems.powder_meteorite, 1), new OreDictStack("nuggetLead", 12), }, 50); makeRecipe(new ComparableStack(ModItems.pellet_canister, 2), new AStack[] { new OreDictStack("ingotIron", 3), }, 50); makeRecipe(new ComparableStack(ModItems.pellet_rtg_polonium, 1), new AStack[] { new ComparableStack(ModItems.nugget_polonium, 5), new OreDictStack("plateIron", 2), }, 50); - makeRecipe(new ComparableStack(ModItems.mp_warhead_15_balefire, 1), new AStack[] { new ComparableStack(ModItems.seg_15, 1), new OreDictStack("plateDenseLead", 16), new ComparableStack(ModItems.powder_magic, 6), new ComparableStack(ModItems.egg_balefire_shard, 4), new ComparableStack(ModItems.ingot_semtex, 8), new ComparableStack(ModItems.circuit_targeting_tier4, 1), }, 60); + makeRecipe(new ComparableStack(ModItems.mp_warhead_15_balefire, 1), new AStack[] { new ComparableStack(ModItems.seg_15, 1), new OreDictStack(OreDictManager.getReflector(), 16), new ComparableStack(ModItems.powder_magic, 6), new ComparableStack(ModItems.egg_balefire_shard, 4), new ComparableStack(ModItems.ingot_semtex, 8), new ComparableStack(ModItems.circuit_targeting_tier4, 1), }, 60); makeRecipe(new ComparableStack(ModBlocks.machine_cyclotron, 1), new AStack[] { new ComparableStack(ModBlocks.machine_lithium_battery, 3), new ComparableStack(ModBlocks.fusion_conductor, 8), new ComparableStack(ModItems.wire_advanced_alloy, 96), new OreDictStack("ingotSteel", 16), new OreDictStack("plateSteel", 32), new OreDictStack("plateAluminum", 32), new ComparableStack(ModItems.ingot_polymer, 24), new ComparableStack(ModItems.plate_polymer, 64), new ComparableStack(ModItems.board_copper, 8), new ComparableStack(ModItems.circuit_red_copper, 8), new ComparableStack(ModItems.circuit_gold, 3), }, 600); - makeRecipe(new ComparableStack(ModItems.gun_zomg, 1), new AStack[] { new ComparableStack(ModItems.crystal_xen, 2), new ComparableStack(ModItems.singularity_counter_resonant, 1), new ComparableStack(ModItems.mechanism_special, 3), new ComparableStack(ModItems.plate_paa, 12), new OreDictStack("plateDenseLead", 8), new ComparableStack(ModItems.coil_magnetized_tungsten, 5), new ComparableStack(ModItems.powder_magic, 4), new OreDictStack("ingotAsbestos", 8) }, 200); + makeRecipe(new ComparableStack(ModItems.gun_zomg, 1), new AStack[] { new ComparableStack(ModItems.crystal_xen, 2), new ComparableStack(ModItems.singularity_counter_resonant, 1), new ComparableStack(ModItems.mechanism_special, 3), new ComparableStack(ModItems.plate_paa, 12), new OreDictStack(OreDictManager.getReflector(), 8), new ComparableStack(ModItems.coil_magnetized_tungsten, 5), new ComparableStack(ModItems.powder_magic, 4), new OreDictStack("ingotAsbestos", 8) }, 200); makeRecipe(new ComparableStack(ModBlocks.machine_industrial_generator, 1), new AStack[] { new ComparableStack(ModBlocks.machine_coal_off, 2), diff --git a/src/main/java/com/hbm/inventory/MachineRecipes.java b/src/main/java/com/hbm/inventory/MachineRecipes.java index 6e6b6c637a..e38e5bd119 100644 --- a/src/main/java/com/hbm/inventory/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/MachineRecipes.java @@ -115,7 +115,7 @@ public static ItemStack getPressResult(ItemStack input, ItemStack stamp) { return new ItemStack(ModItems.briquette_lignite); if(input.getItem() == ModItems.meteorite_sword_reforged) return new ItemStack(ModItems.meteorite_sword_hardened); - if(input.getItem() == ModItems.coke) + if(mODE(input, "fuelCoke")) return new ItemStack(ModItems.ingot_graphite); } diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index c3f8628ecd..7e97f573c1 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -13,6 +13,7 @@ import com.hbm.hazard.HazardRegistry; import com.hbm.hazard.HazardSystem; import com.hbm.interfaces.Untested; +import com.hbm.items.ModItems; import net.minecraft.block.Block; import net.minecraft.init.Items; @@ -35,6 +36,8 @@ public static void registerOres() { new DictFrame("Diamond").dust(powder_diamond).ore(gravel_diamond); new DictFrame("Emerald").dust(powder_emerald); + new DictFrame("Coke").makeItem("fuel", ModItems.coke); + /* * RADIOACTIVE */ @@ -196,7 +199,7 @@ public static void registerOres() { @Untested public static String getReflector() { - return GeneralConfig.enableReflectorCompat ? "plateDenseLead" : "plateTungCar"; //let's just mangle the name into "tungCar" so that it can't conflict with anything ever + return GeneralConfig.enableReflectorCompat ? OreDictManager.getReflector() : "plateTungCar"; //let's just mangle the name into "tungCar" so that it can't conflict with anything ever } public static class DictFrame { diff --git a/src/main/java/com/hbm/inventory/container/ContainerBook.java b/src/main/java/com/hbm/inventory/container/ContainerBook.java index 304d69f654..fd1cd72931 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerBook.java +++ b/src/main/java/com/hbm/inventory/container/ContainerBook.java @@ -13,14 +13,31 @@ import net.minecraft.inventory.Slot; import net.minecraft.inventory.SlotCrafting; import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.CraftingManager; +import net.minecraft.util.NonNullList; +import net.minecraft.world.World; public class ContainerBook extends Container { public InventoryCrafting craftMatrix = new InventoryCrafting(this, 2, 2); - public IInventory craftResult = new InventoryCraftResult(); + public InventoryCraftResult craftResult = new InventoryCraftResult(); + public World world; + public EntityPlayer player; public ContainerBook(InventoryPlayer inventory) { - this.addSlotToContainer(new SlotCrafting(inventory.player, this.craftMatrix, this.craftResult, 0, 124, 35)); + this.world = inventory.player.world; + this.player = inventory.player; + this.addSlotToContainer(new SlotCrafting(inventory.player, this.craftMatrix, this.craftResult, 0, 124, 35){ + @Override + public ItemStack onTake(EntityPlayer thePlayer, ItemStack stack){ + NonNullList nonnulllist = CraftingManager.getRemainingItems(craftMatrix, thePlayer.world); + for(ItemStack sta : nonnulllist){ + sta.shrink(1); + } + onCraftMatrixChanged(craftMatrix); + return stack; + } + }); for (int l = 0; l < 2; ++l) { for (int i1 = 0; i1 < 2; ++i1) { diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 3b28b58a42..3e52e78ac2 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -765,10 +765,10 @@ public class ModItems { public static final Item hat = new ArmorHat(ArmorMaterial.IRON, 7, EntityEquipmentSlot.HEAD, "nossy_hat").setMaxStackSize(1); public static final Item beta = new ItemDrop("beta").setMaxStackSize(1); - public static final Item jetpack_boost = new JetpackBooster(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, "jetpack_boost").setMaxStackSize(1); - public static final Item jetpack_break = new JetpackBreak(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, ModForgeFluids.kerosene, 8000, "jetpack_break").setMaxStackSize(1); - public static final Item jetpack_fly = new JetpackRegular(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, ModForgeFluids.kerosene, 12000, "jetpack_fly").setMaxStackSize(1); - public static final Item jetpack_vector = new JetpackVectorized(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, ModForgeFluids.kerosene, 16000, "jetpack_vector").setMaxStackSize(1); + public static final Item jetpack_boost = new JetpackBooster(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, "jetpack_boost").setCreativeTab(CreativeTabs.COMBAT).setMaxStackSize(1); + public static final Item jetpack_break = new JetpackBreak(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, ModForgeFluids.kerosene, 8000, "jetpack_break").setCreativeTab(CreativeTabs.COMBAT).setMaxStackSize(1); + public static final Item jetpack_fly = new JetpackRegular(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, ModForgeFluids.kerosene, 12000, "jetpack_fly").setCreativeTab(CreativeTabs.COMBAT).setMaxStackSize(1); + public static final Item jetpack_vector = new JetpackVectorized(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, ModForgeFluids.kerosene, 16000, "jetpack_vector").setCreativeTab(CreativeTabs.COMBAT).setMaxStackSize(1); public static final Item jetpack_glider = new JetpackGlider(MainRegistry.enumArmorMaterialSteel, -1, EntityEquipmentSlot.CHEST, 20000, "jetpack_glider").setMaxStackSize(1).setCreativeTab(MainRegistry.weaponTab); public static final Item wings_murk = new WingsMurk(MainRegistry.aMatCobalt, "wings_murk").setCreativeTab(CreativeTabs.COMBAT).setMaxStackSize(1); public static final Item wings_limp = new WingsMurk(MainRegistry.aMatCobalt, "wings_limp").setCreativeTab(CreativeTabs.COMBAT).setMaxStackSize(1); diff --git a/src/main/java/com/hbm/items/gear/JetpackBooster.java b/src/main/java/com/hbm/items/gear/JetpackBooster.java index 18fe9e1550..6d3cb1c971 100644 --- a/src/main/java/com/hbm/items/gear/JetpackBooster.java +++ b/src/main/java/com/hbm/items/gear/JetpackBooster.java @@ -86,7 +86,6 @@ public void onArmorTick(World world, EntityPlayer player, ItemStack stack) { } if(getFuel(stack) > 0 && props.isJetpackActive()) { - if(player.motionY < 0.6D) player.motionY += 0.1D; diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 830bcca550..be977e0aa7 100644 --- a/src/main/java/com/hbm/lib/RefStrings.java +++ b/src/main/java/com/hbm/lib/RefStrings.java @@ -3,7 +3,7 @@ public class RefStrings { public static final String MODID = "hbm"; public static final String NAME = "Hbm's Nuclear Tech Mod"; - public static final String VERSION = "hbm-1.6.3A-1.12.2"; + public static final String VERSION = "hbm-1.6.4A-1.12.2"; //HBM's Beta Naming Convention: //V T (X) //V -> next release version diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index a1bc421bfe..2660ce03a3 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -525,7 +525,7 @@ public static void addCrafting(){ addShapelessOreRecipe(new ItemStack(ModBlocks.deco_aluminium), new Object[] { "ingotAluminum", ModBlocks.steel_scaffold }); addShapelessOreRecipe(new ItemStack(ModBlocks.deco_beryllium), new Object[] { "ingotBeryllium", ModBlocks.steel_scaffold }); addShapelessOreRecipe(new ItemStack(ModBlocks.deco_lead), new Object[] { "ingotLead", ModBlocks.steel_scaffold }); - addShapelessOreRecipe(new ItemStack(ModBlocks.deco_red_copper), new Object[] { "Mingrade", ModBlocks.steel_scaffold }); + addShapelessOreRecipe(new ItemStack(ModBlocks.deco_red_copper), new Object[] { "ingotMingrade", ModBlocks.steel_scaffold }); addShapelessOreRecipe(new ItemStack(ModBlocks.deco_steel), new Object[] { "ingotSteel", ModBlocks.steel_scaffold }); addShapelessOreRecipe(new ItemStack(ModBlocks.deco_titanium), new Object[] { "ingotTitanium", ModBlocks.steel_scaffold }); addShapelessOreRecipe(new ItemStack(ModBlocks.deco_tungsten), new Object[] { "ingotTungsten", ModBlocks.steel_scaffold }); @@ -596,17 +596,17 @@ public static void addCrafting(){ addShapelessRecipe(new ItemStack(ModItems.missile_anti_ballistic, 1), new Object[] { ModItems.missile_generic, ModItems.circuit_targeting_tier3 }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_difurnace_off), 1), new Object[] { "T T", "PHP", "TFT", 'T', "ingotTungsten", 'P', ModItems.board_copper, 'H', Blocks.HOPPER, 'F', Blocks.FURNACE }); - addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_uf6_tank), 1), new Object[] { "WTW", "WTW", "SRS", 'S', "plateIron", 'W', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'W', ModItems.coil_tungsten, 'R', "Mingrade" }); - addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_puf6_tank), 1), new Object[] { "WTW", "WTW", "SRS", 'S', "plateSteel", 'W', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'W', ModItems.coil_tungsten, 'R', "Mingrade" }); + addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_uf6_tank), 1), new Object[] { "WTW", "WTW", "SRS", 'S', "plateIron", 'W', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'W', ModItems.coil_tungsten, 'R', "ingotMingrade" }); + addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_puf6_tank), 1), new Object[] { "WTW", "WTW", "SRS", 'S', "plateSteel", 'W', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'W', ModItems.coil_tungsten, 'R', "ingotMingrade" }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_nuke_furnace_off), 1), new Object[] { "SSS", "LFL", "CCC", 'S', "plateSteel", 'C', ModItems.board_copper, 'L', "plateLead", 'F', Item.getItemFromBlock(Blocks.FURNACE) }); addShapedRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_electric_furnace_off), 1), new Object[] { "BBB", "WFW", "RRR", 'B', ModItems.ingot_beryllium, 'R', ModItems.coil_tungsten, 'W', ModItems.board_copper, 'F', Item.getItemFromBlock(Blocks.FURNACE) }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_arc_furnace_off, 1), new Object[] { "ITI", "PFP", "ITI", 'I', "ingotTungsten", 'T', ModBlocks.machine_transformer, 'P', ModItems.board_copper, 'F', Blocks.FURNACE }); - addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_wire_coated), 16), new Object[] { "WRW", "RIR", "WRW", 'W', ModItems.plate_polymer, 'I', "Mingrade", 'R', ModItems.wire_red_copper }); + addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_wire_coated), 16), new Object[] { "WRW", "RIR", "WRW", 'W', ModItems.plate_polymer, 'I', "ingotMingrade", 'R', ModItems.wire_red_copper }); addShapedRecipe(new ItemStack(ModBlocks.cable_switch, 1), new Object[] { "S", "W", 'S', Blocks.LEVER, 'W', ModBlocks.red_wire_coated }); addShapedRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_cable), 16), new Object[] { " W ", "RRR", " W ", 'W', ModItems.plate_polymer, 'R', ModItems.wire_red_copper }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_pylon), 4), new Object[] { "CWC", "PWP", " T ", 'C', ModItems.coil_copper_torus, 'W', "plankWood", 'P', ModItems.plate_polymer, 'T', ModBlocks.red_wire_coated }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_battery_potato, 1), new Object[] { "PCP", "WRW", "PCP", 'P', ItemBattery.getEmptyBattery(ModItems.battery_potato), 'C', "ingotCopper", 'R', Blocks.REDSTONE_BLOCK, 'W', "plankWood" }); - addShapedOreRecipe(new ItemStack(ModBlocks.machine_coal_off, 1), new Object[] { "STS", "SCS", "SFS", 'S', "ingotSteel", 'T', ModItems.tank_steel, 'C', "Mingrade", 'F', Blocks.FURNACE }); + addShapedOreRecipe(new ItemStack(ModBlocks.machine_coal_off, 1), new Object[] { "STS", "SCS", "SFS", 'S', "ingotSteel", 'T', ModItems.tank_steel, 'C', "ingotMingrade", 'F', Blocks.FURNACE }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_boiler_off, 1), new Object[] { "SPS", "TFT", "SPS", 'S', "ingotSteel", 'P', ModItems.board_copper, 'T', ModItems.tank_steel, 'F', Blocks.FURNACE }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_boiler_electric_off, 1), new Object[] { "SPS", "TFT", "SPS", 'S', "ingotDesh", 'P', ModItems.board_copper, 'T', ModItems.tank_steel, 'F', ModBlocks.machine_electric_furnace_off }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_turbine, 1), new Object[] { "PTP", "BMB", "PTP", 'P', "plateTitanium", 'T', ModItems.turbine_titanium, 'B', ModItems.tank_steel, 'M', ModItems.motor }); @@ -687,7 +687,7 @@ public static void addCrafting(){ addShapedOreRecipe(new ItemStack(ModItems.mechanism_revolver_2, 1), new Object[] { " II", "ICA", "IKW", 'I', "plateAdvanced", 'C', "ingotDuraSteel", 'A', "ingotTungsten", 'K', ModItems.bolt_dura_steel, 'W', ModItems.bolt_tungsten }); addShapedOreRecipe(new ItemStack(ModItems.mechanism_rifle_1, 1), new Object[] { "ICI", "CMA", "IAM", 'I', "plateIron", 'C', "ingotCopper", 'A', "ingotAluminum", 'M', ModItems.mechanism_revolver_1 }); addShapedOreRecipe(new ItemStack(ModItems.mechanism_rifle_2, 1), new Object[] { "ICI", "CMA", "IAM", 'I', "plateAdvanced", 'C', "ingotDuraSteel", 'A', "ingotTungsten", 'M', ModItems.mechanism_revolver_2 }); - addShapedOreRecipe(new ItemStack(ModItems.mechanism_launcher_1, 1), new Object[] { "TTT", "SSS", "BBI", 'T', "plateTitanium", 'S', "ingotSteel", 'B', ModItems.bolt_tungsten, 'I', "Mingrade" }); + addShapedOreRecipe(new ItemStack(ModItems.mechanism_launcher_1, 1), new Object[] { "TTT", "SSS", "BBI", 'T', "plateTitanium", 'S', "ingotSteel", 'B', ModItems.bolt_tungsten, 'I', "ingotMingrade" }); addShapedOreRecipe(new ItemStack(ModItems.mechanism_launcher_2, 1), new Object[] { "TTT", "SSS", "BBI", 'T', "plateAdvanced", 'S', "ingotPolymer", 'B', ModItems.bolt_dura_steel, 'I', "ingotDesh" }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_cooler), 1), new Object[] { "IPI", "IPI", "IPI", 'I', "ingotTitanium", 'P', "plateTitanium" }); @@ -731,7 +731,7 @@ public static void addCrafting(){ addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.tape_recorder), 4), new Object[] { "TST", "SSS", 'T', "ingotTungsten", 'S', "ingotSteel" }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.steel_poles), 16), new Object[] { "S S", "SSS", "S S", 'S', "ingotSteel" }); - addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.pole_top), 1), new Object[] { "T T", "TRT", "BBB", 'T', "ingotTungsten", 'B', ModItems.ingot_beryllium, 'R', "Mingrade" }); + addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.pole_top), 1), new Object[] { "T T", "TRT", "BBB", 'T', "ingotTungsten", 'B', ModItems.ingot_beryllium, 'R', "ingotMingrade" }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.pole_satellite_receiver), 1), new Object[] { "SS ", "SCR", "SS ", 'S', "ingotSteel", 'C', ModItems.circuit_red_copper, 'R', ModItems.wire_red_copper }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.steel_beam), 8), new Object[] { "S", "S", "S", 'S', "ingotSteel" }); addShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.steel_wall), 4), new Object[] { "SSS", "SSS", 'S', "ingotSteel" }); @@ -1083,7 +1083,7 @@ public static void reg2(){ addShapedRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.book_guide), 1), new Object[] { "IBI", "LBL", "IBI", 'B', Items.BOOK, 'I', new ItemStack(Items.DYE, 1, 0), 'L', new ItemStack(Items.DYE, 1, 4) }); addShapedOreRecipe(new ItemStack(ModBlocks.rail_highspeed, 16), new Object[] { "S S", "SIS", "S S", 'S', "ingotSteel", 'I', "plateIron" }); - addShapedOreRecipe(new ItemStack(ModBlocks.rail_booster, 6), new Object[] { "S S", "CIC", "SRS", 'S', "ingotSteel", 'I', "plateIron", 'R', "Mingrade", 'C', ModItems.coil_copper }); + addShapedOreRecipe(new ItemStack(ModBlocks.rail_booster, 6), new Object[] { "S S", "CIC", "SRS", 'S', "ingotSteel", 'I', "plateIron", 'R', "ingotMingrade", 'C', ModItems.coil_copper }); addShapedRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.bomb_multi), 1), new Object[] { "AAD", "CHF", "AAD", 'A', ModItems.wire_aluminium, 'C', ModItems.circuit_aluminium, 'H', ModItems.hull_small_aluminium, 'F', ModItems.fins_quad_titanium, 'D', new ItemStack(Items.DYE, 1, 15) }); addShapelessOreRecipe(new ItemStack(ModItems.powder_ice, 4), new Object[] { Items.SNOWBALL, "dustNiter", "dustRedstone" }); @@ -1435,8 +1435,8 @@ public static void reg2(){ addShapelessRecipe(new ItemStack(ModBlocks.machine_spp_bottom), new Object[] { ModBlocks.machine_spp_top }); addShapelessRecipe(new ItemStack(ModBlocks.machine_spp_top), new Object[] { ModBlocks.machine_spp_bottom }); addShapedRecipe(new ItemStack(ModItems.gun_b93), new Object[] { "PCE", "SEB", "PCE", 'P', ModItems.plate_dineutronium, 'C', ModItems.weaponized_starblaster_cell, 'E', ModItems.component_emitter, 'B', ModItems.gun_b92, 'S', ModItems.singularity_spark }); - addShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer), new Object[] { "SDS", "MCM", "MCM", 'S', "ingotIron", 'D', "Mingrade", 'M', ModItems.coil_advanced_alloy, 'C', ModItems.circuit_copper }); - addShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer_20), new Object[] { "SDS", "MCM", "MCM", 'S', "ingotIron", 'D', "Mingrade", 'M', ModItems.coil_copper, 'C', ModItems.circuit_copper }); + addShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer), new Object[] { "SDS", "MCM", "MCM", 'S', "ingotIron", 'D', "ingotMingrade", 'M', ModItems.coil_advanced_alloy, 'C', ModItems.circuit_copper }); + addShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer_20), new Object[] { "SDS", "MCM", "MCM", 'S', "ingotIron", 'D', "ingotMingrade", 'M', ModItems.coil_copper, 'C', ModItems.circuit_copper }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer_dnt), new Object[] { "SDS", "MCM", "MCM", 'S', ModItems.ingot_starmetal, 'D', "ingotDesh", 'M', ModBlocks.fwatz_conductor, 'C', ModItems.circuit_targeting_tier6 }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer_dnt_20), new Object[] { "SDS", "MCM", "MCM", 'S', ModItems.ingot_starmetal, 'D', "ingotDesh", 'M', ModBlocks.fusion_conductor, 'C', ModItems.circuit_targeting_tier6 }); addShapelessRecipe(new ItemStack(ModItems.bottle_sparkle), new Object[] { ModItems.bottle_nuka, Items.CARROT, Items.GOLD_NUGGET }); @@ -1515,7 +1515,7 @@ public static void reg2(){ addShapedRecipe(new ItemStack(Blocks.TORCH, 3), new Object[] { "L", "S", 'L', ModItems.lignite, 'S', Items.STICK }); addShapedRecipe(new ItemStack(Blocks.TORCH, 6), new Object[] { "L", "S", 'L', ModItems.briquette_lignite, 'S', Items.STICK }); - addShapedRecipe(new ItemStack(Blocks.TORCH, 8), new Object[] { "L", "S", 'L', ModItems.coke, 'S', Items.STICK }); + addShapedOreRecipe(new ItemStack(Blocks.TORCH, 8), new Object[] { "L", "S", 'L', "fuelCoke", 'S', Items.STICK }); addShapedOreRecipe(new ItemStack(ModBlocks.machine_missile_assembly, 1), new Object[] { "PWP", "SSS", "CCC", 'P', ModItems.pedestal_steel, 'W', ModItems.wrench, 'S', "plateSteel", 'C', ModBlocks.steel_scaffold }); addShapedOreRecipe(new ItemStack(ModBlocks.struct_launcher, 1), new Object[] { "PPP", "SDS", "CCC", 'P', "plateSteel", 'S', ModBlocks.steel_scaffold, 'D', ModItems.pipes_steel, 'C', ModBlocks.concrete_smooth }); @@ -1759,6 +1759,10 @@ public static void reg3(){ addShapedOreRecipe(new ItemStack(ModBlocks.deco_pipe_quad_marked, 8), new Object[] { "PPP", "PCP", "PPP", 'P', ModBlocks.deco_pipe_quad_green, 'C', "dyeGreen" }); addShapedOreRecipe(new ItemStack(ModBlocks.deco_pipe_framed_marked, 8), new Object[] { "PPP", "PCP", "PPP", 'P', ModBlocks.deco_pipe_framed_green, 'C', "dyeGreen" }); + addShapedRecipe(new ItemStack(ModItems.ajr_helmet, 1), new Object[] { "PPC", "PBP", "IXI", 'P', ModItems.plate_armor_ajr, 'C', ModItems.circuit_targeting_tier4, 'I', ModItems.ingot_polymer, 'X', ModItems.gas_mask_m65, 'B', ModItems.alloy_helmet }); + addShapedRecipe(new ItemStack(ModItems.ajr_plate, 1), new Object[] { "MPM", "TBT", "PPP", 'M', ModItems.motor_desh, 'P', ModItems.plate_armor_ajr, 'T', ModItems.gas_canister, 'B', ModItems.alloy_plate }); + addShapedRecipe(new ItemStack(ModItems.ajr_legs, 1), new Object[] { "MPM", "PBP", "P P", 'M', ModItems.motor_desh, 'P', ModItems.plate_armor_ajr, 'B', ModItems.alloy_legs }); + addShapedRecipe(new ItemStack(ModItems.ajr_boots, 1), new Object[] { "P P", "PBP", 'P', ModItems.plate_armor_ajr, 'B', ModItems.alloy_boots }); addShapelessOreRecipe(new ItemStack(ModItems.ajro_helmet, 1), new Object[] { ModItems.ajr_helmet, "dyeRed", "dyeBlack" }); addShapelessOreRecipe(new ItemStack(ModItems.ajro_plate, 1), new Object[] { ModItems.ajr_plate, "dyeRed", "dyeBlack" }); addShapelessOreRecipe(new ItemStack(ModItems.ajro_legs, 1), new Object[] { ModItems.ajr_legs, "dyeRed", "dyeBlack" }); diff --git a/src/main/java/com/hbm/main/ModEventHandler.java b/src/main/java/com/hbm/main/ModEventHandler.java index 8f362d8cb3..b2b957bd8e 100644 --- a/src/main/java/com/hbm/main/ModEventHandler.java +++ b/src/main/java/com/hbm/main/ModEventHandler.java @@ -24,6 +24,7 @@ import com.hbm.capability.HbmCapability; import com.hbm.capability.HbmLivingCapability; import com.hbm.capability.HbmLivingProps; +import com.hbm.capability.HbmCapability.IHBMData; import com.hbm.config.GeneralConfig; import com.hbm.config.WorldConfig; import com.hbm.entity.logic.IChunkLoader; @@ -44,6 +45,7 @@ import com.hbm.handler.MissileStruct; import com.hbm.handler.RadiationWorldHandler; import com.hbm.handler.WeightedRandomChestContentFrom1710; +import com.hbm.handler.HbmKeybinds.EnumKeybind; import com.hbm.interfaces.IBomb; import com.hbm.inventory.AssemblerRecipes; import com.hbm.items.IEquipReceiver; @@ -61,6 +63,7 @@ import com.hbm.lib.RefStrings; import com.hbm.packet.AssemblerRecipeSyncPacket; import com.hbm.packet.AuxParticlePacketNT; +import com.hbm.packet.KeybindPacket; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.PlayerInformPacket; import com.hbm.packet.SurveyPacket; @@ -1218,6 +1221,10 @@ public void clientJoinServer(PlayerLoggedInEvent e) { if(e.player instanceof EntityPlayerMP){ PacketDispatcher.sendTo(new AssemblerRecipeSyncPacket(AssemblerRecipes.recipeList, AssemblerRecipes.hidden), (EntityPlayerMP) e.player); JetpackHandler.playerLoggedIn(e); + IHBMData props = HbmCapability.getData(e.player); + + PacketDispatcher.wrapper.sendToServer(new KeybindPacket(EnumKeybind.TOGGLE_HEAD, props.getEnableHUD())); + PacketDispatcher.wrapper.sendToServer(new KeybindPacket(EnumKeybind.TOGGLE_JETPACK, props.getEnableBackpack())); } if(!e.player.world.isRemote) { e.player.sendMessage(new TextComponentTranslation("Loaded world with Hbm's Nuclear Tech Mod " + RefStrings.VERSION + " for Minecraft 1.12.2!")); diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 8e09db97e6..36cfc5f8e1 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -19,6 +19,7 @@ import com.google.common.collect.Queues; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.TrappedBrick.Trap; +import com.hbm.capability.HbmCapability; import com.hbm.capability.HbmLivingCapability.EntityHbmPropsProvider; import com.hbm.config.GeneralConfig; import com.hbm.entity.mob.EntityHunterChopper; @@ -1298,7 +1299,7 @@ public void renderWorld(RenderWorldLastEvent evt) { } - if(ArmorFSB.hasFSBArmor(Minecraft.getMinecraft().player)) { + if(ArmorFSB.hasFSBArmor(Minecraft.getMinecraft().player) && HbmCapability.getData(Minecraft.getMinecraft().player).getEnableHUD()) { ItemStack plate = Minecraft.getMinecraft().player.inventory.armorInventory.get(2); ArmorFSB chestplate = (ArmorFSB)plate.getItem(); @@ -1541,7 +1542,7 @@ public void cancelVanished(RenderLivingEvent.Pre event){ @SubscribeEvent public void preRenderEvent(RenderLivingEvent.Pre event) { EntityPlayer player = Minecraft.getMinecraft().player; - if(ArmorFSB.hasFSBArmor(player)) { + if(ArmorFSB.hasFSBArmor(player) && HbmCapability.getData(player).getEnableHUD()) { ItemStack plate = player.inventory.armorInventory.get(2); ArmorFSB chestplate = (ArmorFSB)plate.getItem(); diff --git a/src/main/java/com/hbm/packet/KeybindPacket.java b/src/main/java/com/hbm/packet/KeybindPacket.java index 69286ed4f9..d1b7da8843 100644 --- a/src/main/java/com/hbm/packet/KeybindPacket.java +++ b/src/main/java/com/hbm/packet/KeybindPacket.java @@ -4,16 +4,21 @@ import com.hbm.capability.HbmCapability.IHBMData; import com.hbm.handler.HbmKeybinds.EnumKeybind; import com.hbm.items.gear.ArmorFSB; +import com.hbm.main.MainRegistry; import io.netty.buffer.ByteBuf; +import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.SoundEvents; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.SoundCategory; +import net.minecraft.util.text.TextFormatting; import net.minecraftforge.fml.common.network.simpleimpl.IMessage; import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler; import net.minecraftforge.fml.common.network.simpleimpl.MessageContext; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; public class KeybindPacket implements IMessage { @@ -51,31 +56,48 @@ public static class Handler implements IMessageHandler @Override public IMessage onMessage(KeybindPacket m, MessageContext ctx) { - ctx.getServerHandler().player.getServer().addScheduledTask(() -> { - switch(m.id){ - case 0: - EntityPlayer p = ctx.getServerHandler().player; - IHBMData props = HbmCapability.getData(p); + if(ctx.side == Side.SERVER){ + ctx.getServerHandler().player.getServer().addScheduledTask(() -> { + switch(m.id){ + case 0: + EntityPlayer p = ctx.getServerHandler().player; + IHBMData props = HbmCapability.getData(p); - props.setKeyPressed(EnumKeybind.values()[m.key], m.pressed); - break; - case 1: - EntityPlayer player = ctx.getServerHandler().player; - if(ArmorFSB.hasFSBArmor(player)){ - ItemStack stack = player.inventory.armorInventory.get(2); - ArmorFSB fsbarmor = (ArmorFSB)stack.getItem(); - if(fsbarmor.flashlightPosition != null){ - if(!stack.hasTagCompound()){ - stack.setTagCompound(new NBTTagCompound()); + props.setKeyPressed(EnumKeybind.values()[m.key], m.pressed); + break; + case 1: + EntityPlayer player = ctx.getServerHandler().player; + if(ArmorFSB.hasFSBArmor(player)){ + ItemStack stack = player.inventory.armorInventory.get(2); + ArmorFSB fsbarmor = (ArmorFSB)stack.getItem(); + if(fsbarmor.flashlightPosition != null){ + if(!stack.hasTagCompound()){ + stack.setTagCompound(new NBTTagCompound()); + } + player.world.playSound(null, player.posX, player.posY, player.posZ, SoundEvents.BLOCK_LEVER_CLICK, SoundCategory.PLAYERS, 0.5F, 1); + stack.getTagCompound().setBoolean("flActive", !stack.getTagCompound().getBoolean("flActive")); } - player.world.playSound(null, player.posX, player.posY, player.posZ, SoundEvents.BLOCK_LEVER_CLICK, SoundCategory.PLAYERS, 0.5F, 1); - stack.getTagCompound().setBoolean("flActive", !stack.getTagCompound().getBoolean("flActive")); } + break; } - break; + }); + } else { + handleClient(ctx, m); + } + return null; + } + + @SideOnly(Side.CLIENT) + public void handleClient(MessageContext ctx, KeybindPacket m){ + Minecraft.getMinecraft().addScheduledTask(() -> { + IHBMData props = HbmCapability.getData(Minecraft.getMinecraft().player); + if(EnumKeybind.values()[m.key] == EnumKeybind.TOGGLE_JETPACK) { + props.setEnableBackpack(m.pressed); + } + if(EnumKeybind.values()[m.key] == EnumKeybind.TOGGLE_HEAD) { + props.setEnableHUD(m.pressed); } }); - return null; } } } \ No newline at end of file diff --git a/src/main/java/com/hbm/render/model/ModelArmorAJRO.java b/src/main/java/com/hbm/render/model/ModelArmorAJRO.java index 08c11925fd..1a7ff57321 100644 --- a/src/main/java/com/hbm/render/model/ModelArmorAJRO.java +++ b/src/main/java/com/hbm/render/model/ModelArmorAJRO.java @@ -32,23 +32,23 @@ public void render(Entity par1Entity, float par2, float par3, float par4, float GL11.glPushMatrix(); GlStateManager.shadeModel(GL11.GL_SMOOTH); - if(type == 0) { + if(type == 3) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajro_helmet); head.render(par7); } - if(type == 1) { + if(type == 2) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajro_chest); body.render(par7); Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajro_arm); leftArm.render(par7); rightArm.render(par7); } - if(type == 2) { + if(type == 1) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajro_leg); leftLeg.render(par7); rightLeg.render(par7); } - if(type == 3) { + if(type == 0) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajro_leg); leftFoot.render(par7); rightFoot.render(par7); diff --git a/src/main/java/com/hbm/render/model/ModelArmorDNT.java b/src/main/java/com/hbm/render/model/ModelArmorDNT.java index 5d4c32ff84..37bdbfb60f 100644 --- a/src/main/java/com/hbm/render/model/ModelArmorDNT.java +++ b/src/main/java/com/hbm/render/model/ModelArmorDNT.java @@ -32,23 +32,23 @@ public void render(Entity par1Entity, float par2, float par3, float par4, float GL11.glPushMatrix(); GlStateManager.shadeModel(GL11.GL_SMOOTH); - if(type == 0) { + if(type == 3) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_helmet); head.render(par7); } - if(type == 1) { + if(type == 2) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_chest); body.render(par7); Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_arm); leftArm.render(par7); rightArm.render(par7); } - if(type == 2) { + if(type == 1) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_leg); leftLeg.render(par7); rightLeg.render(par7); } - if(type == 3) { + if(type == 0) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_leg); leftFoot.render(par7); rightFoot.render(par7); diff --git a/src/main/java/com/hbm/render/model/ModelArmorDigamma.java b/src/main/java/com/hbm/render/model/ModelArmorDigamma.java index d2d0964d30..add71c6a0a 100644 --- a/src/main/java/com/hbm/render/model/ModelArmorDigamma.java +++ b/src/main/java/com/hbm/render/model/ModelArmorDigamma.java @@ -38,11 +38,11 @@ public void render(Entity par1Entity, float par2, float par3, float par4, float body.copyTo(cassette); - if(type == 0) { + if(type == 3) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.fau_helmet); head.render(par7); } - if(type == 1) { + if(type == 2) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.fau_chest); body.render(par7); GL11.glEnable(GL11.GL_BLEND); @@ -53,12 +53,12 @@ public void render(Entity par1Entity, float par2, float par3, float par4, float leftArm.render(par7); rightArm.render(par7); } - if(type == 2) { + if(type == 1) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.fau_leg); leftLeg.render(par7); rightLeg.render(par7); } - if(type == 3) { + if(type == 0) { Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.fau_leg); leftFoot.render(par7); rightFoot.render(par7); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityDiFurnace.java b/src/main/java/com/hbm/tileentity/machine/TileEntityDiFurnace.java index f886ff5598..94973bc940 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityDiFurnace.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityDiFurnace.java @@ -127,7 +127,7 @@ private static int getItemPower(ItemStack itemStack) { if(item == ModItems.powder_lignite) return 150; if(item == ModItems.powder_coal) return 200; if(item == ModItems.briquette_lignite) return 200; - if(item == ModItems.coke) return 400; + if(MachineRecipes.mODE(itemStack, "fuelCoke")) return 400; if(item == ModItems.solid_fuel) return 400; return 0; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java index 5b512d0b92..3bc95889b1 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java @@ -137,13 +137,13 @@ public void update() { this.maxProgress = (ItemAssemblyTemplate.getProcessTime(inventory.getStackInSlot(4)) * speed) / 100; if(power >= consumption && removeItems(AssemblerRecipes.getRecipeFromTempate(inventory.getStackInSlot(4)), cloneItemStackProper(inventory))) { - if(inventory.getStackInSlot(5) == ItemStack.EMPTY || (inventory.getStackInSlot(5).getItem() != Items.AIR && inventory.getStackInSlot(5).getItem() == AssemblerRecipes.getOutputFromTempate(inventory.getStackInSlot(4)).copy().getItem()) && inventory.getStackInSlot(5).getCount() + AssemblerRecipes.getOutputFromTempate(inventory.getStackInSlot(4)).copy().getCount() <= inventory.getStackInSlot(5).getMaxStackSize()) { + if(inventory.getStackInSlot(5).isEmpty() || (!inventory.getStackInSlot(5).isEmpty() && inventory.getStackInSlot(5).getItem() == AssemblerRecipes.getOutputFromTempate(inventory.getStackInSlot(4)).copy().getItem()) && inventory.getStackInSlot(5).getCount() + AssemblerRecipes.getOutputFromTempate(inventory.getStackInSlot(4)).copy().getCount() <= inventory.getStackInSlot(5).getMaxStackSize()) { progress++; isProgressing = true; if(progress >= maxProgress) { progress = 0; - if(inventory.getStackInSlot(5).getItem() == Items.AIR) { + if(inventory.getStackInSlot(5).isEmpty()) { inventory.setStackInSlot(5, AssemblerRecipes.getOutputFromTempate(inventory.getStackInSlot(4)).copy()); } else { inventory.getStackInSlot(5).grow(AssemblerRecipes.getOutputFromTempate(inventory.getStackInSlot(4)).copy().getCount()); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java index 7a85d97ee0..9aed102d39 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java @@ -91,25 +91,26 @@ public void update() { if(world.getBlockState(new BlockPos(pos.getX() + dir.offsetX * dist, pos.getY() + 2, pos.getZ() + dir.offsetZ * dist)).getBlock() == ModBlocks.iter) { int[] pos1 = ((MachineITER)ModBlocks.iter).findCore(world, pos.getX() + dir.offsetX * dist, pos.getY() + 2, pos.getZ() + dir.offsetZ * dist); - + Fluid type = plasma.getFluid() == null ? null : plasma.getFluid().getFluid(); + if(pos1 != null) { TileEntity te = world.getTileEntity(new BlockPos(pos1[0], pos1[1], pos1[2])); if(te instanceof TileEntityITER) { TileEntityITER iter = (TileEntityITER)te; - if(iter.plasma.getFluidAmount() == 0 && this.plasmaType != null) { - iter.plasmaType = this.plasmaType; + if(iter.plasma.getFluidAmount() == 0 && type != null) { + iter.plasmaType = type; } if(iter.isOn) { - if(this.plasmaType != null && iter.plasmaType == this.plasmaType) { + if(type != null && iter.plasmaType == type) { int toLoad = Math.min(iter.plasma.getCapacity() - iter.plasma.getFluidAmount(), this.plasma.getFluidAmount()); toLoad = Math.min(toLoad, 40); this.plasma.drain(toLoad, true); - iter.plasma.fill(new FluidStack(iter.plasmaType, toLoad), true); + iter.plasma.fill(new FluidStack(type, toLoad), true); this.markDirty(); iter.markDirty(); } diff --git a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java index 65894f803e..ed45fc4519 100644 --- a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java +++ b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretBaseNT.java @@ -564,7 +564,7 @@ public boolean entityAcceptableTarget(Entity e) { if(wl == null || wl.isEmpty()) return true; - return !wl.contains(((EntityPlayer)e).getDisplayName()); + return !wl.contains(((EntityPlayer)e).getDisplayName().getUnformattedText()); } return false; diff --git a/src/main/resources/assets/hbm/lang/en_us.lang b/src/main/resources/assets/hbm/lang/en_us.lang index 55a60aa07d..969305c546 100644 --- a/src/main/resources/assets/hbm/lang/en_us.lang +++ b/src/main/resources/assets/hbm/lang/en_us.lang @@ -2435,6 +2435,7 @@ item.v1.name=V1 item.stealth_boy.name=Stealth Device entity.entity_bullet.name=Bullet +entity.entity_bullet_mk2.name=Bullet entity.entity_rocket.name=Rocket entity.entity_schrabnel.name=Schrabnel entity.entity_nuclear_creeper.name=Nuclear Creeper diff --git a/src/main/resources/assets/hbm/models/block/waste_earth.json b/src/main/resources/assets/hbm/models/block/waste_earth.json index b1062615ed..6f8ee98c79 100644 --- a/src/main/resources/assets/hbm/models/block/waste_earth.json +++ b/src/main/resources/assets/hbm/models/block/waste_earth.json @@ -1,8 +1,8 @@ { "parent": "block/cube_bottom_top", "textures": { - "top": "hbm:blocks/waste_earth_top", + "top": "hbm:blocks/waste_grass_top", "bottom": "hbm:blocks/waste_earth_bottom", - "side": "hbm:blocks/waste_earth_side" + "side": "hbm:blocks/waste_grass_side" } } \ No newline at end of file diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png b/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png index e00e124034..6767d305db 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png and b/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png.mcmeta b/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png.mcmeta new file mode 100644 index 0000000000..b84e69f2c5 --- /dev/null +++ b/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 4 + } +} diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png b/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png index 9100e07bb4..aa45c35c38 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png and b/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png differ