From 46bafc67d318bbe7c5ffbb34d857958ebe72a6e5 Mon Sep 17 00:00:00 2001 From: miozune Date: Sun, 9 Oct 2022 18:07:28 +0900 Subject: Fix division by zero error --- src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main/java/common') diff --git a/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java b/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java index 5aa0c75cad..0e0dea54d0 100644 --- a/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java +++ b/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java @@ -671,7 +671,7 @@ public class GTMTE_LapotronicSuperCapacitor extends GT_MetaTileEntity_EnhancedMu for(long l: energyInputValues){ sum += l; } - return sum /energyInputValues.size(); + return sum / Math.max(energyInputValues.size(), 1); } private long getAvgOut(){ @@ -679,7 +679,7 @@ public class GTMTE_LapotronicSuperCapacitor extends GT_MetaTileEntity_EnhancedMu for(long l: energyOutputValues){ sum += l; } - return sum /energyOutputValues.size(); + return sum / Math.max(energyOutputValues.size(), 1); } @Override -- cgit From a265085bd7742ebf1e2e95e4bf7397ba5bea01dc Mon Sep 17 00:00:00 2001 From: miozune Date: Sun, 9 Oct 2022 18:10:02 +0900 Subject: updateBuildScript & spotlessApply --- src/main/java/common/Blocks.java | 193 ++- src/main/java/common/CommonProxy.java | 1 - src/main/java/common/Recipes.java | 1479 +++++++++++--------- src/main/java/common/Researches.java | 20 +- src/main/java/common/TileEntities.java | 19 +- .../java/common/blocks/BaseGTUpdateableBlock.java | 3 +- .../java/common/blocks/Block_BeamTransmitter.java | 8 +- src/main/java/common/blocks/Block_ControlRod.java | 36 +- src/main/java/common/blocks/Block_GDCUnit.java | 56 +- src/main/java/common/blocks/Block_IchorJar.java | 397 +++--- .../java/common/blocks/Block_ItemProxyCable.java | 92 +- .../common/blocks/Block_ItemProxyEndpoint.java | 92 +- .../java/common/blocks/Block_ItemProxySource.java | 88 +- .../common/blocks/Block_LapotronicEnergyUnit.java | 187 +-- .../java/common/blocks/Block_LargeHexPlate.java | 17 +- .../common/blocks/Block_ReactorChamber_OFF.java | 37 +- .../common/blocks/Block_ReactorChamber_ON.java | 45 +- .../java/common/blocks/Block_SpaceElevator.java | 8 +- .../common/blocks/Block_SpaceElevatorTether.java | 9 +- src/main/java/common/blocks/Block_TFFTCasing.java | 56 +- .../java/common/blocks/Block_TFFTMultiHatch.java | 72 +- .../blocks/Block_TFFTStorageFieldBlockT1.java | 75 +- .../blocks/Block_TFFTStorageFieldBlockT2.java | 74 +- .../blocks/Block_TFFTStorageFieldBlockT3.java | 74 +- .../blocks/Block_TFFTStorageFieldBlockT4.java | 74 +- .../blocks/Block_TFFTStorageFieldBlockT5.java | 54 +- .../common/blocks/Block_ThaumiumReinforcedJar.java | 439 +++--- src/main/java/common/blocks/Block_YSZUnit.java | 56 +- .../container/Container_ItemProxyEndpoint.java | 86 +- .../container/Container_ItemProxySource.java | 111 +- .../container/Container_ModularNuclearReactor.java | 154 +- src/main/java/common/itemBlocks/IB_IchorJar.java | 11 +- .../java/common/itemBlocks/IB_ItemProxyCable.java | 19 +- .../common/itemBlocks/IB_ItemProxyEndpoint.java | 23 +- .../java/common/itemBlocks/IB_ItemProxySource.java | 25 +- .../common/itemBlocks/IB_LapotronicEnergyUnit.java | 98 +- .../java/common/itemBlocks/IB_SpaceElevator.java | 7 +- .../itemBlocks/IB_SpaceElevatorCapacitor.java | 3 +- .../java/common/itemBlocks/IB_TFFTMultiHatch.java | 44 +- .../itemBlocks/IB_TFFTStorageFieldBlockT1.java | 26 +- .../itemBlocks/IB_TFFTStorageFieldBlockT2.java | 26 +- .../itemBlocks/IB_TFFTStorageFieldBlockT3.java | 26 +- .../itemBlocks/IB_TFFTStorageFieldBlockT4.java | 26 +- .../itemBlocks/IB_TFFTStorageFieldBlockT5.java | 28 +- .../itemBlocks/IB_ThaumiumReinforcedJar.java | 4 +- src/main/java/common/items/ErrorItem.java | 70 +- .../common/items/MetaItem_CraftingComponent.java | 174 ++- .../common/items/MetaItem_ReactorComponent.java | 212 ++- .../common/reactorItem/AbstractReactorItem.java | 5 +- src/main/java/common/reactorItem/ReactorItem.java | 4 +- .../tileentities/GTMTE_FluidMultiStorage.java | 1017 +++++++------- .../GTMTE_LapotronicSuperCapacitor.java | 584 +++++--- .../tileentities/GTMTE_ModularNuclearReactor.java | 494 +++---- .../common/tileentities/GTMTE_SOFuelCellMK1.java | 326 +++-- .../common/tileentities/GTMTE_SOFuelCellMK2.java | 323 +++-- .../common/tileentities/GTMTE_SpaceElevator.java | 112 +- .../common/tileentities/GTMTE_TFFTMultiHatch.java | 48 +- src/main/java/common/tileentities/TE_IchorJar.java | 8 +- .../java/common/tileentities/TE_IchorVoidJar.java | 8 +- .../common/tileentities/TE_ItemProxyCable.java | 257 ++-- .../common/tileentities/TE_ItemProxyEndpoint.java | 330 +++-- .../common/tileentities/TE_ItemProxySource.java | 198 ++- .../common/tileentities/TE_TFFTMultiHatch.java | 200 ++- .../tileentities/TE_ThaumiumReinforcedJar.java | 8 +- .../tileentities/TE_ThaumiumReinforcedVoidJar.java | 8 +- 65 files changed, 4608 insertions(+), 4256 deletions(-) (limited to 'src/main/java/common') diff --git a/src/main/java/common/Blocks.java b/src/main/java/common/Blocks.java index 8c145bd634..2a4bf328f7 100644 --- a/src/main/java/common/Blocks.java +++ b/src/main/java/common/Blocks.java @@ -5,102 +5,101 @@ import kekztech.KekzCore; import net.minecraft.block.Block; public class Blocks { - - public static Block yszUnit; - public static Block gdcUnit; - - public static Block tfftCasing; - public static Block tfftStorageField1; - public static Block tfftStorageField2; - public static Block tfftStorageField3; - public static Block tfftStorageField4; - public static Block tfftStorageField5; - public static Block tfftMultiHatch; - - public static Block reactorChamberOFF; - public static Block reactorChamberON; - public static Block reactorControlRod; - - public static Block itemServerDrive; - public static Block itemServerRackCasing; - public static Block itemServerIOPort; - - public static Block itemProxyCable; - public static Block itemProxySource; - public static Block itemProxyEndpoint; - - public static Block jarThaumiumReinforced; - public static Block jarIchor; - - public static Block lscLapotronicEnergyUnit; - public static Block beamTransmitter; - - public static Block spaceElevatorStructure; - public static Block spaceElevatorCapacitor; - public static Block spaceElevatorTether; - - public static Block largeHexPlate; - - public static void preInit() { - KekzCore.LOGGER.info("Registering blocks..."); - - registerBlocks_SOFC(); - registerBlocks_TFFT(); - //registerBlocks_Nuclear(); - //registerBlocks_ItemProxy(); - registerBlocks_Jars(); - registerBlocks_LSC(); - //registerBlocks_SpaceElevator(); - registerBlocks_Cosmetics(); - - KekzCore.LOGGER.info("Finished registering blocks"); - } - - private static void registerBlocks_SOFC() { - yszUnit = Block_YSZUnit.registerBlock(); - gdcUnit = Block_GDCUnit.registerBlock(); - } - - private static void registerBlocks_TFFT() { - tfftCasing = Block_TFFTCasing.registerBlock(); - tfftStorageField1 = Block_TFFTStorageFieldBlockT1.registerBlock(); - tfftStorageField2 = Block_TFFTStorageFieldBlockT2.registerBlock(); - tfftStorageField3 = Block_TFFTStorageFieldBlockT3.registerBlock(); - tfftStorageField4 = Block_TFFTStorageFieldBlockT4.registerBlock(); - tfftStorageField5 = Block_TFFTStorageFieldBlockT5.registerBlock(); - tfftMultiHatch = Block_TFFTMultiHatch.registerBlock(); - } - - /*private static void registerBlocks_Nuclear() { - reactorChamberOFF = Block_ReactorChamber_OFF.registerBlock(); - reactorChamberON = Block_ReactorChamber_ON.registerBlock(); - reactorControlRod = Block_ControlRod.registerBlock(); - } - - private static void registerBlocks_ItemProxy() { - itemProxyCable = Block_ItemProxyCable.registerBlock(); - itemProxySource = Block_ItemProxySource.registerBlock(); - itemProxyEndpoint = Block_ItemProxyEndpoint.registerBlock(); - }*/ - - private static void registerBlocks_Jars() { - jarThaumiumReinforced = Block_ThaumiumReinforcedJar.registerBlock(); - jarIchor = Block_IchorJar.registerBlock(); - } - - private static void registerBlocks_LSC() { - lscLapotronicEnergyUnit = Block_LapotronicEnergyUnit.registerBlock(); - //beamTransmitter = Block_BeamTransmitter.registerBlock(); - } - - /*private static void registerBlocks_SpaceElevator() { - spaceElevatorStructure = Block_SpaceElevator.registerBlock(); - spaceElevatorCapacitor = Block_SpaceElevatorCapacitor.registerBlock(); - spaceElevatorTether = Block_SpaceElevatorTether.registerBlock(); - }*/ - - private static void registerBlocks_Cosmetics() { - largeHexPlate = Block_LargeHexPlate.registerBlock(); - } + public static Block yszUnit; + public static Block gdcUnit; + + public static Block tfftCasing; + public static Block tfftStorageField1; + public static Block tfftStorageField2; + public static Block tfftStorageField3; + public static Block tfftStorageField4; + public static Block tfftStorageField5; + public static Block tfftMultiHatch; + + public static Block reactorChamberOFF; + public static Block reactorChamberON; + public static Block reactorControlRod; + + public static Block itemServerDrive; + public static Block itemServerRackCasing; + public static Block itemServerIOPort; + + public static Block itemProxyCable; + public static Block itemProxySource; + public static Block itemProxyEndpoint; + + public static Block jarThaumiumReinforced; + public static Block jarIchor; + + public static Block lscLapotronicEnergyUnit; + public static Block beamTransmitter; + + public static Block spaceElevatorStructure; + public static Block spaceElevatorCapacitor; + public static Block spaceElevatorTether; + + public static Block largeHexPlate; + + public static void preInit() { + KekzCore.LOGGER.info("Registering blocks..."); + + registerBlocks_SOFC(); + registerBlocks_TFFT(); + // registerBlocks_Nuclear(); + // registerBlocks_ItemProxy(); + registerBlocks_Jars(); + registerBlocks_LSC(); + // registerBlocks_SpaceElevator(); + registerBlocks_Cosmetics(); + + KekzCore.LOGGER.info("Finished registering blocks"); + } + + private static void registerBlocks_SOFC() { + yszUnit = Block_YSZUnit.registerBlock(); + gdcUnit = Block_GDCUnit.registerBlock(); + } + + private static void registerBlocks_TFFT() { + tfftCasing = Block_TFFTCasing.registerBlock(); + tfftStorageField1 = Block_TFFTStorageFieldBlockT1.registerBlock(); + tfftStorageField2 = Block_TFFTStorageFieldBlockT2.registerBlock(); + tfftStorageField3 = Block_TFFTStorageFieldBlockT3.registerBlock(); + tfftStorageField4 = Block_TFFTStorageFieldBlockT4.registerBlock(); + tfftStorageField5 = Block_TFFTStorageFieldBlockT5.registerBlock(); + tfftMultiHatch = Block_TFFTMultiHatch.registerBlock(); + } + + /*private static void registerBlocks_Nuclear() { + reactorChamberOFF = Block_ReactorChamber_OFF.registerBlock(); + reactorChamberON = Block_ReactorChamber_ON.registerBlock(); + reactorControlRod = Block_ControlRod.registerBlock(); + } + + private static void registerBlocks_ItemProxy() { + itemProxyCable = Block_ItemProxyCable.registerBlock(); + itemProxySource = Block_ItemProxySource.registerBlock(); + itemProxyEndpoint = Block_ItemProxyEndpoint.registerBlock(); + }*/ + + private static void registerBlocks_Jars() { + jarThaumiumReinforced = Block_ThaumiumReinforcedJar.registerBlock(); + jarIchor = Block_IchorJar.registerBlock(); + } + + private static void registerBlocks_LSC() { + lscLapotronicEnergyUnit = Block_LapotronicEnergyUnit.registerBlock(); + // beamTransmitter = Block_BeamTransmitter.registerBlock(); + } + + /*private static void registerBlocks_SpaceElevator() { + spaceElevatorStructure = Block_SpaceElevator.registerBlock(); + spaceElevatorCapacitor = Block_SpaceElevatorCapacitor.registerBlock(); + spaceElevatorTether = Block_SpaceElevatorTether.registerBlock(); + }*/ + + private static void registerBlocks_Cosmetics() { + largeHexPlate = Block_LargeHexPlate.registerBlock(); + } } diff --git a/src/main/java/common/CommonProxy.java b/src/main/java/common/CommonProxy.java index 1e577148fb..bf92f6c697 100644 --- a/src/main/java/common/CommonProxy.java +++ b/src/main/java/common/CommonProxy.java @@ -40,5 +40,4 @@ public class CommonProxy { // Research Researches.postInit(); } - } diff --git a/src/main/java/common/Recipes.java b/src/main/java/common/Recipes.java index eec3020906..558f0b83db 100644 --- a/src/main/java/common/Recipes.java +++ b/src/main/java/common/Recipes.java @@ -14,6 +14,7 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; +import java.util.HashMap; import kekztech.Items; import kekztech.KekzCore; import net.minecraft.item.ItemStack; @@ -27,690 +28,834 @@ import thaumcraft.api.aspects.AspectList; import thaumcraft.api.crafting.InfusionRecipe; import util.Util; -import java.util.HashMap; - public class Recipes { - public static final HashMap infusionRecipes = new HashMap<>(); - static Fluid solderIndalloy = FluidRegistry.getFluid("molten.indalloy140") != null ? FluidRegistry.getFluid("molten.indalloy140") : FluidRegistry.getFluid("molten.solderingalloy"); - static Fluid solderUEV = FluidRegistry.getFluid("molten.mutatedlivingsolder") != null ? FluidRegistry.getFluid("molten.mutatedlivingsolder") : FluidRegistry.getFluid("molten.solderingalloy"); + public static final HashMap infusionRecipes = new HashMap<>(); + static Fluid solderIndalloy = FluidRegistry.getFluid("molten.indalloy140") != null + ? FluidRegistry.getFluid("molten.indalloy140") + : FluidRegistry.getFluid("molten.solderingalloy"); + static Fluid solderUEV = FluidRegistry.getFluid("molten.mutatedlivingsolder") != null + ? FluidRegistry.getFluid("molten.mutatedlivingsolder") + : FluidRegistry.getFluid("molten.solderingalloy"); public static void postInit() { - KekzCore.LOGGER.info("Registering recipes..."); - - registerRecipes_TFFT(); - registerRecipes_SOFC(); - //registerRecipes_Nuclear(); - registerRecipes_Jars(); - registerRecipes_LSC(); - //registerRecipes_SpaceElevator(); - registerRecipes_Cosmetics(); - - KekzCore.LOGGER.info("Finished registering recipes"); - } - - private static void registerRecipes_TFFT() { - - // Controller - final Object[] tfft_recipe = { - "HFH", "PVP", "CFC", - 'H', OrePrefixes.pipeMedium.get(Materials.StainlessSteel), - 'F', ItemList.Field_Generator_MV.get(1L), - 'P', ItemList.Electric_Pump_HV.get(1L), - 'V', OrePrefixes.rotor.get(Materials.VibrantAlloy), - 'C', OrePrefixes.circuit.get(Materials.Data) - }; - GT_ModHandler.addCraftingRecipe(TileEntities.fms.getStackForm(1), tfft_recipe); - - // Blocks - final ItemStack[] tfftcasing = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.DarkSteel, 3), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderPearl, 3), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1), - }; - GT_Values.RA.addAssemblerRecipe( - tfftcasing, - FluidRegistry.getFluidStack("molten.polytetrafluoroethylene", 144), - new ItemStack(Blocks.tfftCasing, 1), - 200, 256); - final ItemStack[] tfftstoragefield1 = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.PulsatingIron, 1), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Steel, 1), - ItemList.Electric_Pump_LV.get(1L) - }; - GT_Values.RA.addAssemblerRecipe( - tfftstoragefield1, - FluidRegistry.getFluidStack("molten.glass", 144), - new ItemStack(Blocks.tfftStorageField1, 1), - 200, 256); - final ItemStack[] tfftstoragefield2 = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 2), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.PulsatingIron, 4), - GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel, 1), - ItemList.Electric_Pump_MV.get(1L) - }; - GT_Values.RA.addAssemblerRecipe( - tfftstoragefield2, - FluidRegistry.getFluidStack("molten.plastic", 576), - new ItemStack(Blocks.tfftStorageField2, 1), - 200, 480); - final ItemStack[] tfftstoragefield3 = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 2), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VibrantAlloy, 2), - GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Titanium, 1), - ItemList.Field_Generator_MV.get(1L), - ItemList.Electric_Pump_HV.get(2L) - }; - GT_Values.RA.addAssemblerRecipe( - tfftstoragefield3, - FluidRegistry.getFluidStack("molten.epoxid", 576), - new ItemStack(Blocks.tfftStorageField3, 1), - 300, 1920); - final ItemStack[] tfftstoragefield4 = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 4), - GT_OreDictUnificator.get(OrePrefixes.plateTriple, Materials.NiobiumTitanium, 1), - GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.TungstenSteel, 1), - ItemList.Field_Generator_HV.get(1L), - ItemList.Electric_Pump_EV.get(1L) - }; - GT_Values.RA.addAssemblerRecipe( - tfftstoragefield4, - FluidRegistry.getFluidStack("molten.epoxid", 1152), - new ItemStack(Blocks.tfftStorageField4, 1), - 400, 4098); - final ItemStack[] tfftstoragefield5 = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Ultimate, 4), - GT_OreDictUnificator.get(OrePrefixes.plateTriple, Materials.HSSS, 1), - GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Enderium, 1), - ItemList.Field_Generator_EV.get(1L), - ItemList.Electric_Pump_IV.get(1L) - }; - GT_Values.RA.addAssemblerRecipe( - tfftstoragefield5, - FluidRegistry.getFluidStack("molten.epoxid", 1152), - new ItemStack(Blocks.tfftStorageField5, 1), - 400, 6147); - // Multi Hatch - final Object[] multi_hatch_HV = { - "PRP", "UFU", "PRP", - 'P', GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.StainlessSteel, 1), - 'R', GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), - 'U', ItemList.Electric_Pump_HV.get(1L), - 'F', ItemList.Field_Generator_LV.get(1L) - }; - GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.tfftMultiHatch), multi_hatch_HV); - final Object[] multi_hatch_IV = { - "PRP", "UFU", "PRP", - 'P', GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.TungstenSteel, 1), - 'R', GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.TungstenSteel, 1), - 'U', ItemList.Electric_Pump_IV.get(1L), - 'F', ItemList.Field_Generator_HV.get(1L) - }; - GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.tfftMultiHatch), multi_hatch_IV); - final Object[] multi_hatch_ZPM = { - "PRP", "UFU", "PRP", - 'P', GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NaquadahAlloy, 1), - 'R', GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.NaquadahAlloy, 1), - 'U', ItemList.Electric_Pump_ZPM.get(1L), - 'F', ItemList.Field_Generator_IV.get(1L) - }; - GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.tfftMultiHatch), multi_hatch_ZPM); - - // Conversion recipe from deprecated hatch to new one (old hatch is equal to new IV hatch) - GT_ModHandler.addShapelessCraftingRecipe(TileEntities.mhIV.getStackForm(1), - new ItemStack[]{new ItemStack(Blocks.tfftMultiHatch, 1)}); - } - - private static void registerRecipes_SOFC() { - - final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); - - // Controller - final Object[] mk1_recipe = { - "CCC", "PHP", "FBL", - 'C', OrePrefixes.circuit.get(Materials.Advanced), - 'P', ItemList.Electric_Pump_HV.get(1L), - 'H', ItemList.Hull_HV.get(1L), - 'F', GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.StainlessSteel, 1), - 'B', GT_OreDictUnificator.get(OrePrefixes.cableGt02, Materials.Gold, 1), - 'L', GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 1) - }; - GT_ModHandler.addCraftingRecipe(TileEntities.sofc1.getStackForm(1), mk1_recipe); - final Object[] mk2_recipe = { - "CCC", "PHP", "FBL", - 'C', OrePrefixes.circuit.get(Materials.Master), - 'P', ItemList.Electric_Pump_IV.get(1L), - 'H', ItemList.Hull_IV.get(1L), - 'F', GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Ultimate, 1), - 'B', Util.getStackofAmountFromOreDict("wireGt04SuperconductorEV", 1), - 'L', GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Ultimate, 1) - }; - GT_ModHandler.addCraftingRecipe(TileEntities.sofc2.getStackForm(1), mk2_recipe); - - // Blocks - final ItemStack[] yszUnit = { - GT_Utility.getIntegratedCircuit(6), - craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 4), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Yttrium, 1), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), - ItemList.Electric_Motor_HV.get(1L), - }; - GT_Values.RA.addAssemblerRecipe( - yszUnit, - Materials.Hydrogen.getGas(4000), - new ItemStack(Blocks.yszUnit, 1), - 1200, 480); - final ItemStack[] gdcUnit = { - GT_Utility.getIntegratedCircuit(6), - craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 8), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Desh, new ItemStack(ErrorItem.getInstance(), 1), 1), - ItemList.Electric_Motor_IV.get(1L), - }; - GT_Values.RA.addAssemblerRecipe( - gdcUnit, - Materials.Hydrogen.getGas(16000), - new ItemStack(Blocks.gdcUnit, 1), - 2400, 1920); - - // Items - GT_Values.RA.addAlloySmelterRecipe( - craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), Loader.isModLoaded("bartworks") ? 3 : 10), - ItemList.Shape_Mold_Plate.get(0), - craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 1), - 400, 480); - GT_Values.RA.addFormingPressRecipe( - craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10), - ItemList.Shape_Mold_Plate.get(0), - craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 1), - 800, 480); - - if (!Loader.isModLoaded("bartworks")) { - GT_Values.RA.addChemicalRecipe( - Materials.Yttrium.getDust(1), GT_Utility.getIntegratedCircuit(6), Materials.Oxygen.getGas(3000), - null, craftingItem.getStackOfAmountFromDamage(Items.YttriaDust.getMetaID(), 1), null, - 400, 30); - GT_Values.RA.addChemicalRecipe( - Util.getStackofAmountFromOreDict("dustZirconium", 1), GT_Utility.getIntegratedCircuit(6), Materials.Oxygen.getGas(2000), - null, craftingItem.getStackOfAmountFromDamage(Items.ZirconiaDust.getMetaID(), 1), null, - 400, 30); - } - - GT_Values.RA.addChemicalRecipe( - Materials.Cerium.getDust(2), GT_Utility.getIntegratedCircuit(6), Materials.Oxygen.getGas(3000), - null, craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 2), null, - 400, 30); - GT_Values.RA.addMixerRecipe( - Items.YttriaDust.getOreDictedItemStack(1), - Items.ZirconiaDust.getOreDictedItemStack(5), - GT_Utility.getIntegratedCircuit(6), null, null, null, - craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 6), - 400, 96); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1), - craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 9), - GT_Utility.getIntegratedCircuit(6), null, null, null, - craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10), - 400, 1920); - } - - /*private static void registerRecipes_Nuclear() { - - final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); - - // Controller - - // Blocks - final ItemStack[] controlrod = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Lead, 1), - GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 4), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64) - }; - GT_Values.RA.addAssemblerRecipe( - controlrod, - null, - new ItemStack(Blocks.reactorControlRod, 1), - 800, 480); - final ItemStack[] reactorchamber = { - GT_Utility.getIntegratedCircuit(6), - GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Lead, 1), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Lead, 9), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.TungstenSteel, 18), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Steel, 2), - }; - GT_Values.RA.addAssemblerRecipe( - reactorchamber, - FluidRegistry.getFluidStack("wet.concrete", 144), - new ItemStack(Blocks.reactorChamberOFF, 1), - 1600, 480); - - // Items - GT_Values.RA.addMixerRecipe(Materials.Boron.getDust(1), Materials.Arsenic.getDust(1), GT_Utility.getIntegratedCircuit(6), null, - null, null, craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideDust.getMetaID(), 2), - 100, 1920); - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(2), - Materials.CarbonDioxide.getCells(1), - null, - null, - craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1), - Util.getStackofAmountFromOreDict("cellEmpty", 3), - 400, 30); - GT_Values.RA.addChemicalRecipe( - craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1), - Materials.Diamond.getDust(16), - Materials.CarbonDioxide.getGas(1000), - null, - craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 1), - null, 1200, 480); - - GT_Values.RA.addAutoclaveRecipe( - craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 4), - Materials.CarbonDioxide.getGas(16000), - craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 1), 10000, 2400, 7680); - GT_Values.RA.addAutoclaveRecipe( - craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideDust.getMetaID(), 4), - Materials.Nitrogen.getGas(4000), - craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(), 1), 10000, 2400, 1920); - - GT_Values.RA.addLatheRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.AnnealedCopper, 1), - craftingItem.getStackFromDamage(Items.CopperHeatPipe.getMetaID()), - null, 120, 120); - GT_Values.RA.addLatheRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Silver, 1), - craftingItem.getStackFromDamage(Items.SilverHeatPipe.getMetaID()), - null, 120, 480); - GT_Values.RA.addLatheRecipe( - craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(), 4), - craftingItem.getStackFromDamage(Items.BoronArsenideHeatPipe.getMetaID()), - null, 1200, 1920); - GT_Values.RA.addLatheRecipe( - craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 4), - craftingItem.getStackFromDamage(Items.DiamondHeatPipe.getMetaID()), - null, 1200, 7680); - }*/ - - private static void registerRecipes_Jars() { - - // Thaumium Reinforced Jar - final ItemStack[] recipe_jarthaumiumreinforced = { - GameRegistry.makeItemStack("Thaumcraft:ItemResource", 15, 1, null), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Titanium, 1), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - }; - final AspectList aspects_jarthaumiumreinforced = new AspectList() - .add(Aspect.ARMOR, 64) - .add(Aspect.ORDER, 32) - .add(Aspect.WATER, 32) - .add(Aspect.GREED, 16) - .add(Aspect.VOID, 16) - .add(Aspect.AIR, 8); - infusionRecipes.put("THAUMIUMREINFORCEDJAR", - ThaumcraftApi.addInfusionCraftingRecipe("THAUMIUMREINFORCEDJAR", new ItemStack(Blocks.jarThaumiumReinforced, 1, 0), - 5, aspects_jarthaumiumreinforced, ItemApi.getBlock("blockJar", 0), recipe_jarthaumiumreinforced)); - // Thaumium Reinforced Void Jar - final ItemStack[] recipe_voidjarupgrade = { - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Obsidian, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderEye, 1), - ItemApi.getItem("itemNugget", 5) - }; - final AspectList aspects_voidjarupgrade = new AspectList() - .add(Aspect.VOID, 14) - .add(Aspect.MAGIC, 14) - .add(Aspect.ENTROPY, 14) - .add(Aspect.WATER, 14); - infusionRecipes.put("THAUMIUMREINFORCEDVOIDJAR", - ThaumcraftApi.addInfusionCraftingRecipe("THAUMIUMREINFORCEDJAR", new ItemStack(Blocks.jarThaumiumReinforced, 1, 3), - 2, aspects_voidjarupgrade, new ItemStack(Blocks.jarThaumiumReinforced, 1, 0), recipe_voidjarupgrade)); - - final ItemStack[] recipe_jarichor = { - GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1, 0), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Diamond, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), - new ItemStack(net.minecraft.init.Blocks.glass_pane), - }; - final AspectList aspects_jarichor = new AspectList() - .add(Aspect.ARMOR, 256) - .add(Aspect.ELDRITCH, 128) - .add(Aspect.ORDER, 128) - .add(Aspect.WATER, 128) - .add(Aspect.GREED, 64) - .add(Aspect.VOID, 64) - .add(Aspect.AIR, 32); - infusionRecipes.put("ICHORJAR", - ThaumcraftApi.addInfusionCraftingRecipe("ICHORJAR", new ItemStack(Blocks.jarIchor, 1, 0), - 15, aspects_jarichor, ItemApi.getBlock("blockJar", 0), recipe_jarichor)); - // Ichor Void Jar - infusionRecipes.put("ICHORVOIDJAR", - ThaumcraftApi.addInfusionCraftingRecipe("ICHORJAR", new ItemStack(Blocks.jarIchor, 1, 3), - 5, aspects_voidjarupgrade, new ItemStack(Blocks.jarIchor, 1, 0), recipe_voidjarupgrade)); - - } - - private static void registerRecipes_LSC(){ - - // Controller - final Object[] lsc_recipe = { - "LPL", "CBC", "LPL", - 'L', ItemList.IC2_LapotronCrystal.getWithCharge(1L, 10000000), - 'P', ItemList.Circuit_Chip_PIC.get(1L), - 'C', OrePrefixes.circuit.get(Materials.Master), - 'B', new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), - }; - GT_ModHandler.addCraftingRecipe(TileEntities.lsc.getStackForm(1), lsc_recipe); - - // Blocks - final Object[] lcBase_recipe = { - "WBW", "RLR", "WBW", - 'W', OrePrefixes.plate.get(Materials.Tantalum), - 'B', OrePrefixes.frameGt.get(Materials.TungstenSteel), - 'R', OrePrefixes.stickLong.get(Materials.TungstenSteel), - 'L', OrePrefixes.block.get(Materials.Lapis) - }; - GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), lcBase_recipe); - GT_Values.RA.addAssemblerRecipe(new ItemStack[] { - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tantalum, 4), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 2), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 2), - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lapis, 1) - }, null, new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), 100, 480); - - // Empty Capacitor - final Object[] lcEmpty_recipe = { - "SLS", "L L", "SLS", - 'S', OrePrefixes.screw.get(Materials.Lapis), - 'L', OrePrefixes.plate.get(Materials.Lapis) - }; - GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), lcEmpty_recipe); - - // EV Capacitor - final Object[] lcEV_recipe = { - "SLS", "LCL", "SLS", - 'S', OrePrefixes.screw.get(Materials.Lapis), - 'L', OrePrefixes.plate.get(Materials.Lapis), - 'C', GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W) - }; - GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), lcEV_recipe); - - // EV Capacitor alt recipe - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), - GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W), - GT_Utility.getIntegratedCircuit(7) - }, - null, - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), - 200, BW_Util.getMachineVoltageFromTier(3) - ); - - // IV Capacitor - final Object[] lcIV_recipe = { - "SLS", "LOL", "SLS", - 'S', OrePrefixes.screw.get(Materials.Lapis), - 'L', OrePrefixes.plate.get(Materials.Lapis), - 'O', ItemList.Energy_LapotronicOrb.get(1L) - }; - GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), lcIV_recipe); - - // IV Capacitor alt recipe - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), - ItemList.Energy_LapotronicOrb.get(1L), - GT_Utility.getIntegratedCircuit(1) - }, - null, - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), - 400, BW_Util.getMachineVoltageFromTier(4) - ); - - // LuV Capacitor - GT_Values.RA.addAssemblylineRecipe( - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), 288000, - new Object[] { - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24), - ItemList.Circuit_Board_Elite.get(1), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.NaquadahAlloy, 64), - new Object[]{OrePrefixes.circuit.get(Materials.Master), 4}, - ItemList.Circuit_Parts_Crystal_Chip_Master.get(36), - ItemList.Circuit_Parts_Crystal_Chip_Master.get(36), - ItemList.Circuit_Chip_HPIC.get(64), - ItemList.Circuit_Parts_DiodeASMD.get(8), - ItemList.Circuit_Parts_CapacitorASMD.get(8), - ItemList.Circuit_Parts_ResistorASMD.get(8), - ItemList.Circuit_Parts_TransistorASMD.get(8), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 64) - }, - new FluidStack[] { - new FluidStack(solderIndalloy, 720) - }, - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2), 1000, 80000 - ); + KekzCore.LOGGER.info("Registering recipes..."); + + registerRecipes_TFFT(); + registerRecipes_SOFC(); + // registerRecipes_Nuclear(); + registerRecipes_Jars(); + registerRecipes_LSC(); + // registerRecipes_SpaceElevator(); + registerRecipes_Cosmetics(); + + KekzCore.LOGGER.info("Finished registering recipes"); + } + + private static void registerRecipes_TFFT() { + + // Controller + final Object[] tfft_recipe = { + "HFH", + "PVP", + "CFC", + 'H', + OrePrefixes.pipeMedium.get(Materials.StainlessSteel), + 'F', + ItemList.Field_Generator_MV.get(1L), + 'P', + ItemList.Electric_Pump_HV.get(1L), + 'V', + OrePrefixes.rotor.get(Materials.VibrantAlloy), + 'C', + OrePrefixes.circuit.get(Materials.Data) + }; + GT_ModHandler.addCraftingRecipe(TileEntities.fms.getStackForm(1), tfft_recipe); + + // Blocks + final ItemStack[] tfftcasing = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.DarkSteel, 3), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderPearl, 3), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1), + }; + GT_Values.RA.addAssemblerRecipe( + tfftcasing, + FluidRegistry.getFluidStack("molten.polytetrafluoroethylene", 144), + new ItemStack(Blocks.tfftCasing, 1), + 200, + 256); + final ItemStack[] tfftstoragefield1 = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.PulsatingIron, 1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Steel, 1), + ItemList.Electric_Pump_LV.get(1L) + }; + GT_Values.RA.addAssemblerRecipe( + tfftstoragefield1, + FluidRegistry.getFluidStack("molten.glass", 144), + new ItemStack(Blocks.tfftStorageField1, 1), + 200, + 256); + final ItemStack[] tfftstoragefield2 = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.PulsatingIron, 4), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel, 1), + ItemList.Electric_Pump_MV.get(1L) + }; + GT_Values.RA.addAssemblerRecipe( + tfftstoragefield2, + FluidRegistry.getFluidStack("molten.plastic", 576), + new ItemStack(Blocks.tfftStorageField2, 1), + 200, + 480); + final ItemStack[] tfftstoragefield3 = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VibrantAlloy, 2), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Titanium, 1), + ItemList.Field_Generator_MV.get(1L), + ItemList.Electric_Pump_HV.get(2L) + }; + GT_Values.RA.addAssemblerRecipe( + tfftstoragefield3, + FluidRegistry.getFluidStack("molten.epoxid", 576), + new ItemStack(Blocks.tfftStorageField3, 1), + 300, + 1920); + final ItemStack[] tfftstoragefield4 = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 4), + GT_OreDictUnificator.get(OrePrefixes.plateTriple, Materials.NiobiumTitanium, 1), + GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.TungstenSteel, 1), + ItemList.Field_Generator_HV.get(1L), + ItemList.Electric_Pump_EV.get(1L) + }; + GT_Values.RA.addAssemblerRecipe( + tfftstoragefield4, + FluidRegistry.getFluidStack("molten.epoxid", 1152), + new ItemStack(Blocks.tfftStorageField4, 1), + 400, + 4098); + final ItemStack[] tfftstoragefield5 = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Ultimate, 4), + GT_OreDictUnificator.get(OrePrefixes.plateTriple, Materials.HSSS, 1), + GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Enderium, 1), + ItemList.Field_Generator_EV.get(1L), + ItemList.Electric_Pump_IV.get(1L) + }; + GT_Values.RA.addAssemblerRecipe( + tfftstoragefield5, + FluidRegistry.getFluidStack("molten.epoxid", 1152), + new ItemStack(Blocks.tfftStorageField5, 1), + 400, + 6147); + // Multi Hatch + final Object[] multi_hatch_HV = { + "PRP", + "UFU", + "PRP", + 'P', + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.StainlessSteel, 1), + 'R', + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), + 'U', + ItemList.Electric_Pump_HV.get(1L), + 'F', + ItemList.Field_Generator_LV.get(1L) + }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.tfftMultiHatch), multi_hatch_HV); + final Object[] multi_hatch_IV = { + "PRP", + "UFU", + "PRP", + 'P', + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.TungstenSteel, 1), + 'R', + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.TungstenSteel, 1), + 'U', + ItemList.Electric_Pump_IV.get(1L), + 'F', + ItemList.Field_Generator_HV.get(1L) + }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.tfftMultiHatch), multi_hatch_IV); + final Object[] multi_hatch_ZPM = { + "PRP", + "UFU", + "PRP", + 'P', + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NaquadahAlloy, 1), + 'R', + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.NaquadahAlloy, 1), + 'U', + ItemList.Electric_Pump_ZPM.get(1L), + 'F', + ItemList.Field_Generator_IV.get(1L) + }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.tfftMultiHatch), multi_hatch_ZPM); + + // Conversion recipe from deprecated hatch to new one (old hatch is equal to new IV hatch) + GT_ModHandler.addShapelessCraftingRecipe( + TileEntities.mhIV.getStackForm(1), new ItemStack[] {new ItemStack(Blocks.tfftMultiHatch, 1)}); + } + + private static void registerRecipes_SOFC() { + + final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); + + // Controller + final Object[] mk1_recipe = { + "CCC", + "PHP", + "FBL", + 'C', + OrePrefixes.circuit.get(Materials.Advanced), + 'P', + ItemList.Electric_Pump_HV.get(1L), + 'H', + ItemList.Hull_HV.get(1L), + 'F', + GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.StainlessSteel, 1), + 'B', + GT_OreDictUnificator.get(OrePrefixes.cableGt02, Materials.Gold, 1), + 'L', + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 1) + }; + GT_ModHandler.addCraftingRecipe(TileEntities.sofc1.getStackForm(1), mk1_recipe); + final Object[] mk2_recipe = { + "CCC", + "PHP", + "FBL", + 'C', + OrePrefixes.circuit.get(Materials.Master), + 'P', + ItemList.Electric_Pump_IV.get(1L), + 'H', + ItemList.Hull_IV.get(1L), + 'F', + GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Ultimate, 1), + 'B', + Util.getStackofAmountFromOreDict("wireGt04SuperconductorEV", 1), + 'L', + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Ultimate, 1) + }; + GT_ModHandler.addCraftingRecipe(TileEntities.sofc2.getStackForm(1), mk2_recipe); + + // Blocks + final ItemStack[] yszUnit = { + GT_Utility.getIntegratedCircuit(6), + craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 4), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Yttrium, 1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), + ItemList.Electric_Motor_HV.get(1L), + }; + GT_Values.RA.addAssemblerRecipe( + yszUnit, Materials.Hydrogen.getGas(4000), new ItemStack(Blocks.yszUnit, 1), 1200, 480); + final ItemStack[] gdcUnit = { + GT_Utility.getIntegratedCircuit(6), + craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 8), + GT_OreDictUnificator.get( + OrePrefixes.frameGt, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Desh, new ItemStack(ErrorItem.getInstance(), 1), 1), + ItemList.Electric_Motor_IV.get(1L), + }; + GT_Values.RA.addAssemblerRecipe( + gdcUnit, Materials.Hydrogen.getGas(16000), new ItemStack(Blocks.gdcUnit, 1), 2400, 1920); + + // Items + GT_Values.RA.addAlloySmelterRecipe( + craftingItem.getStackOfAmountFromDamage( + Items.YSZCeramicDust.getMetaID(), Loader.isModLoaded("bartworks") ? 3 : 10), + ItemList.Shape_Mold_Plate.get(0), + craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 1), + 400, + 480); + GT_Values.RA.addFormingPressRecipe( + craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10), + ItemList.Shape_Mold_Plate.get(0), + craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 1), + 800, + 480); + + if (!Loader.isModLoaded("bartworks")) { + GT_Values.RA.addChemicalRecipe( + Materials.Yttrium.getDust(1), + GT_Utility.getIntegratedCircuit(6), + Materials.Oxygen.getGas(3000), + null, + craftingItem.getStackOfAmountFromDamage(Items.YttriaDust.getMetaID(), 1), + null, + 400, + 30); + GT_Values.RA.addChemicalRecipe( + Util.getStackofAmountFromOreDict("dustZirconium", 1), + GT_Utility.getIntegratedCircuit(6), + Materials.Oxygen.getGas(2000), + null, + craftingItem.getStackOfAmountFromDamage(Items.ZirconiaDust.getMetaID(), 1), + null, + 400, + 30); + } + + GT_Values.RA.addChemicalRecipe( + Materials.Cerium.getDust(2), + GT_Utility.getIntegratedCircuit(6), + Materials.Oxygen.getGas(3000), + null, + craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 2), + null, + 400, + 30); + GT_Values.RA.addMixerRecipe( + Items.YttriaDust.getOreDictedItemStack(1), + Items.ZirconiaDust.getOreDictedItemStack(5), + GT_Utility.getIntegratedCircuit(6), + null, + null, + null, + craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 6), + 400, + 96); + GT_Values.RA.addMixerRecipe( + GT_OreDictUnificator.get( + OrePrefixes.dust, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1), + craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 9), + GT_Utility.getIntegratedCircuit(6), + null, + null, + null, + craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10), + 400, + 1920); + } + + /*private static void registerRecipes_Nuclear() { + + final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); + + // Controller + + // Blocks + final ItemStack[] controlrod = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Lead, 1), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64) + }; + GT_Values.RA.addAssemblerRecipe( + controlrod, + null, + new ItemStack(Blocks.reactorControlRod, 1), + 800, 480); + final ItemStack[] reactorchamber = { + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Lead, 1), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Lead, 9), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.TungstenSteel, 18), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Steel, 2), + }; + GT_Values.RA.addAssemblerRecipe( + reactorchamber, + FluidRegistry.getFluidStack("wet.concrete", 144), + new ItemStack(Blocks.reactorChamberOFF, 1), + 1600, 480); + + // Items + GT_Values.RA.addMixerRecipe(Materials.Boron.getDust(1), Materials.Arsenic.getDust(1), GT_Utility.getIntegratedCircuit(6), null, + null, null, craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideDust.getMetaID(), 2), + 100, 1920); + GT_Values.RA.addChemicalRecipe( + Materials.Ammonia.getCells(2), + Materials.CarbonDioxide.getCells(1), + null, + null, + craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1), + Util.getStackofAmountFromOreDict("cellEmpty", 3), + 400, 30); + GT_Values.RA.addChemicalRecipe( + craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1), + Materials.Diamond.getDust(16), + Materials.CarbonDioxide.getGas(1000), + null, + craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 1), + null, 1200, 480); + + GT_Values.RA.addAutoclaveRecipe( + craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 4), + Materials.CarbonDioxide.getGas(16000), + craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 1), 10000, 2400, 7680); + GT_Values.RA.addAutoclaveRecipe( + craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideDust.getMetaID(), 4), + Materials.Nitrogen.getGas(4000), + craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(), 1), 10000, 2400, 1920); + + GT_Values.RA.addLatheRecipe( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.AnnealedCopper, 1), + craftingItem.getStackFromDamage(Items.CopperHeatPipe.getMetaID()), + null, 120, 120); + GT_Values.RA.addLatheRecipe( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Silver, 1), + craftingItem.getStackFromDamage(Items.SilverHeatPipe.getMetaID()), + null, 120, 480); + GT_Values.RA.addLatheRecipe( + craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(), 4), + craftingItem.getStackFromDamage(Items.BoronArsenideHeatPipe.getMetaID()), + null, 1200, 1920); + GT_Values.RA.addLatheRecipe( + craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 4), + craftingItem.getStackFromDamage(Items.DiamondHeatPipe.getMetaID()), + null, 1200, 7680); + }*/ + + private static void registerRecipes_Jars() { + + // Thaumium Reinforced Jar + final ItemStack[] recipe_jarthaumiumreinforced = { + GameRegistry.makeItemStack("Thaumcraft:ItemResource", 15, 1, null), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Titanium, 1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + }; + final AspectList aspects_jarthaumiumreinforced = new AspectList() + .add(Aspect.ARMOR, 64) + .add(Aspect.ORDER, 32) + .add(Aspect.WATER, 32) + .add(Aspect.GREED, 16) + .add(Aspect.VOID, 16) + .add(Aspect.AIR, 8); + infusionRecipes.put( + "THAUMIUMREINFORCEDJAR", + ThaumcraftApi.addInfusionCraftingRecipe( + "THAUMIUMREINFORCEDJAR", + new ItemStack(Blocks.jarThaumiumReinforced, 1, 0), + 5, + aspects_jarthaumiumreinforced, + ItemApi.getBlock("blockJar", 0), + recipe_jarthaumiumreinforced)); + // Thaumium Reinforced Void Jar + final ItemStack[] recipe_voidjarupgrade = { + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Obsidian, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderEye, 1), + ItemApi.getItem("itemNugget", 5) + }; + final AspectList aspects_voidjarupgrade = new AspectList() + .add(Aspect.VOID, 14) + .add(Aspect.MAGIC, 14) + .add(Aspect.ENTROPY, 14) + .add(Aspect.WATER, 14); + infusionRecipes.put( + "THAUMIUMREINFORCEDVOIDJAR", + ThaumcraftApi.addInfusionCraftingRecipe( + "THAUMIUMREINFORCEDJAR", + new ItemStack(Blocks.jarThaumiumReinforced, 1, 3), + 2, + aspects_voidjarupgrade, + new ItemStack(Blocks.jarThaumiumReinforced, 1, 0), + recipe_voidjarupgrade)); + + final ItemStack[] recipe_jarichor = { + GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1, 0), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Diamond, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1), + new ItemStack(net.minecraft.init.Blocks.glass_pane), + }; + final AspectList aspects_jarichor = new AspectList() + .add(Aspect.ARMOR, 256) + .add(Aspect.ELDRITCH, 128) + .add(Aspect.ORDER, 128) + .add(Aspect.WATER, 128) + .add(Aspect.GREED, 64) + .add(Aspect.VOID, 64) + .add(Aspect.AIR, 32); + infusionRecipes.put( + "ICHORJAR", + ThaumcraftApi.addInfusionCraftingRecipe( + "ICHORJAR", + new ItemStack(Blocks.jarIchor, 1, 0), + 15, + aspects_jarichor, + ItemApi.getBlock("blockJar", 0), + recipe_jarichor)); + // Ichor Void Jar + infusionRecipes.put( + "ICHORVOIDJAR", + ThaumcraftApi.addInfusionCraftingRecipe( + "ICHORJAR", + new ItemStack(Blocks.jarIchor, 1, 3), + 5, + aspects_voidjarupgrade, + new ItemStack(Blocks.jarIchor, 1, 0), + recipe_voidjarupgrade)); + } + + private static void registerRecipes_LSC() { + + // Controller + final Object[] lsc_recipe = { + "LPL", + "CBC", + "LPL", + 'L', + ItemList.IC2_LapotronCrystal.getWithCharge(1L, 10000000), + 'P', + ItemList.Circuit_Chip_PIC.get(1L), + 'C', + OrePrefixes.circuit.get(Materials.Master), + 'B', + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), + }; + GT_ModHandler.addCraftingRecipe(TileEntities.lsc.getStackForm(1), lsc_recipe); + + // Blocks + final Object[] lcBase_recipe = { + "WBW", + "RLR", + "WBW", + 'W', + OrePrefixes.plate.get(Materials.Tantalum), + 'B', + OrePrefixes.frameGt.get(Materials.TungstenSteel), + 'R', + OrePrefixes.stickLong.get(Materials.TungstenSteel), + 'L', + OrePrefixes.block.get(Materials.Lapis) + }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), lcBase_recipe); + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tantalum, 4), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 2), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 2), + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lapis, 1) + }, + null, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), + 100, + 480); + + // Empty Capacitor + final Object[] lcEmpty_recipe = { + "SLS", + "L L", + "SLS", + 'S', + OrePrefixes.screw.get(Materials.Lapis), + 'L', + OrePrefixes.plate.get(Materials.Lapis) + }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), lcEmpty_recipe); + + // EV Capacitor + final Object[] lcEV_recipe = { + "SLS", + "LCL", + "SLS", + 'S', + OrePrefixes.screw.get(Materials.Lapis), + 'L', + OrePrefixes.plate.get(Materials.Lapis), + 'C', + GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W) + }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), lcEV_recipe); + + // EV Capacitor alt recipe + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), + GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W), + GT_Utility.getIntegratedCircuit(7) + }, + null, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), + 200, + BW_Util.getMachineVoltageFromTier(3)); + + // IV Capacitor + final Object[] lcIV_recipe = { + "SLS", + "LOL", + "SLS", + 'S', + OrePrefixes.screw.get(Materials.Lapis), + 'L', + OrePrefixes.plate.get(Materials.Lapis), + 'O', + ItemList.Energy_LapotronicOrb.get(1L) + }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), lcIV_recipe); + + // IV Capacitor alt recipe + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), + ItemList.Energy_LapotronicOrb.get(1L), + GT_Utility.getIntegratedCircuit(1) + }, + null, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), + 400, + BW_Util.getMachineVoltageFromTier(4)); + + // LuV Capacitor + GT_Values.RA.addAssemblylineRecipe( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), + 288000, + new Object[] { + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24), + ItemList.Circuit_Board_Elite.get(1), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.NaquadahAlloy, 64), + new Object[] {OrePrefixes.circuit.get(Materials.Master), 4}, + ItemList.Circuit_Parts_Crystal_Chip_Master.get(36), + ItemList.Circuit_Parts_Crystal_Chip_Master.get(36), + ItemList.Circuit_Chip_HPIC.get(64), + ItemList.Circuit_Parts_DiodeASMD.get(8), + ItemList.Circuit_Parts_CapacitorASMD.get(8), + ItemList.Circuit_Parts_ResistorASMD.get(8), + ItemList.Circuit_Parts_TransistorASMD.get(8), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 64) + }, + new FluidStack[] {new FluidStack(solderIndalloy, 720)}, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2), + 1000, + 80000); // LuV Capacitor alt recipe GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - ItemList.Energy_LapotronicOrb2.get(1), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24), - GT_Utility.getIntegratedCircuit(6) - }, - null, - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2), - 800, BW_Util.getMachineVoltageFromTier(5) - ); + new ItemStack[] { + ItemList.Energy_LapotronicOrb2.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24), + GT_Utility.getIntegratedCircuit(6) + }, + null, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2), + 800, + BW_Util.getMachineVoltageFromTier(5)); LuVTierEnhancer.addToBlackListForOsmiridiumReplacement(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2)); - // ZPM Capacitor - GT_Values.RA.addAssemblylineRecipe( - new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2), 288000, - new Object[] { - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 4), - GT_OreDictUnificator.get(OrePre