From ace0af4480393d9a870d5a6a364dc9402924ec55 Mon Sep 17 00:00:00 2001 From: boubou19 Date: Wed, 6 Sep 2023 21:14:27 +0200 Subject: [PATCH] migrate recipes to RA2 (#349) * deprecate getMachineVoltageFromTier * migrate assembler recipes * migrate mixer recipes * migrate implosion compressor recipes * migrate forming press recipes * forgot an assembling recipe * migrate blast furnace recipes * migrate universal chemical reactor recipes * migrate fluid extractor recipes * migrate bending machine recipes * migrate assembling line recipes * migrate autoclave recipes * migrate chemical bath recipes * get rid of BW_Util.getMachineVoltageFromTier(3) * get rid of BW_Util.getMachineVoltageFromTier(1) * get rid of BW_Util.getMachineVoltageFromTier(2) * get rid of BW_Util.getMachineVoltageFromTier(4) * get rid of BW_Util.getMachineVoltageFromTier(5) * get rid of BW_Util.getMachineVoltageFromTier(6) * get rid of BW_Util.getMachineVoltageFromTier(7) * get rid of BW_Util.getMachineVoltageFromTier(8) * get rid of BW_Util.getMachineVoltageFromTier(9) * get rid of BW_Util.getMachineVoltageFromTier(10) * get rid of BW_Util.getMachineVoltageFromTier(11) * get rid of BW_Util.getMachineVoltageFromTier(12) * migrate fluid solidifier recipes * migrate forge hammer recipes * migrate pulveriser recipes (1/3) * migrate electrolyser recipes * migrate electromagnetic separator recipes * migrate extruder recipes * migrate packager recipes * migrate primitive blast furnace recipes * migrate vacuum freezer recipes * migrate wiremill recipes * migrate cutting machine recipes * migrate lathe recipes * migrate laser engraver recipes * migrate fluid canner recipes * migrate pulverizer recipes (2/3) * migrate extractor recipes * migrate arc furnace recipes * migrate sifter recipes * migrate compressor recipes * fix duration * migrate fluid extractor recipes * migrate centrifuge recipes * migrate autoclave recipes * spotless apply * resolved build issues related to output chances of recycling "aHTGR_Materials" * resolved build issues related to output chances of recycling "Burned out TRISO pebble (Uranium)" * spotless * migrate fluid heater recipes * bump GT version * fix time and eu/t of centrifuge recipes * fix time and eu/t of centrifuge recipes * spotlessApply (#356) Co-authored-by: GitHub GTNH Actions <> * add a todo for chem rebalance issues in electrolyser recipes * fix typo --------- Co-authored-by: Kyium Co-authored-by: chochem <40274384+chochem@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Former-commit-id: b0362b940c88ef5308011a5139ca1c2544d41b4d --- dependencies.gradle | 2 +- .../bartworks/API/BioObjectAdder.java | 31 +- .../common/loaders/ArtificialMicaLine.java | 254 +++--- .../common/loaders/BioRecipeLoader.java | 29 +- .../bartworks/common/loaders/FluidLoader.java | 22 +- .../loaders/StaticRecipeChangeLoaders.java | 3 +- .../common/loaders/recipes/Assembler.java | 314 +++---- .../common/loaders/recipes/AssemblyLine.java | 74 +- .../common/loaders/recipes/Autoclave.java | 31 +- .../common/loaders/recipes/Centrifuge.java | 212 ++--- .../common/loaders/recipes/ChemicalBath.java | 104 +-- .../loaders/recipes/ChemicalReactor.java | 20 +- .../common/loaders/recipes/Electrolyzer.java | 265 +++--- .../common/loaders/recipes/Extractor.java | 22 +- .../common/loaders/recipes/FluidHeater.java | 16 +- .../loaders/recipes/FluidSolidifier.java | 118 ++- .../common/loaders/recipes/FormingPress.java | 79 +- .../common/loaders/recipes/LaserEngraver.java | 17 +- .../common/loaders/recipes/Mixer.java | 50 +- .../common/loaders/recipes/Pulverizer.java | 113 ++- .../common/loaders/recipes/PyrolyseOven.java | 4 +- .../multis/GT_TileEntity_HTGR.java | 4 +- .../multis/GT_TileEntity_THTR.java | 4 +- .../material/BW_MetaGeneratedFrames.java | 16 +- .../CircuitGeneration/BW_Meta_Items.java | 20 +- .../CircuitGeneration/CircuitPartLoader.java | 15 +- .../GT_Enhancement/GTMetaItemEnhancer.java | 35 +- .../PlatinumSludgeOverHaul.java | 765 ++++++++---------- .../processingLoaders/AddSomeRecipes.java | 105 ++- .../processingLoaders/AdditionalRecipes.java | 116 +-- .../werkstoff_loaders/recipe/BlockLoader.java | 34 +- .../recipe/CasingLoader.java | 28 +- .../werkstoff_loaders/recipe/CellLoader.java | 55 +- .../recipe/CraftingMaterialLoader.java | 211 +++-- .../recipe/CrushedLoader.java | 202 +++-- .../werkstoff_loaders/recipe/DustLoader.java | 156 ++-- .../werkstoff_loaders/recipe/GemLoader.java | 175 ++-- .../werkstoff_loaders/recipe/MetalLoader.java | 19 +- .../recipe/MoltenCellLoader.java | 294 +++---- .../recipe/MultipleMetalLoader.java | 12 +- .../werkstoff_loaders/recipe/OreLoader.java | 12 +- .../recipe/SimpleMetalLoader.java | 126 ++- .../werkstoff_loaders/recipe/ToolLoader.java | 137 ++-- .../bartimaeusnek/bartworks/util/BW_Util.java | 1 + 44 files changed, 2016 insertions(+), 2306 deletions(-) diff --git a/dependencies.gradle b/dependencies.gradle index 6694a38a7..dc3f22e52 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -1,7 +1,7 @@ // Add your dependencies here dependencies { - api('com.github.GTNewHorizons:GT5-Unofficial:5.09.43.168:dev') + api('com.github.GTNewHorizons:GT5-Unofficial:5.09.44.02:dev') api("com.github.GTNewHorizons:TecTech:5.2.41:dev") api("com.github.GTNewHorizons:GalacticGregGT5:1.0.9:dev") { exclude group:"com.github.GTNewHorizons", module:"bartworks" diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java index fb1e8c085..bd336c265 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java @@ -14,6 +14,8 @@ package com.github.bartimaeusnek.bartworks.API; import static gregtech.api.enums.Mods.Gendustry; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.awt.*; @@ -28,18 +30,13 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; import gregtech.api.objects.GT_Fluid; import gregtech.api.util.GT_Utility; @SuppressWarnings("ALL") public final class BioObjectAdder { - // @Deprecated - // public static BioCulture createAndRegisterBioCulture(Color color, String name, long ID, BioPlasmid plasmid, - // BioDNA dna, EnumRarity rarity){ - // return BioCulture.createAndRegisterBioCulture(color,name,ID,plasmid,dna,rarity); - // } - /** * @param color the color of the Culture * @param name the name of the Culture @@ -176,22 +173,14 @@ public static void regenerateBioFluids() { "molten.autogenerated", new short[] { (short) B.getColor().getRed(), (short) B.getColor().getBlue(), (short) B.getColor().getGreen() })); - if (!FluidRegistry.registerFluid(B.getFluid())) + + if (!FluidRegistry.registerFluid(B.getFluid())) { new Exception("FAILED TO REGISTER FLUID FOR: " + B.getName()).printStackTrace(); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(10), - GT_Values.NI, - new FluidStack(B.getFluid(), 1000), - dnaFluid, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 500, - 120); + } + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)).noItemOutputs() + .fluidInputs(new FluidStack(B.getFluid(), 1000)).fluidOutputs(dnaFluid).duration(25 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java index afc306280..0754d514b 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java @@ -1,6 +1,14 @@ package com.github.bartimaeusnek.bartworks.common.loaders; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -12,6 +20,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -20,157 +29,106 @@ public class ArtificialMicaLine { public static void runArtificialMicaRecipe() { // Mg + O = MgO - GT_Values.RA.addChemicalRecipe( - Materials.Magnesium.getDust(1), - null, - Materials.Oxygen.getGas(1000), - null, - Materials.Magnesia.getDust(2), - 40, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Magnesium.getDust(1)).itemOutputs(Materials.Magnesia.getDust(2)) + .fluidInputs(Materials.Oxygen.getGas(1000)).noFluidOutputs().duration(2 * SECONDS).eut(8) + .addTo(UniversalChemical); // Si + 6HF = H2SiF6 + 4H - GT_Values.RA.addChemicalRecipe( - Materials.Silicon.getDust(1), - Materials.Empty.getCells(4), - Materials.HydrofluoricAcid.getFluid(6000), - WerkstoffLoader.HexafluorosilicicAcid.getFluidOrGas(1000), - Materials.Hydrogen.getCells(4), - 400, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Silicon.getDust(1), Materials.Empty.getCells(4)) + .itemOutputs(Materials.Hydrogen.getCells(4)).fluidInputs(Materials.HydrofluoricAcid.getFluid(6000)) + .fluidOutputs(WerkstoffLoader.HexafluorosilicicAcid.getFluidOrGas(1000)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // K + Cl = KCl - GT_Values.RA.addChemicalRecipe( - Materials.Potassium.getDust(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Chlorine.getGas(1000), - null, - Materials.RockSalt.getDust(2), - 20, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Potassium.getDust(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.RockSalt.getDust(2)).fluidInputs(Materials.Chlorine.getGas(1000)) + .noFluidOutputs().duration(20 * TICKS).eut(8).addTo(UniversalChemical); + // 2KCl + H2SiF6 = 2HCl + K2SiF6 - GT_Values.RA.addMixerRecipe( - Materials.RockSalt.getDust(4), - null, - null, - null, - WerkstoffLoader.HexafluorosilicicAcid.getFluidOrGas(1000), - Materials.HydrochloricAcid.getGas(2000), - WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 9), - 20, - 8); + GT_Values.RA.stdBuilder().itemInputs(Materials.RockSalt.getDust(4)) + .itemOutputs(WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 9)) + .fluidInputs(WerkstoffLoader.HexafluorosilicicAcid.getFluidOrGas(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getGas(2000)).duration(1 * SECONDS).eut(8) + .addTo(sMixerRecipes); + // 2K + CO2 + O = K2CO3 - GT_Values.RA.addChemicalRecipe( - Materials.Potassium.getDust(2), - Materials.CarbonDioxide.getCells(1), - Materials.Oxygen.getGas(1000), - null, - WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 6), - Materials.Empty.getCells(1), - 40, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Potassium.getDust(2), Materials.CarbonDioxide.getCells(1)) + .itemOutputs(WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 6), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Oxygen.getGas(1000)).noFluidOutputs().duration(2 * SECONDS).eut(8) + .addTo(UniversalChemical); // K2O + CO2 = K2CO3 - GT_Values.RA.addChemicalRecipe( - Materials.Potash.getDust(3), - Materials.CarbonDioxide.getCells(1), - null, - null, - WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 6), - Materials.Empty.getCells(1), - 40, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Potash.getDust(3), Materials.CarbonDioxide.getCells(1)) + .itemOutputs(WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 6), Materials.Empty.getCells(1)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(8).addTo(UniversalChemical); + // 55Quartz Dust + 20K2SiF6 + 12Al2O3 + 4K2CO3 = 91Raw Fluorophlogopite Dust - GT_Values.RA.addMixerRecipe( - Materials.QuartzSand.getDust(55), - WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 20), - WerkstoffLoader.Alumina.get(OrePrefixes.dust, 12), - WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 4), - null, - GT_Utility.getIntegratedCircuit(4), - null, - null, - null, - null, - null, - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27), - null, - null, - 400, - 120); + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.QuartzSand.getDust(55), + WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 20), + WerkstoffLoader.Alumina.get(OrePrefixes.dust, 12), + WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 4), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + // 55Quartzite/Nether Quartz Dust + 20K2SiF6 + 57Al2O3 + 4K2CO3 = 136Raw Fluorophlogopite Dust - GT_Values.RA.addMixerRecipe( - Materials.Quartzite.getDust(55), - WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 20), - WerkstoffLoader.Alumina.get(OrePrefixes.dust, 57), - WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 4), - null, - GT_Utility.getIntegratedCircuit(4), - null, - null, - null, - null, - null, - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 8), - null, - 600, - 120); - GT_Values.RA.addMixerRecipe( - Materials.NetherQuartz.getDust(55), - WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 20), - WerkstoffLoader.Alumina.get(OrePrefixes.dust, 57), - WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 4), - null, - GT_Utility.getIntegratedCircuit(4), - null, - null, - null, - null, - null, - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 8), - null, - 600, - 120); + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Quartzite.getDust(55), + WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 20), + WerkstoffLoader.Alumina.get(OrePrefixes.dust, 57), + WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 4), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 8)) + .fluidInputs().fluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.NetherQuartz.getDust(55), + WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 20), + WerkstoffLoader.Alumina.get(OrePrefixes.dust, 57), + WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 4), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 8)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + // 62Certus Quartz Dust + 10K2SiF6 + 12Al2O3 + 7K2CO3 = 91Raw Fluorophlogopite Dust - GT_Values.RA.addMixerRecipe( - Materials.CertusQuartz.getDust(62), - WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 10), - WerkstoffLoader.Alumina.get(OrePrefixes.dust, 12), - WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 7), - null, - GT_Utility.getIntegratedCircuit(4), - null, - null, - null, - null, - null, - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27), - null, - null, - 600, - 120); + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.CertusQuartz.getDust(62), + WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 10), + WerkstoffLoader.Alumina.get(OrePrefixes.dust, 12), + WerkstoffLoader.PotassiumCarbonate.get(OrePrefixes.dust, 7), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), + WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + // MgO(s) = MgO(l) - GT_Values.RA.addFluidExtractionRecipe( - Materials.Magnesia.getDust(1), - null, - Materials.Magnesia.getMolten(144), - 0, - 20, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Magnesia.getDust(1)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.Magnesia.getMolten(144)).duration(20 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sFluidExtractionRecipes); + // 27Raw Fluorophlogopite Dust + 720MgO(l) = 4608Fluorophlogopite(l) - GT_Values.RA.addBlastRecipe( - WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27), - null, - BW_GT_MaterialReference.Magnesia.getMolten(720), - WerkstoffLoader.HotFluorophlogopite.getFluidOrGas(4608), - Materials.Glass.getDust(1), - null, - 600, - 480, - 1700); + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27)) + .itemOutputs(Materials.Glass.getDust(1)).fluidInputs(BW_GT_MaterialReference.Magnesia.getMolten(720)) + .fluidOutputs(WerkstoffLoader.HotFluorophlogopite.getFluidOrGas(4608)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_HV).metadata(COIL_HEAT, 1700).addTo(sBlastRecipes); + // 144Fluorophlogopite(l) = Fluorophlogopite GT_Recipe.GT_Recipe_Map.sVacuumRecipes.addRecipe( new GT_Recipe( @@ -186,12 +144,14 @@ public static void runArtificialMicaRecipe() { 0)); // Fluorophlogopite = 4Insulator Foil if (NewHorizonsCoreMod.isModLoaded()) { - GT_Values.RA.addBenderRecipe( - WerkstoffLoader.Fluorophlogopite.get(OrePrefixes.plate, 1), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.MicaInsulatorFoil", 4), - 10, - 600); + + GT_Values.RA.stdBuilder() + .itemInputs( + WerkstoffLoader.Fluorophlogopite.get(OrePrefixes.plate, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.MicaInsulatorFoil", 4)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(600).addTo(sBenderRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java index 54e0d4633..c4589c3a3 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java @@ -27,6 +27,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -49,7 +50,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 3300 }, new FluidStack[] { fluidStack }, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART); BWRecipes.instance.addBioLabRecipeIncubation( @@ -58,7 +59,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 4500 }, new FluidStack[] { fluidStack }, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART); BWRecipes.instance.addBioLabRecipeIncubation( @@ -67,7 +68,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 7500 }, new FluidStack[] { fluidStack }, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART); BWRecipes.instance.addBioLabRecipeIncubation( @@ -76,7 +77,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 2500 }, new FluidStack[] { fluidStack }, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART); BWRecipes.instance.addBioLabRecipeIncubation( @@ -85,7 +86,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 3300 }, new FluidStack[] { fluidStack }, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART); BWRecipes.instance.addBioLabRecipeIncubation( @@ -94,7 +95,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 2500 }, new FluidStack[] { fluidStack }, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART); BWRecipes.instance.addBioLabRecipeIncubation( @@ -103,7 +104,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 3300 }, new FluidStack[] { fluidStack }, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART); BWRecipes.instance.addBioLabRecipeIncubation( @@ -112,7 +113,7 @@ public static void registerWaterBasedBioLabIncubations() { new int[] { 100 }, new FluidStack[] { fluidStack }, 1500, - BW_Util.getMachineVoltageFromTier(4), + (int) TierEU.RECIPE_EV, BW_Util.STANDART); } } @@ -128,7 +129,7 @@ public static void registerWaterBasedBacterialVatRecipes() { BioCultureLoader.CommonYeast, new FluidStack[] { FluidRegistry.getFluidStack("potion.ghp", 1) }, 350, - BW_Util.getMachineVoltageFromTier(4)); + (int) TierEU.RECIPE_EV); } BWRecipes.instance.addBacterialVatRecipe( @@ -137,7 +138,7 @@ public static void registerWaterBasedBacterialVatRecipes() { BioCultureLoader.WhineYeast, new FluidStack[] { FluidRegistry.getFluidStack("potion.wine", 12) }, 200, - BW_Util.getMachineVoltageFromTier(2)); + (int) TierEU.RECIPE_MV); BWRecipes.instance.addBacterialVatRecipe( new ItemStack[] { new ItemStack(Items.sugar, 4), ItemList.IC2_Hops.get(16L), @@ -146,7 +147,7 @@ public static void registerWaterBasedBacterialVatRecipes() { BioCultureLoader.BeerYeast, new FluidStack[] { FluidRegistry.getFluidStack("potion.beer", 5) }, 600, - BW_Util.getMachineVoltageFromTier(1)); + (int) TierEU.RECIPE_LV); BWRecipes.instance.addBacterialVatRecipe( new ItemStack[] { ItemList.IC2_Hops.get(32L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 16L) }, @@ -154,7 +155,7 @@ public static void registerWaterBasedBacterialVatRecipes() { BioCultureLoader.BeerYeast, new FluidStack[] { FluidRegistry.getFluidStack("potion.darkbeer", 10) }, 600, - BW_Util.getMachineVoltageFromTier(1)); + (int) TierEU.RECIPE_LV); } } @@ -167,7 +168,7 @@ public static void registerBacterialVatRecipes() { BioCultureLoader.WhineYeast, new FluidStack[] { FluidRegistry.getFluidStack("potion.wine", 12) }, 400, - BW_Util.getMachineVoltageFromTier(1)); + (int) TierEU.RECIPE_LV); BWRecipes.instance.addBacterialVatRecipe( null, @@ -175,7 +176,7 @@ public static void registerBacterialVatRecipes() { BioCultureLoader.anaerobicOil, new FluidStack[] { new FluidStack(FluidLoader.fulvicAcid, 1000) }, 2748, - BW_Util.getMachineVoltageFromTier(3)); + (int) TierEU.RECIPE_HV); } public static void runOnServerStarted() { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java index 19d52696f..017dba835 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java @@ -14,6 +14,8 @@ package com.github.bartimaeusnek.bartworks.common.loaders; import static gregtech.api.enums.Mods.Gendustry; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.awt.*; import java.util.Arrays; @@ -36,6 +38,7 @@ import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; import gregtech.api.objects.GT_Fluid; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Utility; @@ -93,20 +96,11 @@ public static void run() { FluidRegistry.registerFluid(B.getFluid()); GT_LanguageManager .addStringLocalization(B.getFluid().getUnlocalizedName(), B.getLocalisedName() + " Fluid"); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(10), - GT_Values.NI, - new FluidStack(B.getFluid(), 1000), - dnaFluid, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 500, - 120); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)).noItemOutputs() + .fluidInputs(new FluidStack(B.getFluid(), 1000)).fluidOutputs(dnaFluid).duration(25 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); + } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java index 6f482aaa4..3b145cad5 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java @@ -58,6 +58,7 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SubTag; +import gregtech.api.enums.TierEU; import gregtech.api.objects.GT_ItemStack; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -626,7 +627,7 @@ public static void addElectricImplosionCompressorRecipes() { null, null, 1, - BW_Util.getMachineVoltageFromTier(10), + (int) TierEU.RECIPE_UEV, 0)); // Custom EIC recipes. diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java index 7d803f154..ed29a3a7f 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java @@ -1,23 +1,25 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static gregtech.api.enums.Mods.GregTech; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.HOURS; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidRegistry; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; public class Assembler implements Runnable { @@ -37,86 +39,89 @@ public void run() { Materials.SuperconductorUV // UHV }; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 0), Materials.Lapis.getPlates(9), + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 0), + Materials.Lapis.getPlates(9), GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 2L), - GT_Utility.getIntegratedCircuit(17) }, - FluidRegistry.getFluidStack("ic2coolant", 1000), - new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 1), - 100, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 1), Materials.Lapis.getBlocks(8), - GT_Utility.getIntegratedCircuit(17) }, - GT_Values.NF, - new ItemStack(ItemRegistry.BW_BLOCKS[1]), - 100, - BW_Util.getMachineVoltageFromTier(3)); - - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1000), - GT_Utility.getIntegratedCircuit(17), - Materials.SolderingAlloy.getMolten(9216), - ItemRegistry.megaMachines[0], - 72000, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1002), - GT_Utility.getIntegratedCircuit(17), - Materials.SolderingAlloy.getMolten(9216), - ItemRegistry.megaMachines[1], - 72000, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1126), - GT_Utility.getIntegratedCircuit(17), - Materials.SolderingAlloy.getMolten(9216), - ItemRegistry.megaMachines[2], - 72000, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1169), - GT_Utility.getIntegratedCircuit(17), - Materials.SolderingAlloy.getMolten(9216), - ItemRegistry.megaMachines[3], - 72000, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1160), - GT_Utility.getIntegratedCircuit(17), - Materials.SolderingAlloy.getMolten(9216), - ItemRegistry.megaMachines[4], - 72000, - BW_Util.getMachineVoltageFromTier(3)); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.AnnealedCopper, 64L), - GT_Utility.getIntegratedCircuit(17) }, - Materials.Plastic.getMolten(1152L), - new ItemStack(ItemRegistry.BW_BLOCKS[2], 1, 1), - 20, - BW_Util.getMachineVoltageFromTier(3)); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), - Materials.Aluminium.getPlates(1), ItemList.Circuit_Board_Plastic.get(1L), - ItemList.Battery_RE_LV_Lithium.get(1L) }, - Materials.SolderingAlloy.getMolten(288L), - new ItemStack(ItemRegistry.CIRCUIT_PROGRAMMER), - 600, - BW_Util.getMachineVoltageFromTier(2)); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Parts_GlassFiber.get(32), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 1)) + .fluidInputs(FluidRegistry.getFluidStack("ic2coolant", 1000)).noFluidOutputs().duration(5 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 1), + Materials.Lapis.getBlocks(8), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[1])).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1000), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(ItemRegistry.megaMachines[0]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) + .noFluidOutputs().duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1002), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(ItemRegistry.megaMachines[1]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) + .noFluidOutputs().duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1126), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(ItemRegistry.megaMachines[2]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) + .noFluidOutputs().duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1169), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(ItemRegistry.megaMachines[3]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) + .noFluidOutputs().duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1160), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(ItemRegistry.megaMachines[4]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) + .noFluidOutputs().duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.AnnealedCopper, 64L), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[2], 1, 1)) + .fluidInputs(Materials.Plastic.getMolten(1152L)).noFluidOutputs().duration(1 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), + Materials.Aluminium.getPlates(1), + ItemList.Circuit_Board_Plastic.get(1L), + ItemList.Battery_RE_LV_Lithium.get(1L)) + .itemOutputs(new ItemStack(ItemRegistry.CIRCUIT_PROGRAMMER)) + .fluidInputs(Materials.SolderingAlloy.getMolten(288L)).noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Parts_GlassFiber.get(32), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 8), - WerkstoffLoader.CubicZirconia.get(OrePrefixes.gemExquisite, 2) }, - Materials.Polytetrafluoroethylene.getMolten(72), - new ItemStack( - ItemRegistry.TecTechPipeEnergyLowPower.getItem(), - 1, - ItemRegistry.TecTechPipeEnergyLowPower.getItemDamage()), - 200, - BW_Util.getMachineVoltageFromTier(4)); + WerkstoffLoader.CubicZirconia.get(OrePrefixes.gemExquisite, 2)) + .itemOutputs( + new ItemStack( + ItemRegistry.TecTechPipeEnergyLowPower.getItem(), + 1, + ItemRegistry.TecTechPipeEnergyLowPower.getItemDamage())) + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(72)).noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); ItemStack[][] converters = ItemRegistry.TecTechLaserAdditions[0]; ItemStack[][] input = ItemRegistry.TecTechLaserAdditions[1]; @@ -134,91 +139,98 @@ public void run() { ItemStack converter = converters[j][i]; ItemStack eInput = input[j][i]; ItemStack eDynamo = dynamo[j][i]; + long recipeConsumption; + switch (i) { + case 0: + recipeConsumption = TierEU.RECIPE_EV; + break; + case 1: + recipeConsumption = TierEU.RECIPE_IV; + break; + case 2: + recipeConsumption = TierEU.RECIPE_LuV; + break; + case 3: + recipeConsumption = TierEU.RECIPE_ZPM; + break; + default: + recipeConsumption = TierEU.RECIPE_EV; + break; + } int solderingAmount = Math.max(144 * i, 72) * (j + 1); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - new ItemStack( - ItemRegistry.TecTechPipeEnergyLowPower.getItem(), - ((j + 1) * 16), - ItemRegistry.TecTechPipeEnergyLowPower.getItemDamage()), - WerkstoffLoader.CubicZirconia.get(OrePrefixes.lens), - GT_OreDictUnificator.get(prefixes[j], cables[i + 4], 8), emitters[i].get(2 * (j + 1)), - sensors[i].get(2 * (j + 1)), ItemList.TRANSFORMERS[4 + i].get(2 * (j + 1)), }, - Materials.SolderingAlloy.getMolten(solderingAmount), - converter, - 200 * (j + 1), - BW_Util.getMachineVoltageFromTier(4 + i)); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { + + GT_Values.RA.stdBuilder().itemInputs( + + new ItemStack( + ItemRegistry.TecTechPipeEnergyLowPower.getItem(), + ((j + 1) * 16), + ItemRegistry.TecTechPipeEnergyLowPower.getItemDamage()), + WerkstoffLoader.CubicZirconia.get(OrePrefixes.lens), + GT_OreDictUnificator.get(prefixes[j], cables[i + 4], 8), + emitters[i].get(2 * (j + 1)), + sensors[i].get(2 * (j + 1)), + ItemList.TRANSFORMERS[4 + i].get(2 * (j + 1))).itemOutputs(converter) + .fluidInputs(Materials.SolderingAlloy.getMolten(solderingAmount)).noFluidOutputs() + .duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( new ItemStack( ItemRegistry.TecTechPipeEnergyLowPower.getItem(), ((j + 1) * 16), ItemRegistry.TecTechPipeEnergyLowPower.getItemDamage()), WerkstoffLoader.CubicZirconia.get(OrePrefixes.lens), - GT_OreDictUnificator.get(prefixes[j], cables[i + 4], 8), sensors[i].get(2 * (j + 1)), - ItemList.HATCHES_ENERGY[4 + i].get(2 * (j + 1)), }, - Materials.SolderingAlloy.getMolten(solderingAmount), - eInput, - 200 * (j + 1), - BW_Util.getMachineVoltageFromTier(4 + i)); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { + GT_OreDictUnificator.get(prefixes[j], cables[i + 4], 8), + sensors[i].get(2 * (j + 1)), + ItemList.HATCHES_ENERGY[4 + i].get(2 * (j + 1))) + .itemOutputs(eInput).fluidInputs(Materials.SolderingAlloy.getMolten(solderingAmount)) + .noFluidOutputs().duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( new ItemStack( ItemRegistry.TecTechPipeEnergyLowPower.getItem(), ((j + 1) * 16), ItemRegistry.TecTechPipeEnergyLowPower.getItemDamage()), WerkstoffLoader.CubicZirconia.get(OrePrefixes.lens), - GT_OreDictUnificator.get(prefixes[j], cables[i + 4], 8), emitters[i].get(2 * (j + 1)), - ItemList.HATCHES_DYNAMO[4 + i].get(2 * (j + 1)), }, - Materials.SolderingAlloy.getMolten(solderingAmount), - eDynamo, - 200 * (j + 1), - BW_Util.getMachineVoltageFromTier(4 + i)); + GT_OreDictUnificator.get(prefixes[j], cables[i + 4], 8), + emitters[i].get(2 * (j + 1)), + ItemList.HATCHES_DYNAMO[4 + i].get(2 * (j + 1))) + .itemOutputs(eDynamo).fluidInputs(Materials.SolderingAlloy.getMolten(solderingAmount)) + .noFluidOutputs().duration((10 * (j + 1) * SECONDS)).eut(recipeConsumption) + .addTo(sAssemblerRecipes); } } - GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( - false, - new ItemStack[] { ItemList.Hatch_Input_HV.get(64), Materials.LiquidAir.getCells(1), - GT_Utility.getIntegratedCircuit(17) }, - new ItemStack[] { ItemRegistry.compressedHatch.copy() }, - null, - null, - null, - null, - 300, - BW_Util.getMachineVoltageFromTier(3), - 0)); - GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( - false, - new ItemStack[] { ItemList.Hatch_Output_HV.get(64), GT_Utility.getIntegratedCircuit(17) }, - new ItemStack[] { ItemRegistry.giantOutputHatch.copy() }, - null, - null, - null, - null, - 300, - BW_Util.getMachineVoltageFromTier(3), - 0)); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Lead, 6), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1) }, - Materials.Concrete.getMolten(1296), - new ItemStack(GregTech_API.sBlockCasings3, 1, 12), - 40, - BW_Util.getMachineVoltageFromTier(5)); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(GregTech_API.sBlockCasings3, 1, 12), + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hatch_Input_HV.get(64), + Materials.LiquidAir.getCells(1), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(ItemRegistry.compressedHatch.copy()).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Hatch_Output_HV.get(64), GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(ItemRegistry.giantOutputHatch.copy()).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Lead, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1)) + .itemOutputs(new ItemStack(GregTech_API.sBlockCasings3, 1, 12)) + .fluidInputs(Materials.Concrete.getMolten(1296)).noFluidOutputs().duration(2 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GregTech_API.sBlockCasings3, 1, 12), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Europium, 6), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Europium, 24) }, - Materials.Lead.getMolten(864), - new ItemStack(GregTech_API.sBlockCasings8, 1, 5), - 200, - BW_Util.getMachineVoltageFromTier(6)); + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Europium, 24)) + .itemOutputs(new ItemStack(GregTech_API.sBlockCasings8, 1, 5)) + .fluidInputs(Materials.Lead.getMolten(864)).noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/AssemblyLine.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/AssemblyLine.java index a8a879a3f..860204d4a 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/AssemblyLine.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/AssemblyLine.java @@ -1,16 +1,19 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static gregtech.api.enums.Mods.GalactiGreg; +import static gregtech.api.util.GT_RecipeBuilder.HOURS; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeConstants.AssemblyLine; +import static gregtech.api.util.GT_RecipeConstants.RESEARCH_ITEM; +import static gregtech.api.util.GT_RecipeConstants.RESEARCH_TIME; -import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; @@ -26,47 +29,46 @@ public void run() { Fluid solderIndalloy = FluidRegistry.getFluid("molten.indalloy140") != null ? FluidRegistry.getFluid("molten.indalloy140") : FluidRegistry.getFluid("molten.solderingalloy"); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Pump_IV.get(1L), - 72000, - new ItemStack[] { ItemList.Pump_IV.get(16), + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Pump_IV.get(1L)).metadata(RESEARCH_TIME, 1 * HOURS) + .itemInputs( + ItemList.Pump_IV.get(16), GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Ultimate, 32L), GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.HSSE, 16L), GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.HSSE, 16L), - ItemList.Field_Generator_LuV.get(8) }, - new FluidStack[] { new FluidStack(solderIndalloy, 32 * 144), - Materials.Polytetrafluoroethylene.getMolten(32 * 144) }, - ItemRegistry.dehp, - 5000, - BW_Util.getMachineVoltageFromTier(6)); + ItemList.Field_Generator_LuV.get(8)) + .fluidInputs( + new FluidStack(solderIndalloy, 32 * 144), + Materials.Polytetrafluoroethylene.getMolten(32 * 144)) + .noFluidOutputs().itemOutputs(ItemRegistry.dehp).eut(TierEU.RECIPE_LuV) + .duration(4 * MINUTES + 10 * SECONDS).addTo(AssemblyLine); if (GalactiGreg.isModLoaded()) { - GT_Values.RA.addAssemblylineRecipe( - ItemList.OreDrill4.get(1L), - (int) TierEU.RECIPE_LuV, - new Object[] { ItemList.OreDrill4.get(1L), + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.OreDrill4.get(1L)) + .metadata(RESEARCH_TIME, 25 * MINUTES + 36 * SECONDS) + .itemInputs( + ItemList.OreDrill4.get(1L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Tritanium, 9L), - Materials.Europium.getPlates(3), ItemList.Electric_Motor_LuV.get(9L), - ItemList.Sensor_LuV.get(9L), ItemList.Field_Generator_LuV.get(9L), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Europium, 36L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 1440), - WerkstoffLoader.Neon.getFluidOrGas(20000), }, - ItemRegistry.voidminer[0].copy(), - 5 * MINUTES, - (int) TierEU.RECIPE_LuV); + Materials.Europium.getPlates(3), + ItemList.Electric_Motor_LuV.get(9L), + ItemList.Sensor_LuV.get(9L), + ItemList.Field_Generator_LuV.get(9L), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Europium, 36L)) + .fluidInputs(new FluidStack(solderIndalloy, 1440), WerkstoffLoader.Neon.getFluidOrGas(20000)) + .noFluidOutputs().itemOutputs(ItemRegistry.voidminer[0].copy()).eut(TierEU.RECIPE_LuV) + .duration(5 * MINUTES).addTo(AssemblyLine); } - GT_Values.RA.addAssemblylineRecipe( - ItemList.Machine_LuV_CircuitAssembler.get(1L), - 24000, - new ItemStack[] { ItemList.Machine_LuV_CircuitAssembler.get(1L), ItemList.Robot_Arm_LuV.get(4L), - ItemList.Electric_Motor_LuV.get(4L), ItemList.Field_Generator_LuV.get(1L), - ItemList.Emitter_LuV.get(1L), ItemList.Sensor_LuV.get(1L), - WerkstoffLoader.LuVTierMaterial.get(OrePrefixes.plate, 8) }, - new FluidStack[] { new FluidStack(solderIndalloy, 1440) }, - ItemRegistry.cal.copy(), - 24000, - BW_Util.getMachineVoltageFromTier(6)); + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Machine_LuV_CircuitAssembler.get(1L)) + .metadata(RESEARCH_TIME, 20 * MINUTES) + .itemInputs( + ItemList.Machine_LuV_CircuitAssembler.get(1L), + ItemList.Robot_Arm_LuV.get(4L), + ItemList.Electric_Motor_LuV.get(4L), + ItemList.Field_Generator_LuV.get(1L), + ItemList.Emitter_LuV.get(1L), + ItemList.Sensor_LuV.get(1L), + WerkstoffLoader.LuVTierMaterial.get(OrePrefixes.plate, 8)) + .fluidInputs(new FluidStack(solderIndalloy, 1440)).noFluidOutputs().itemOutputs(ItemRegistry.cal.copy()) + .eut(TierEU.RECIPE_LuV).duration(20 * MINUTES).addTo(AssemblyLine); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java index 3771a261a..7d32af49a 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java @@ -1,14 +1,17 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import com.github.bartimaeusnek.bartworks.common.loaders.BioItemList; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; public class Autoclave implements Runnable { @@ -16,21 +19,17 @@ public class Autoclave implements Runnable { public void run() { Materials[] sterilizers = { Materials.Ammonia, Materials.Chlorine, Materials.Ethanol, Materials.Methanol }; for (Materials used : sterilizers) { - GT_Values.RA.addAutoclaveRecipe( - ItemList.Circuit_Parts_PetriDish.get(1L), - used.getGas(10L) != null ? used.getGas(8L) : used.getFluid(16L), - BioItemList.getPetriDish(null), - 10000, - 100, - BW_Util.getMachineVoltageFromTier(1)); - - GT_Values.RA.addAutoclaveRecipe( - new ItemStack(Items.glass_bottle), - used.getGas(10L) != null ? used.getGas(8L) : used.getFluid(16L), - BioItemList.getDNASampleFlask(null), - 10000, - 100, - BW_Util.getMachineVoltageFromTier(1)); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Circuit_Parts_PetriDish.get(1L)) + .itemOutputs(BioItemList.getPetriDish(null)) + .fluidInputs(used.getGas(10L) != null ? used.getGas(8L) : used.getFluid(16L)).noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.glass_bottle)) + .itemOutputs(BioItemList.getDNASampleFlask(null)) + .fluidInputs(used.getGas(10L) != null ? used.getGas(8L) : used.getFluid(16L)).noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAutoclaveRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java index c80c708b5..776d6a1a2 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java @@ -2,6 +2,9 @@ import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.MATERIALS_PER_FUEL; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.sHTGR_Fuel; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.util.Arrays; @@ -14,164 +17,99 @@ import com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR; import com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_THTR; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; -import gregtech.api.util.GT_Recipe; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_Utility; public class Centrifuge implements Runnable { @Override public void run() { - - GT_Values.RA.addCentrifugeRecipe( - Materials.Thorium.getDust(1), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.Thorium.getDust(1), - Materials.Thorium.getDust(1), - WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1), - WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1), - WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1), - GT_Values.NI, - new int[] { 800, 375, 22, 22, 5 }, - 10000, - BW_Util.getMachineVoltageFromTier(4)); + GT_Values.RA.stdBuilder().itemInputs(Materials.Thorium.getDust(1)) + .itemOutputs( + Materials.Thorium.getDust(1), + Materials.Thorium.getDust(1), + WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1), + WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1), + WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1)) + .outputChances(800, 375, 22, 22, 5).noFluidInputs().noFluidOutputs() + .duration(8 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sCentrifugeRecipes); ItemStack[] pellets = new ItemStack[6]; Arrays.fill(pellets, new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 64, 4)); - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe( - false, - new ItemStack[] { new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 3), - GT_Utility.getIntegratedCircuit(17) }, - pellets, - null, - null, - null, - null, - 48000, - 30, - 0); - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe( - false, - new ItemStack[] { new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 5), - GT_Utility.getIntegratedCircuit(17) }, - new ItemStack[] { new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 64, 6) }, - null, - null, - null, - null, - 48000, - 30, - 0); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 6), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.Lead.getDust(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 300 }, - 1200, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 3), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(pellets).noFluidInputs().noFluidOutputs().duration(40 * MINUTES).eut(TierEU.RECIPE_LV) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 5), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 64, 6)).noFluidInputs() + .noFluidOutputs().duration(40 * MINUTES).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 6)) + .itemOutputs(Materials.Lead.getDust(1)).outputChances(300).noFluidInputs().noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + int i = 0; for (GT_TileEntity_HTGR.HTGRMaterials.Fuel_ fuel : sHTGR_Fuel) { - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe( - false, - new ItemStack[] { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 3), - GT_Utility.getIntegratedCircuit(17) }, - new ItemStack[] { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4), + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 3), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs( + new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4), new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4), new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4), - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4) }, - null, - null, - null, - null, - 12000, - 30, - 0); - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe( - false, - new ItemStack[] { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 5), - GT_Utility.getIntegratedCircuit(17) }, - new ItemStack[] { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 6) }, - null, - null, - null, - null, - 3000, - 30, - 0); - - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 6), - GT_Values.NI, - GT_Values.NF, - fuel.recycledFluid, - fuel.recycledItems[0], - fuel.recycledItems[1], - fuel.recycledItems[2], - fuel.recycledItems[3], - fuel.recycledItems[4], - fuel.recycledItems[5], - fuel.recycleChances, - 1200, - 30); + new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4)) + .noFluidInputs().noFluidOutputs().duration(10 * MINUTES).eut(TierEU.RECIPE_LV) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 5), + GT_Utility.getIntegratedCircuit(17)) + .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 6)) + .noFluidInputs().noFluidOutputs().duration(2 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 6)) + .itemOutputs( + fuel.recycledItems[0], + fuel.recycledItems[1], + fuel.recycledItems[2], + fuel.recycledItems[3], + fuel.recycledItems[4]) + .outputChances(fuel.recycleChances).noFluidInputs().fluidOutputs(fuel.recycledFluid) + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + i += MATERIALS_PER_FUEL; } - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(17), - null, - new FluidStack(BioCultureLoader.eColi.getFluid(), 1000), - new FluidStack(FluidLoader.BioLabFluidMaterials[1], 10), - BioItemList.getOther(4), - null, - null, - null, - null, - null, - new int[] { 1000 }, - 60 * 20, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(17), - null, - new FluidStack(FluidLoader.BioLabFluidMaterials[1], 1000), - new FluidStack(FluidLoader.BioLabFluidMaterials[3], 250), - null, - null, - null, - null, - null, - null, - null, - 60 * 20, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(17), - null, - new FluidStack(BioCultureLoader.CommonYeast.getFluid(), 1000), - new FluidStack(FluidLoader.BioLabFluidMaterials[2], 10), - null, - null, - null, - null, - null, - null, - null, - 60 * 20, - BW_Util.getMachineVoltageFromTier(3)); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(17)).itemOutputs(BioItemList.getOther(4)) + .fluidInputs(new FluidStack(BioCultureLoader.eColi.getFluid(), 1000)) + .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[1], 10)).duration(60 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(17)).noItemOutputs() + .fluidInputs(new FluidStack(FluidLoader.BioLabFluidMaterials[1], 1000)) + .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[3], 250)).duration(60 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(17)).noItemOutputs() + .fluidInputs(new FluidStack(BioCultureLoader.CommonYeast.getFluid(), 1000)) + .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[2], 10)).duration(60 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sCentrifugeRecipes); + } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java index 15cd43e32..b2e8e5986 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java @@ -1,5 +1,9 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import net.minecraft.item.ItemStack; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; @@ -14,72 +18,46 @@ public class ChemicalBath implements Runnable { public void run() { for (int i = 0; i < Dyes.dyeBrown.getSizeOfFluidList(); ++i) { - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Dyes.dyeRed.getFluidDye(i, 36), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 6), - null, - null, - null, - 64, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Dyes.dyeGreen.getFluidDye(i, 36), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 7), - null, - null, - null, - 64, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Dyes.dyePurple.getFluidDye(i, 36), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 8), - null, - null, - null, - 64, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Dyes.dyeYellow.getFluidDye(i, 36), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 9), - null, - null, - null, - 64, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Dyes.dyeLime.getFluidDye(i, 36), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 10), - null, - null, - null, - 64, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Dyes.dyeBrown.getFluidDye(i, 36), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 11), - null, - null, - null, - 64, - 2); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 6)) + .fluidInputs(Dyes.dyeRed.getFluidDye(i, 36)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(2).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 7)) + .fluidInputs(Dyes.dyeGreen.getFluidDye(i, 36)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(2).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 8)) + .fluidInputs(Dyes.dyePurple.getFluidDye(i, 36)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(2).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 9)) + .fluidInputs(Dyes.dyeYellow.getFluidDye(i, 36)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(2).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 10)) + .fluidInputs(Dyes.dyeLime.getFluidDye(i, 36)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(2).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 11)) + .fluidInputs(Dyes.dyeBrown.getFluidDye(i, 36)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(2).addTo(sChemicalBathRecipes); + } for (int i = 6; i < 11; i++) { - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, i), - Materials.Chlorine.getGas(50), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - null, - null, - null, - 64, - 2); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, i)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .fluidInputs(Materials.Chlorine.getGas(50)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(2).addTo(sChemicalBathRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalReactor.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalReactor.java index 6361340fe..01d6e05c5 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalReactor.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalReactor.java @@ -1,24 +1,26 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; + import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.common.loaders.FluidLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_Utility; public class ChemicalReactor implements Runnable { @Override public void run() { - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(10), - null, - new FluidStack(FluidLoader.heatedfulvicAcid, 1000), - new FluidStack(FluidLoader.Kerogen, 1000), - null, - 75, - BW_Util.getMachineVoltageFromTier(2)); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)).noItemOutputs() + .fluidInputs(new FluidStack(FluidLoader.heatedfulvicAcid, 1000)) + .fluidOutputs(new FluidStack(FluidLoader.Kerogen, 1000)).duration(3 * SECONDS + 15 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java index f9dbbaa53..18e013804 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java @@ -1,170 +1,127 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_OreDictUnificator; public class Electrolyzer implements Runnable { + // TODO: fix the chemical balance issues there are below @Override public void run() { - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.Forsterit.get(OrePrefixes.dust, 7), - GT_Values.NI, - GT_Values.NF, - Materials.Oxygen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 200, - 90); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.RedZircon.get(OrePrefixes.dust, 6), - GT_Values.NI, - GT_Values.NF, - Materials.Oxygen.getGas(2000L), - WerkstoffLoader.Zirconium.get(OrePrefixes.dust, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 250, - 90); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.Fayalit.get(OrePrefixes.dust, 7), - GT_Values.NI, - GT_Values.NF, - Materials.Oxygen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 320, - 90); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.Prasiolite.get(OrePrefixes.dust, 16), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 5L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 580, - 90); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.Hedenbergit.get(OrePrefixes.dust, 10), - GT_Values.NI, - GT_Values.NF, - Materials.Oxygen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 2L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 300, - 90); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.FuchsitAL.get(OrePrefixes.dust, 21), - ItemList.Cell_Empty.get(2), - GT_Values.NF, - Materials.Oxygen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), - GT_Values.NI, - GT_Values.NI, - null, - 390, - 120); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.FuchsitCR.get(OrePrefixes.dust, 21), - ItemList.Cell_Empty.get(2), - GT_Values.NF, - Materials.Oxygen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), - GT_Values.NI, - GT_Values.NI, - null, - 460, - 120); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.VanadioOxyDravit.get(OrePrefixes.dust, 53), - ItemList.Cell_Empty.get(3), - GT_Values.NF, - Materials.Oxygen.getGas(19000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnalium, 6L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3), - null, - 710, - 120); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.ChromoAluminoPovondrait.get(OrePrefixes.dust, 53), - ItemList.Cell_Empty.get(3), - GT_Values.NF, - Materials.Oxygen.getGas(19000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnalium, 6L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3), - null, - 720, - 120); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.FluorBuergerit.get(OrePrefixes.dust, 50), - ItemList.Cell_Empty.get(3), - GT_Values.NF, - Materials.Oxygen.getGas(6000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 6L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fluorine, 3), - null, - 730, - 120); - GT_Values.RA.addElectrolyzerRecipe( - WerkstoffLoader.Olenit.get(OrePrefixes.dust, 51), - ItemList.Cell_Empty.get(1), - GT_Values.NF, - Materials.Oxygen.getGas(1000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1), - GT_Values.NI, - null, - 790, - 120); + + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Forsterit.get(OrePrefixes.dust, 7)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(10 * SECONDS).eut(90) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.RedZircon.get(OrePrefixes.dust, 6)) + .itemOutputs( + WerkstoffLoader.Zirconium.get(OrePrefixes.dust, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(12 * SECONDS + 10 * TICKS) + .eut(90).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Fayalit.get(OrePrefixes.dust, 7)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(16 * SECONDS).eut(90) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Prasiolite.get(OrePrefixes.dust, 16)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 5L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L)) + .noFluidInputs().noFluidOutputs().duration(29 * SECONDS).eut(90).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Hedenbergit.get(OrePrefixes.dust, 10)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 2L)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(15 * SECONDS).eut(90) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(WerkstoffLoader.FuchsitAL.get(OrePrefixes.dust, 21), ItemList.Cell_Empty.get(2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 3L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(19 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(WerkstoffLoader.FuchsitCR.get(OrePrefixes.dust, 21), ItemList.Cell_Empty.get(2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 3L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(23 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(WerkstoffLoader.VanadioOxyDravit.get(OrePrefixes.dust, 53), ItemList.Cell_Empty.get(3)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 3L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnalium, 6L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(19000L)).duration(35 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + WerkstoffLoader.ChromoAluminoPovondrait.get(OrePrefixes.dust, 53), + ItemList.Cell_Empty.get(3)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 3L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnalium, 6L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(19000L)).duration(36 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(WerkstoffLoader.FluorBuergerit.get(OrePrefixes.dust, 50), ItemList.Cell_Empty.get(3)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 3L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 6L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fluorine, 3)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(6000L)).duration(36 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(WerkstoffLoader.Olenit.get(OrePrefixes.dust, 51), ItemList.Cell_Empty.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 9L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 6L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1)) + .noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(1000L)).duration(39 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); + } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java index 2505c369e..a87b71f8a 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java @@ -1,6 +1,8 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static gregtech.api.enums.Mods.CropLoadCore; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtractorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.util.List; @@ -12,6 +14,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; +import gregtech.api.enums.TierEU; public class Extractor implements Runnable { @@ -20,18 +23,17 @@ public void run() { List oreCropVine = OreDictionary.getOres("cropVine", false); if (CropLoadCore.isModLoaded() && !oreCropVine.isEmpty()) { for (ItemStack stack : oreCropVine) { - GT_Values.RA.addExtractorRecipe( - BW_Util.setStackSize(stack, 12), - BioItemList.getOther(1), - 500, - BW_Util.getMachineVoltageFromTier(3)); + + GT_Values.RA.stdBuilder().itemInputs(BW_Util.setStackSize(stack, 12)) + .itemOutputs(BioItemList.getOther(1)).noFluidInputs().noFluidOutputs().duration(25 * SECONDS) + .eut((int) TierEU.RECIPE_HV).addTo(sExtractorRecipes); + } } - GT_Values.RA.addExtractorRecipe( - ItemList.Circuit_Chip_Stemcell.get(1L), - BioItemList.getOther(4), - 500, - BW_Util.getMachineVoltageFromTier(6)); + GT_Values.RA.stdBuilder().itemInputs(ItemList.Circuit_Chip_Stemcell.get(1L)) + .itemOutputs(BioItemList.getOther(4)).noFluidInputs().noFluidOutputs().duration(25 * SECONDS) + .eut((int) TierEU.RECIPE_LuV).addTo(sExtractorRecipes); + } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java index 6d23bdfb9..d2125aac2 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java @@ -1,22 +1,24 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.common.loaders.FluidLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_Utility; public class FluidHeater implements Runnable { @Override public void run() { - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(10), - new FluidStack(FluidLoader.fulvicAcid, 1000), - new FluidStack(FluidLoader.heatedfulvicAcid, 1000), - 90, - BW_Util.getMachineVoltageFromTier(2)); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)).noItemOutputs() + .fluidInputs(new FluidStack(FluidLoader.fulvicAcid, 1000)) + .fluidOutputs(new FluidStack(FluidLoader.heatedfulvicAcid, 1000)).duration(4 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sFluidHeaterRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java index 13c431fce..5c5271f2b 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java @@ -1,81 +1,73 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsUEVplus; +import gregtech.api.enums.TierEU; public class FluidSolidifier implements Runnable { @Override public void run() { - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(Blocks.lapis_block), - Materials.Iron.getMolten(1296L), - new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 0), - 100, - BW_Util.getMachineVoltageFromTier(3)); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Materials.Titanium.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 1), - 800, - BW_Util.getMachineVoltageFromTier(3)); - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Materials.TungstenSteel.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 2), - 800, - BW_Util.getMachineVoltageFromTier(4)); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - WerkstoffLoader.LuVTierMaterial.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 3), - 800, - BW_Util.getMachineVoltageFromTier(5)); - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Materials.Iridium.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 4), - 800, - BW_Util.getMachineVoltageFromTier(6)); - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Materials.Osmium.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 5), - 800, - BW_Util.getMachineVoltageFromTier(7)); - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Materials.Neutronium.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 13), - 800, - BW_Util.getMachineVoltageFromTier(8)); - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Materials.CosmicNeutronium.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 14), - 800, - BW_Util.getMachineVoltageFromTier(9)); - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - Materials.Infinity.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[0], 1, 15), - 800, - BW_Util.getMachineVoltageFromTier(10)); - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 0), - MaterialsUEVplus.TranscendentMetal.getMolten(1152), - new ItemStack(ItemRegistry.bw_glasses[1], 1, 0), - 800, - BW_Util.getMachineVoltageFromTier(11)); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.lapis_block)) + .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 0)) + .fluidInputs(Materials.Iron.getMolten(1296L)).noFluidOutputs().duration(5 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 1)) + .fluidInputs(Materials.Titanium.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 2)) + .fluidInputs(Materials.TungstenSteel.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 3)) + .fluidInputs(WerkstoffLoader.LuVTierMaterial.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 4)) + .fluidInputs(Materials.Iridium.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 5)) + .fluidInputs(Materials.Osmium.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_ZPM).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 13)) + .fluidInputs(Materials.Neutronium.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_UV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 14)) + .fluidInputs(Materials.CosmicNeutronium.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_UHV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 15)) + .fluidInputs(Materials.Infinity.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_UEV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) + .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[1], 1, 0)) + .fluidInputs(MaterialsUEVplus.TranscendentMetal.getMolten(1152)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_UIV).addTo(sFluidSolidficationRecipes); + } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java index 744b18a17..4523503c8 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java @@ -2,6 +2,8 @@ import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.MATERIALS_PER_FUEL; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.sHTGR_Fuel; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; @@ -10,50 +12,55 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; public class FormingPress implements Runnable { @Override public void run() { - GT_Values.RA.addFormingPressRecipe( - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials), - Materials.Graphite.getDust(64), - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 1), - 40, - 30); - GT_Values.RA.addFormingPressRecipe( - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 1), - Materials.Silicon.getDust(64), - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 2), - 40, - 30); - GT_Values.RA.addFormingPressRecipe( - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 2), - Materials.Graphite.getDust(64), - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 3), - 40, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials), + Materials.Graphite.getDust(64)) + .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 1)).noFluidInputs() + .noFluidOutputs().duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 1), + Materials.Silicon.getDust(64)) + .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 2)).noFluidInputs() + .noFluidOutputs().duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 2), + Materials.Graphite.getDust(64)) + .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 3)).noFluidInputs() + .noFluidOutputs().duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); int i = 0; for (GT_TileEntity_HTGR.HTGRMaterials.Fuel_ fuel : sHTGR_Fuel) { - GT_Values.RA.addFormingPressRecipe( - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i), - Materials.Carbon.getDust(64), - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 1), - 40, - 30); - GT_Values.RA.addFormingPressRecipe( - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 1), - Materials.Silicon.getDust(64), - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 2), - 40, - 30); - GT_Values.RA.addFormingPressRecipe( - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 2), - Materials.Graphite.getDust(64), - new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 3), - 40, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i), + Materials.Carbon.getDust(64)) + .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 1)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 1), + Materials.Silicon.getDust(64)) + .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 2)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 2), + Materials.Graphite.getDust(64)) + .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 3)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); i += MATERIALS_PER_FUEL; } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java index 7b647d79a..2d6f80ac9 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java @@ -1,24 +1,23 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import com.github.bartimaeusnek.bartworks.common.loaders.BioItemList; -import com.github.bartimaeusnek.bartworks.util.BW_Util; - import gregtech.api.enums.GT_Values; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_Utility; public class LaserEngraver implements Runnable { @Override public void run() { - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack(Items.emerald), - GT_Utility.getIntegratedCircuit(17), - BioItemList.getPlasmidCell(null), - 100, - BW_Util.getMachineVoltageFromTier(1)); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.emerald), GT_Utility.getIntegratedCircuit(17)) + .noItemOutputs().noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sLaserEngraverRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java index 4cf4f691c..4810a396a 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java @@ -3,6 +3,8 @@ import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.MATERIALS_PER_FUEL; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.sHTGR_Fuel; import static gregtech.api.enums.Mods.Gendustry; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidRegistry; @@ -12,11 +14,11 @@ import com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR; import com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_THTR; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -24,40 +26,32 @@ public class Mixer implements Runnable { @Override public void run() { - GT_Values.RA.addMixerRecipe( - WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 10), - Materials.Uranium235.getDust(1), - GT_Utility.getIntegratedCircuit(2), - null, - null, - null, - new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials), - 400, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 10), + Materials.Uranium235.getDust(1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); int i = 0; for (GT_TileEntity_HTGR.HTGRMaterials.Fuel_ fuel : sHTGR_Fuel) { - GT_Values.RA.addMixerRecipe( - new ItemStack[] { fuel.mainItem, fuel.secondaryItem, GT_Utility.getIntegratedCircuit(1) }, - null, - new ItemStack[] { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i) }, - null, - 400, - 30); + GT_Values.RA.stdBuilder().itemInputs(fuel.mainItem, fuel.secondaryItem, GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + i += MATERIALS_PER_FUEL; } if (Gendustry.isModLoaded()) { - GT_Values.RA.addMixerRecipe( - GT_Utility.getIntegratedCircuit(17), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Radon, 1L), - null, - null, - FluidRegistry.getFluidStack("liquiddna", 1000), - new FluidStack(FluidLoader.BioLabFluidMaterials[0], 2000), - Materials.Empty.getCells(1), - 500, - BW_Util.getMachineVoltageFromTier(3)); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(17), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Radon, 1L)) + .itemOutputs(Materials.Empty.getCells(1)) + .fluidInputs(FluidRegistry.getFluidStack("liquiddna", 1000)) + .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[0], 2000)).duration(25 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java index 58c6746a2..dea39b008 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java @@ -1,84 +1,71 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.item.ItemStack; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsUEVplus; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; public class Pulverizer implements Runnable { @Override public void run() { - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 1), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), Materials.Titanium.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(4)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 2), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), Materials.TungstenSteel.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(5)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 3), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), - WerkstoffLoader.LuVTierMaterial.get(OrePrefixes.dust, 8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(6)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 4), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), Materials.Iridium.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(7)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 5), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), Materials.Osmium.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(8)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 13), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), Materials.Neutronium.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(9)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 14), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), Materials.CosmicNeutronium.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(10)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, 15), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), Materials.Infinity.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(11)); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[1], 1, 0), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9), - MaterialsUEVplus.TranscendentMetal.getDust(8) }, - null, - 800, - BW_Util.getMachineVoltageFromTier(12)); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 1)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Titanium.getDust(8)).noFluidInputs() + .noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 2)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.TungstenSteel.getDust(8)).noFluidInputs() + .noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 3)) + .itemOutputs( + Materials.BorosilicateGlass.getDust(9), + WerkstoffLoader.LuVTierMaterial.get(OrePrefixes.dust, 8)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_LuV) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 4)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Iridium.getDust(8)).noFluidInputs() + .noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 5)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Osmium.getDust(8)).noFluidInputs() + .noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 13)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Neutronium.getDust(8)).noFluidInputs() + .noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 14)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.CosmicNeutronium.getDust(8)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_UEV) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 15)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Infinity.getDust(8)).noFluidInputs() + .noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_UIV).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[1], 1, 0)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9), MaterialsUEVplus.TranscendentMetal.getDust(8)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_UMV) + .addTo(sMaceratorRecipes); for (int i = 6; i < 11; i++) { - GT_Values.RA.addPulveriserRecipe( - new ItemStack(ItemRegistry.bw_glasses[0], 1, i), - new ItemStack[] { Materials.BorosilicateGlass.getDust(9) }, - null, - 400, - BW_Util.getMachineVoltageFromTier(1)); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, i)) + .itemOutputs(Materials.BorosilicateGlass.getDust(9)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sMaceratorRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/PyrolyseOven.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/PyrolyseOven.java index 812b90bfb..10a2786b8 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/PyrolyseOven.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/PyrolyseOven.java @@ -3,10 +3,10 @@ import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.common.loaders.FluidLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; public class PyrolyseOven implements Runnable { @@ -19,6 +19,6 @@ public void run() { null, Materials.Oil.getFluid(1000), 105, - BW_Util.getMachineVoltageFromTier(3)); + (int) TierEU.RECIPE_HV); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java index 96e1465c9..bc825fbdb 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java @@ -31,7 +31,6 @@ import com.github.bartimaeusnek.bartworks.common.items.SimpleSubItemClass; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.ChatColorHelper; import com.github.bartimaeusnek.bartworks.util.MathUtils; import com.gtnewhorizon.structurelib.alignment.IAlignmentLimits; @@ -44,6 +43,7 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.Textures; +import gregtech.api.enums.TierEU; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -137,7 +137,7 @@ public class GT_TileEntity_HTGR extends GT_MetaTileEntity_EnhancedMultiBlockBase false, true).useModularUI(true); private static final int HELIUM_NEEDED = 730000; - public static final int powerUsage = BW_Util.getMachineVoltageFromTier(6); + public static final int powerUsage = (int) TierEU.RECIPE_LuV; private static final int maxcapacity = 720000; private static final int mincapacity = maxcapacity / 10; private int HeliumSupply; diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_THTR.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_THTR.java index ed4fbccd8..0bec36aca 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_THTR.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_THTR.java @@ -28,7 +28,6 @@ import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.common.items.SimpleSubItemClass; -import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.MathUtils; import com.gtnewhorizon.structurelib.alignment.IAlignmentLimits; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; @@ -38,6 +37,7 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; import gregtech.api.enums.Textures; +import gregtech.api.enums.TierEU; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -112,7 +112,7 @@ public class GT_TileEntity_THTR extends GT_MetaTileEntity_EnhancedMultiBlockBase .build(); private static final int HELIUM_NEEDED = 730000; - private static final int powerUsage = BW_Util.getMachineVoltageFromTier(5) / 2; + private static final int powerUsage = (int) TierEU.RECIPE_IV / 2; private static final int maxcapacity = 675000; private static final int mincapacity = 100000; private int HeliumSupply; diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java index e80cb2464..4b5802d5e 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java @@ -14,6 +14,9 @@ package com.github.bartimaeusnek.bartworks.system.material; import static gregtech.api.enums.GT_Values.RA; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -44,12 +47,13 @@ public BW_MetaGeneratedFrames(int aID, String aName, String aNameRegional, Werks getStackForm(2), RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "SSS", "SwS", "SSS", 'S', mMaterial.get(OrePrefixes.stick) }); - RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.getVarName(), 4), - ItemList.Circuit_Integrated.getWithDamage(0, 4), - getStackForm(1), - 64, - 8); + + RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.getVarName(), 4), + ItemList.Circuit_Integrated.getWithDamage(0, 4)) + .itemOutputs(getStackForm(1)).noFluidInputs().noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8) + .addTo(sAssemblerRecipes); } private BW_MetaGeneratedFrames(String aName, Werkstoff aMaterial) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java index cc321e0fc..ac51f8add 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java @@ -13,6 +13,9 @@ package com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import java.util.ArrayList; import java.util.BitSet; import java.util.HashSet; @@ -43,6 +46,7 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SubTag; import gregtech.api.enums.TC_Aspects; +import gregtech.api.enums.TierEU; import gregtech.api.interfaces.IItemBehaviour; import gregtech.api.interfaces.IItemContainer; import gregtech.api.items.GT_MetaBase_Item; @@ -66,12 +70,14 @@ public static BW_Meta_Items.BW_GT_MetaGenCircuits getNEWCIRCUITS() { BW_Meta_Items.NEWCIRCUITS.addItem(1, "Sliced Circuit", "", SubTag.NO_UNIFICATION, SubTag.NO_RECYCLING); BW_Meta_Items.NEWCIRCUITS.addItem(2, "Raw Imprint supporting Board", "A Raw Board needed for Circuit Imprints"); BW_Meta_Items.NEWCIRCUITS.addItem(3, "Imprint supporting Board", "A Board needed for Circuit Imprints"); - GT_Values.RA.addFormingPressRecipe( - WerkstoffLoader.MagnetoResonaticDust.get(OrePrefixes.dust, 1), - WerkstoffLoader.ArInGaPhoBiBoTe.get(OrePrefixes.dust, 4), - BW_Meta_Items.NEWCIRCUITS.getStack(2), - 300, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + WerkstoffLoader.MagnetoResonaticDust.get(OrePrefixes.dust, 1), + WerkstoffLoader.ArInGaPhoBiBoTe.get(OrePrefixes.dust, 4)) + .itemOutputs(BW_Meta_Items.NEWCIRCUITS.getStack(2)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sPressRecipes); + GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes.add( new BWRecipes.DynamicGTRecipe( false, @@ -82,7 +88,7 @@ public static BW_Meta_Items.BW_GT_MetaGenCircuits getNEWCIRCUITS() { new FluidStack[] { Materials.SolderingAlloy.getMolten(576) }, null, 300, - BW_Util.getMachineVoltageFromTier(4), + (int) TierEU.RECIPE_EV, BW_Util.CLEANROOM)); } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java index d7cf48066..bfa773dc4 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java @@ -91,6 +91,8 @@ import static gregtech.api.enums.ItemList.Optically_Compatible_Memory; import static gregtech.api.enums.ItemList.Optically_Perfected_CPU; import static gregtech.api.enums.ItemList.values; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.util.ArrayList; import java.util.Arrays; @@ -105,6 +107,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Utility; @@ -150,12 +153,12 @@ public static void makeCircuitParts() { String localised = GT_LanguageManager .getTranslation(GT_LanguageManager.getTranslateableItemStackName(itemStack)); BW_Meta_Items.getNEWCIRCUITS().addItem(CircuitImprintLoader.reverseIDs, "Wrap of " + localised + "s", tt); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { single.get(16).copy(), GT_Utility.getIntegratedCircuit(16) }, - Materials.Plastic.getMolten(72), - BW_Meta_Items.getNEWCIRCUITS().getStack(CircuitImprintLoader.reverseIDs), - 600, - 30); + + GT_Values.RA.stdBuilder().itemInputs(single.get(16).copy(), GT_Utility.getIntegratedCircuit(16)) + .itemOutputs(BW_Meta_Items.getNEWCIRCUITS().getStack(CircuitImprintLoader.reverseIDs)) + .fluidInputs(Materials.Plastic.getMolten(72)).noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + CircuitImprintLoader.circuitIIconRefs.put(CircuitImprintLoader.reverseIDs, single); CircuitImprintLoader.reverseIDs--; } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java index 32c88c9e5..e04b37a5f 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java @@ -14,6 +14,8 @@ package com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement; import static gregtech.api.enums.Mods.Forestry; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; import java.util.stream.Collectors; @@ -58,16 +60,14 @@ public static void init() { GT_ModHandler.getModItem(Forestry.ID, "refractoryEmpty", 1)); FluidContainerRegistry.registerFluidContainer(emptyData); GT_Utility.addFluidContainerData(emptyData); - GT_Values.RA.addFluidCannerRecipe( - GT_ModHandler.getModItem(Forestry.ID, "refractoryEmpty", 1), - new ItemStack(moltenCapsuls, 1, i), - m.getMolten(144), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - new ItemStack(moltenCapsuls, 1, i), - GT_Values.NI, - GT_Values.NF, - m.getMolten(144)); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getModItem(Forestry.ID, "refractoryEmpty", 1)) + .itemOutputs(new ItemStack(moltenCapsuls, 1, i)).fluidInputs(m.getMolten(144)).noFluidOutputs() + .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(moltenCapsuls, 1, i)).noItemOutputs().noFluidInputs() + .fluidOutputs(m.getMolten(144)).duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + } if (m.getFluid(1) == null && m.getGas(1) == null) continue; if (OreDictionary.doesOreNameExist("capsule" + m.mName)) continue; @@ -91,13 +91,14 @@ private static void addFluidData(Materials m, ItemStack container, Item filled, container); FluidContainerRegistry.registerFluidContainer(emptyData); GT_Utility.addFluidContainerData(emptyData); - GT_Values.RA - .addFluidCannerRecipe(container, new ItemStack(filled, 1, it), new FluidStack(f, amount), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - new ItemStack(filled, 1, it), - empty ? GT_Values.NI : container, - GT_Values.NF, - new FluidStack(f, amount)); + + GT_Values.RA.stdBuilder().itemInputs(container).itemOutputs(new ItemStack(filled, 1, it)) + .fluidInputs(new FluidStack(f, amount)).noFluidOutputs().duration(amount / 62).eut(2) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(filled, 1, it)).noItemOutputs().noFluidInputs() + .fluidOutputs(new FluidStack(f, amount)).duration(amount / 62).eut(2).addTo(sFluidCannerRecipes); + } public static void addAdditionalOreDictToForestry() { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java index e384e61d3..e4fa5bf8a 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java @@ -72,6 +72,16 @@ import static gregtech.api.enums.OrePrefixes.dustTiny; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.nugget; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSifterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; import java.lang.reflect.Field; import java.util.ArrayList; @@ -106,6 +116,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.interfaces.ISubTagContainer; import gregtech.api.items.GT_Generic_Block; import gregtech.api.items.GT_Generic_Item; @@ -131,123 +142,80 @@ private PlatinumSludgeOverHaul() {} private static void runHelperrecipes() { // DilutedSulfuricAcid // 2H2SO4 + H2O = 3H2SO4(d) - GT_Values.RA.addMixerRecipe( - Materials.SulfuricAcid.getCells(2), - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(1), - null, - null, - null, - Materials.DilutedSulfuricAcid.getCells(3), - 30, - 30); - GT_Values.RA.addMixerRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(1), - null, - null, - Materials.SulfuricAcid.getFluid(2000), - Materials.DilutedSulfuricAcid.getFluid(3000), - Materials.Empty.getCells(1), - 30, - 30); - GT_Values.RA.addMixerRecipe( - Materials.SulfuricAcid.getCells(2), - GT_Utility.getIntegratedCircuit(1), - null, - null, - Materials.Water.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(3000), - Materials.Empty.getCells(2), - 30, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.SulfuricAcid.getCells(2), + Materials.Water.getCells(1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(3)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.SulfuricAcid.getFluid(2000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(3000)).duration(1 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(3000)).duration(1 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); // FormicAcid // CO + NaOH = CHO2Na - GT_Values.RA.addChemicalRecipe( - Materials.CarbonMonoxide.getCells(1), - Materials.SodiumHydroxide.getDust(3), - null, - null, - Sodiumformate.get(cell), - null, - 15); + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), Materials.SodiumHydroxide.getDust(3)) + .itemOutputs(Sodiumformate.get(cell)).noFluidInputs().noFluidOutputs().duration(15 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // H2SO4 + 2CHO2Na = 2CH2O2 + Na2SO4 - GT_Values.RA.addChemicalRecipe( - Sodiumformate.get(cell, 2), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(1000), - null, - FormicAcid.get(cell, 2), - Sodiumsulfate.get(dust, 7), - 15); - GT_Values.RA.addChemicalRecipe( - Materials.SulfuricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Sodiumformate.getFluidOrGas(2000), - FormicAcid.getFluidOrGas(2000), - Materials.Empty.getCells(1), - Sodiumsulfate.get(dust, 7), - 15); - // AquaRegia - GT_Values.RA.addMixerRecipe( - Materials.DilutedSulfuricAcid.getCells(1), - Materials.NitricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - null, - null, - null, - AquaRegia.get(cell, 2), - 30, - 30); - GT_Values.RA.addMixerRecipe( - Materials.DilutedSulfuricAcid.getCells(1), - Materials.NitricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(2), - null, - null, - AquaRegia.getFluidOrGas(2000), - Materials.Empty.getCells(2), - 30, - 30); - GT_Values.RA.addMixerRecipe( - Materials.NitricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(3), - null, - null, - Materials.DilutedSulfuricAcid.getFluid(1000), - AquaRegia.getFluidOrGas(2000), - Materials.Empty.getCells(1), - 30, - 30); - GT_Values.RA.addMixerRecipe( - Materials.DilutedSulfuricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(4), - null, - null, - Materials.NitricAcid.getFluid(1000), - AquaRegia.getFluidOrGas(2000), - Materials.Empty.getCells(1), - 30, - 30); - // AmmoniumCloride + GT_Values.RA.stdBuilder().itemInputs(Sodiumformate.get(cell, 2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(FormicAcid.get(cell, 2), Sodiumsulfate.get(dust, 7)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)).noFluidOutputs().duration(15 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1), Sodiumsulfate.get(dust, 7)) + .fluidInputs(Sodiumformate.getFluidOrGas(2000)).fluidOutputs(FormicAcid.getFluidOrGas(2000)) + .duration(15 * TICKS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + // AquaRegia + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.DilutedSulfuricAcid.getCells(1), + Materials.NitricAcid.getCells(1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(AquaRegia.get(cell, 2)).noFluidInputs().noFluidOutputs().duration(1 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.DilutedSulfuricAcid.getCells(1), + Materials.NitricAcid.getCells(1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(2)).noFluidInputs().fluidOutputs(AquaRegia.getFluidOrGas(2000)) + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitricAcid.getCells(1), GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.DilutedSulfuricAcid.getFluid(1000)) + .fluidOutputs(AquaRegia.getFluidOrGas(2000)).duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.DilutedSulfuricAcid.getCells(1), GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.NitricAcid.getFluid(1000)) + .fluidOutputs(AquaRegia.getFluidOrGas(2000)).duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(sMixerRecipes); + + // AmmoniumChloride // NH3 + HCl = NH4Cl - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.HydrochloricAcid.getFluid(1000), - null, - AmmoniumChloride.get(cell, 1), - null, - 15); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Ammonia.getGas(1000), - AmmoniumChloride.getFluidOrGas(1000), - Materials.Empty.getCells(1), - null, - 15); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(AmmoniumChloride.get(cell, 1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .noFluidOutputs().duration(15 * TICKS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Ammonia.getGas(1000)) + .fluidOutputs(AmmoniumChloride.getFluidOrGas(1000)).duration(15 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + GT_Values.RA.addMultiblockChemicalRecipe( new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, new FluidStack[] { Materials.Ammonia.getGas(64000), Materials.HydrochloricAcid.getFluid(64000) }, @@ -255,96 +223,82 @@ private static void runHelperrecipes() { null, 60, 480); - // base sollution + // base solution for (Werkstoff w : Werkstoff.werkstoffHashSet) if (w.containsStuff(Materials.Sulfur) && (w.containsStuff(Materials.Copper) || w.containsStuff(Materials.Nickel))) { - GT_Values.RA.addChemicalRecipe( - w.get(crushedPurified), - GT_Utility.getIntegratedCircuit(1), - AquaRegia.getFluidOrGas(150), - PTConcentrate.getFluidOrGas(150), - null, - 250); - GT_Values.RA.addChemicalRecipe( - w.get(crushedPurified, 9), - GT_Utility.getIntegratedCircuit(9), - AquaRegia.getFluidOrGas(1350), - PTConcentrate.getFluidOrGas(1350), - null, - 2250); - GT_Values.RA.addChemicalRecipe( - w.get(crushedPurified, 9), - PTMetallicPowder.get(dust, 9), - AquaRegia.getFluidOrGas(10350), - PTConcentrate.getFluidOrGas(10350), - PTResidue.get(dust), - 2250); + + GT_Values.RA.stdBuilder().itemInputs(w.get(crushedPurified), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(AquaRegia.getFluidOrGas(150)) + .fluidOutputs(PTConcentrate.getFluidOrGas(150)).duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(w.get(crushedPurified, 9), GT_Utility.getIntegratedCircuit(9)) + .noItemOutputs().fluidInputs(AquaRegia.getFluidOrGas(1350)) + .fluidOutputs(PTConcentrate.getFluidOrGas(1350)).duration(11 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(w.get(crushedPurified, 9), PTMetallicPowder.get(dust, 9)) + .itemOutputs(PTResidue.get(dust)).fluidInputs(AquaRegia.getFluidOrGas(10350)) + .fluidOutputs(PTConcentrate.getFluidOrGas(10350)) + .duration(1 * MINUTES + 52 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + } for (Materials m : Materials.values()) if (PlatinumSludgeOverHaul.materialsContains(m, Materials.Sulfur) && (PlatinumSludgeOverHaul.materialsContains(m, Materials.Copper) || PlatinumSludgeOverHaul.materialsContains(m, Materials.Nickel))) { - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(crushedPurified, m, 1), - GT_Utility.getIntegratedCircuit(1), - AquaRegia.getFluidOrGas(150), - PTConcentrate.getFluidOrGas(150), - null, - 250); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(crushedPurified, m, 9), - GT_Utility.getIntegratedCircuit(9), - AquaRegia.getFluidOrGas(1350), - PTConcentrate.getFluidOrGas(1350), - null, - 2250); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(crushedPurified, m, 9), - PTMetallicPowder.get(dust, 9), - AquaRegia.getFluidOrGas(10350), - PTConcentrate.getFluidOrGas(10350), - PTResidue.get(dust), - 2250); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(crushedPurified, m, 1), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(AquaRegia.getFluidOrGas(150)) + .fluidOutputs(PTConcentrate.getFluidOrGas(150)).duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(crushedPurified, m, 9), + GT_Utility.getIntegratedCircuit(9)) + .noItemOutputs().fluidInputs(AquaRegia.getFluidOrGas(1350)) + .fluidOutputs(PTConcentrate.getFluidOrGas(1350)) + .duration(1 * MINUTES + 52 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(crushedPurified, m, 9), + PTMetallicPowder.get(dust, 9)) + .itemOutputs(PTResidue.get(dust)).fluidInputs(AquaRegia.getFluidOrGas(10350)) + .fluidOutputs(PTConcentrate.getFluidOrGas(10350)) + .duration(1 * MINUTES + 52 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + } // Pt - GT_Values.RA.addBlastRecipe( - PTMetallicPowder.get(dust, 3), - GT_Utility.getIntegratedCircuit(1), - null, - null, - Materials.Platinum.getNuggets(2), - null, - 600, - 120, - Materials.Platinum.mMeltingPoint); + GT_Values.RA.stdBuilder().itemInputs(PTMetallicPowder.get(dust, 3), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Platinum.getNuggets(2)).noFluidInputs().noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, Materials.Platinum.mMeltingPoint).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(PTMetallicPowder.get(dust), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(PTResidue.get(dustTiny)).fluidInputs(AquaRegia.getFluidOrGas(1000)) + .fluidOutputs(PTConcentrate.getFluidOrGas(1000)).duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(PTMetallicPowder.get(dust, 9), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(PTResidue.get(dust)).fluidInputs(AquaRegia.getFluidOrGas(9000)) + .fluidOutputs(PTConcentrate.getFluidOrGas(9000)).duration(1 * MINUTES + 52 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(PTConcentrate.get(cell, 2)) + .itemOutputs( + PTSaltCrude.get(dustTiny, 16), + PTRawPowder.get(dustTiny, 4), + Materials.NitrogenDioxide.getCells(1), + Materials.DilutedSulfuricAcid.getCells(1)) + .fluidInputs(AmmoniumChloride.getFluidOrGas(400)).fluidOutputs(PDAmmonia.getFluidOrGas(400)) + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); - GT_Values.RA.addChemicalRecipe( - PTMetallicPowder.get(dust), - GT_Utility.getIntegratedCircuit(1), - AquaRegia.getFluidOrGas(1000), - PTConcentrate.getFluidOrGas(1000), - PTResidue.get(dustTiny), - 250); - GT_Values.RA.addChemicalRecipe( - PTMetallicPowder.get(dust, 9), - GT_Utility.getIntegratedCircuit(9), - AquaRegia.getFluidOrGas(9000), - PTConcentrate.getFluidOrGas(9000), - PTResidue.get(dust), - 2250); - GT_Values.RA.addCentrifugeRecipe( - PTConcentrate.get(cell, 2), - null, - AmmoniumChloride.getFluidOrGas(400), - PDAmmonia.getFluidOrGas(400), - PTSaltCrude.get(dustTiny, 16), - PTRawPowder.get(dustTiny, 4), - Materials.NitrogenDioxide.getCells(1), - Materials.DilutedSulfuricAcid.getCells(1), - null, - null, - null, - 1200, - 30); GT_Values.RA.addMultiblockChemicalRecipe( new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { PTConcentrate.getFluidOrGas(2000), AmmoniumChloride.getFluidOrGas(400) }, @@ -361,72 +315,64 @@ private static void runHelperrecipes() { new ItemStack[] { PTSaltCrude.get(dust, 16), PTRawPowder.get(dust, 4) }, 1400, 240); - GT_Values.RA.addSifterRecipe( - PTSaltCrude.get(dust), - new ItemStack[] { PTSaltRefined.get(dust), PTSaltRefined.get(dust), PTSaltRefined.get(dust), - PTSaltRefined.get(dust), PTSaltRefined.get(dust), PTSaltRefined.get(dust), - PTSaltRefined.get(dust), PTSaltRefined.get(dust), PTSaltRefined.get(dust), }, - new int[] { 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500, }, - 600, - 30); - GT_Values.RA.addBlastRecipe( - PTSaltRefined.get(dust), - GT_Utility.getIntegratedCircuit(1), - null, - Materials.Chlorine.getGas(87), - PTMetallicPowder.get(dust), - null, - 200, - 120, - 900); + + GT_Values.RA.stdBuilder().itemInputs(PTSaltCrude.get(dust)) + .itemOutputs( + PTSaltRefined.get(dust), + PTSaltRefined.get(dust), + PTSaltRefined.get(dust), + PTSaltRefined.get(dust), + PTSaltRefined.get(dust), + PTSaltRefined.get(dust), + PTSaltRefined.get(dust), + PTSaltRefined.get(dust), + PTSaltRefined.get(dust)) + .outputChances(1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sSifterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(PTSaltRefined.get(dust), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(PTMetallicPowder.get(dust)).noFluidInputs().fluidOutputs(Materials.Chlorine.getGas(87)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 900).addTo(sBlastRecipes); + // 2PtCl + Ca = 2Pt + CaCl2 - GT_Values.RA.addChemicalRecipe( - PTRawPowder.get(dust, 4), - Materials.Calcium.getDust(1), - null, - null, - Materials.Platinum.getDust(2), - CalciumChloride.get(dust, 3), - 30); + + GT_Values.RA.stdBuilder().itemInputs(PTRawPowder.get(dust, 4), Materials.Calcium.getDust(1)) + .itemOutputs(Materials.Platinum.getDust(2), CalciumChloride.get(dust, 3)).noFluidInputs() + .noFluidOutputs().duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // Pd - GT_Values.RA.addChemicalRecipe( - PDMetallicPowder.get(dust), - GT_Utility.getIntegratedCircuit(1), - Materials.Ammonia.getGas(1000), - PDAmmonia.getFluidOrGas(1000), - null, - 250); - GT_Values.RA.addChemicalRecipe( - PDMetallicPowder.get(dust), - GT_Utility.getIntegratedCircuit(1), - PDAmmonia.getFluidOrGas(1000), - null, - PDSalt.get(dustTiny, 16), - PDRawPowder.get(dustTiny, 2), - 250); - GT_Values.RA.addChemicalRecipe( - PDMetallicPowder.get(dust, 9), - GT_Utility.getIntegratedCircuit(9), - PDAmmonia.getFluidOrGas(9000), - null, - PDSalt.get(dust, 16), - PDRawPowder.get(dust, 2), - 2250); - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - null, - PDAmmonia.getFluidOrGas(1000), - null, - PDSalt.get(dust), - 250); - GT_Values.RA.addSifterRecipe( - PDSalt.get(dust), - new ItemStack[] { PDMetallicPowder.get(dust), PDMetallicPowder.get(dust), PDMetallicPowder.get(dust), - PDMetallicPowder.get(dust), PDMetallicPowder.get(dust), PDMetallicPowder.get(dust), - PDMetallicPowder.get(dust), PDMetallicPowder.get(dust), PDMetallicPowder.get(dust), }, - new int[] { 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500, }, - 600, - 30); + + GT_Values.RA.stdBuilder().itemInputs(PDMetallicPowder.get(dust), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Ammonia.getGas(1000)).fluidOutputs(PDAmmonia.getFluidOrGas(1000)) + .duration(12 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(PDMetallicPowder.get(dust), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(PDSalt.get(dustTiny, 16), PDRawPowder.get(dustTiny, 2)) + .fluidInputs(PDAmmonia.getFluidOrGas(1000)).noFluidOutputs().duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(PDMetallicPowder.get(dust, 9), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(PDSalt.get(dust, 16), PDRawPowder.get(dust, 2)).fluidInputs(PDAmmonia.getFluidOrGas(9000)) + .noFluidOutputs().duration(1 * MINUTES + 52 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).itemOutputs(PDSalt.get(dust)) + .fluidInputs(PDAmmonia.getFluidOrGas(1000)).noFluidOutputs().duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(PDSalt.get(dust)) + .itemOutputs( + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust), + PDMetallicPowder.get(dust)) + .outputChances(1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sSifterRecipes); + GT_Values.RA.addChemicalRecipeForBasicMachineOnly( PDRawPowder.get(dust, 4), Materials.Empty.getCells(1), @@ -445,53 +391,37 @@ private static void runHelperrecipes() { 250, 30); // Na2SO4 + 2H = 2Na + H2SO4 - GT_Values.RA.addChemicalRecipe( - Sodiumsulfate.get(dust, 7), - Materials.Hydrogen.getCells(2), - null, - Materials.SulfuricAcid.getFluid(1000), - Materials.Sodium.getDust(2), - Materials.Empty.getCells(2), - 30); + + GT_Values.RA.stdBuilder().itemInputs(Sodiumsulfate.get(dust, 7), Materials.Hydrogen.getCells(2)) + .itemOutputs(Materials.Sodium.getDust(2), Materials.Empty.getCells(2)).noFluidInputs() + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(1 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + // K2S2O7 // GT_Values.RA.addChemicalRecipe(Sodiumsulfate.get(dust), Materials.Potassium.getDust(2), // Materials.Oxygen.getGas(3000), null, PotassiumDisulfate.get(dust,6), null, 30); // Rh/Os/Ir/Ru - GT_Values.RA.addBlastRecipe( - PTResidue.get(dust), - GT_Utility.getIntegratedCircuit(11), - PotassiumDisulfate.getMolten(360), - RHSulfate.getFluidOrGas(360), - LeachResidue.get(dust), - null, - 200, - 120, - 775); + GT_Values.RA.stdBuilder().itemInputs(PTResidue.get(dust), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(LeachResidue.get(dust)).fluidInputs(PotassiumDisulfate.getMolten(360)) + .fluidOutputs(RHSulfate.getFluidOrGas(360)).duration(10 * SECONDS).eut(TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 775).addTo(sBlastRecipes); // Ru - GT_Values.RA.addBlastRecipe( - LeachResidue.get(dust, 10), - Materials.Saltpeter.getDust(10), - Materials.SaltWater.getFluid(1000), - GT_ModHandler.getSteam(1000), - SodiumRuthenate.get(dust, 3), - IrOsLeachResidue.get(dust, 6), - 200, - 120, - 775); - GT_Values.RA.addChemicalRecipe( - SodiumRuthenate.get(dust, 6), - Materials.Chlorine.getCells(3), - null, - RutheniumTetroxideSollution.getFluidOrGas(9000), - Materials.Empty.getCells(3), - 300); - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - RutheniumTetroxideSollution.getFluidOrGas(800), - HotRutheniumTetroxideSollution.getFluidOrGas(800), - 300, - 480); + GT_Values.RA.stdBuilder().itemInputs(LeachResidue.get(dust, 10), Materials.Saltpeter.getDust(10)) + .itemOutputs(SodiumRuthenate.get(dust, 3), IrOsLeachResidue.get(dust, 6)) + .fluidInputs(Materials.SaltWater.getFluid(1000)).fluidOutputs(GT_ModHandler.getSteam(1000)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 775).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(SodiumRuthenate.get(dust, 6), Materials.Chlorine.getCells(3)) + .itemOutputs(Materials.Empty.getCells(3)).noFluidInputs() + .fluidOutputs(RutheniumTetroxideSollution.getFluidOrGas(9000)).duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(RutheniumTetroxideSollution.getFluidOrGas(800)) + .fluidOutputs(HotRutheniumTetroxideSollution.getFluidOrGas(800)).duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidHeaterRecipes); + GT_Values.RA.addCrackingRecipe( 17, RutheniumTetroxideSollution.getFluidOrGas(1000), @@ -505,88 +435,56 @@ private static void runHelperrecipes() { Materials.Salt.getDust(6), 1500, 480); - GT_Values.RA.addChemicalRecipe( - RutheniumTetroxide.get(dust, 1), - Materials.HydrochloricAcid.getCells(6), - null, - Materials.Water.getFluid(2000), - Ruthenium.get(dust), - Materials.Chlorine.getCells(6), - 300); + + GT_Values.RA.stdBuilder().itemInputs(RutheniumTetroxide.get(dust, 1), Materials.HydrochloricAcid.getCells(6)) + .itemOutputs(Ruthenium.get(dust), Materials.Chlorine.getCells(6)).noFluidInputs() + .fluidOutputs(Materials.Water.getFluid(2000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // Os - GT_Values.RA.addBlastRecipe( - IrOsLeachResidue.get(dust, 4), - GT_Utility.getIntegratedCircuit(11), - Materials.HydrochloricAcid.getFluid(1000), - AcidicOsmiumSolution.getFluidOrGas(2000), - IrLeachResidue.get(dust, 2), - null, - 200, - 120, - 775); + GT_Values.RA.stdBuilder().itemInputs(IrOsLeachResidue.get(dust, 4), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(IrLeachResidue.get(dust, 2)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(AcidicOsmiumSolution.getFluidOrGas(2000)).duration(10 * SECONDS).eut(TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 775).addTo(sBlastRecipes); + GT_Values.RA.addDistillationTowerRecipe( AcidicOsmiumSolution.getFluidOrGas(1000), new FluidStack[] { OsmiumSolution.getFluidOrGas(100), Materials.Water.getFluid(900) }, null, 150, - BW_Util.getMachineVoltageFromTier(5)); - GT_Values.RA.addChemicalRecipe( - OsmiumSolution.get(cell), - Materials.HydrochloricAcid.getCells(6), - null, - Materials.Water.getFluid(2000), - Materials.Osmium.getDust(1), - Materials.Chlorine.getCells(7), - 300); + (int) TierEU.RECIPE_IV); - // Ir - GT_Values.RA.addBlastRecipe( - IrLeachResidue.get(dust), - GT_Utility.getIntegratedCircuit(1), - null, - null, - PGSDResidue.get(dust), - IridiumDioxide.get(dust), - 200, - 120, - 775); - GT_Values.RA.addChemicalRecipe( - IridiumDioxide.get(dust), - Materials.HydrochloricAcid.getCells(1), - null, - AcidicIridiumSolution.getFluidOrGas(1000), - Materials.Empty.getCells(1), - null, - 300); - GT_Values.RA.addChemicalRecipe( - AcidicIridiumSolution.get(cell), - AmmoniumChloride.get(cell, 3), - null, - Materials.Ammonia.getGas(3000), - Materials.Empty.getCells(4), - IridiumChloride.get(dust), - 300); - GT_Values.RA.addChemicalRecipe( - IridiumChloride.get(dust), - Materials.Calcium.getDust(1), - null, - CalciumChloride.getFluidOrGas(3000), - PGSDResidue2.get(dust), - Materials.Iridium.getDust(1), - 300, - 1920); + GT_Values.RA.stdBuilder().itemInputs(OsmiumSolution.get(cell), Materials.HydrochloricAcid.getCells(6)) + .itemOutputs(Materials.Osmium.getDust(1), Materials.Chlorine.getCells(7)).noFluidInputs() + .fluidOutputs(Materials.Water.getFluid(2000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + // Ir + GT_Values.RA.stdBuilder().itemInputs(IrLeachResidue.get(dust), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(PGSDResidue.get(dust), IridiumDioxide.get(dust)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 775).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(IridiumDioxide.get(dust), Materials.HydrochloricAcid.getCells(1)) + .itemOutputs(Materials.Empty.getCells(1)).noFluidInputs() + .fluidOutputs(AcidicIridiumSolution.getFluidOrGas(1000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(AcidicIridiumSolution.get(cell), AmmoniumChloride.get(cell, 3)) + .itemOutputs(Materials.Empty.getCells(4), IridiumChloride.get(dust)).noFluidInputs() + .fluidOutputs(Materials.Ammonia.getGas(3000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(IridiumChloride.get(dust), Materials.Calcium.getDust(1)) + .itemOutputs(PGSDResidue2.get(dust), Materials.Iridium.getDust(1)).noFluidInputs() + .fluidOutputs(CalciumChloride.getFluidOrGas(3000)).duration(15 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(UniversalChemical); // Rh - GT_Values.RA.addChemicalRecipe( - RHSulfate.get(cell, 11), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(10000), - Materials.Potassium.getMolten(2000), - RHSulfateSolution.get(cell, 11), - LeachResidue.get(dustTiny, 10), - 300, - 30); + + GT_Values.RA.stdBuilder().itemInputs(RHSulfate.get(cell, 11), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(RHSulfateSolution.get(cell, 11), LeachResidue.get(dustTiny, 10)) + .fluidInputs(Materials.Water.getFluid(10000)).fluidOutputs(Materials.Potassium.getMolten(2000)) + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + GT_Values.RA.addMultiblockChemicalRecipe( new ItemStack[] { GT_Utility.getIntegratedCircuit(3) }, new FluidStack[] { Materials.Water.getFluid(36000), RHSulfate.getFluidOrGas(39600) }, @@ -595,85 +493,56 @@ private static void runHelperrecipes() { 1200, 30); - GT_Values.RA.addChemicalRecipe( - Materials.Zinc.getDust(1), - null, - RHSulfateSolution.getFluidOrGas(1000), - null, - ZincSulfate.get(dust, 6), - CrudeRhMetall.get(dust), - 300); - GT_Values.RA.addBlastRecipe( - CrudeRhMetall.get(dust), - Materials.Salt.getDust(1), - Materials.Chlorine.getGas(1000), - null, - RHSalt.get(dust, 3), - null, - 300, - 120, - 600); - GT_Values.RA.addMixerRecipe( - RHSalt.get(dust, 10), - null, - null, - null, - Materials.Water.getFluid(2000), - RHSaltSolution.getFluidOrGas(2000), - null, - 300, - 30); - GT_Values.RA.addChemicalRecipe( - SodiumNitrate.get(dust, 5), - GT_Utility.getIntegratedCircuit(1), - RHSaltSolution.getFluidOrGas(1000), - null, - RHNitrate.get(dust), - Materials.Salt.getDust(2), - 300); + GT_Values.RA.stdBuilder().itemInputs(Materials.Zinc.getDust(1)) + .itemOutputs(ZincSulfate.get(dust, 6), CrudeRhMetall.get(dust)) + .fluidInputs(RHSulfateSolution.getFluidOrGas(1000)).noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(CrudeRhMetall.get(dust), Materials.Salt.getDust(1)) + .itemOutputs(RHSalt.get(dust, 3)).fluidInputs(Materials.Chlorine.getGas(1000)).noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 600).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(RHSalt.get(dust, 10)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(2000)).fluidOutputs(RHSaltSolution.getFluidOrGas(2000)) + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(SodiumNitrate.get(dust, 5), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(RHNitrate.get(dust), Materials.Salt.getDust(2)) + .fluidInputs(RHSaltSolution.getFluidOrGas(1000)).noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // Na + HNO3 = NaNO3 + H - GT_Values.RA.addChemicalRecipe( - Materials.Sodium.getDust(1), - GT_Values.NI, - Materials.NitricAcid.getFluid(1000), - Materials.Hydrogen.getGas(1000), - SodiumNitrate.get(dust, 5), - 8, - 60); - GT_Values.RA.addSifterRecipe( - RHNitrate.get(dust), - new ItemStack[] { RhFilterCake.get(dust), RhFilterCake.get(dust), RhFilterCake.get(dust), - RhFilterCake.get(dust), RhFilterCake.get(dust), RhFilterCake.get(dust), RhFilterCake.get(dust), - RhFilterCake.get(dust), RhFilterCake.get(dust), }, - new int[] { 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500, }, - 600, - 30); - GT_Values.RA.addMixerRecipe( - RhFilterCake.get(dust), - null, - null, - null, - Materials.Water.getFluid(1000), - RHFilterCakeSolution.getFluidOrGas(1000), - null, - 300, - 30); - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - null, - RHFilterCakeSolution.getFluidOrGas(1000), - null, - ReRh.get(dust), - null, - 300); - GT_Values.RA.addChemicalRecipe( - ReRh.get(dust), - Materials.Empty.getCells(1), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chlorine.getGas(1000), - Rhodium.get(dust), - Materials.Ammonia.getCells(1), - 300); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sodium.getDust(1)).itemOutputs(SodiumNitrate.get(dust, 5)) + .fluidInputs(Materials.NitricAcid.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getGas(1000)) + .duration(8 * TICKS).eut(60).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(RHNitrate.get(dust)) + .itemOutputs( + RhFilterCake.get(dust), + RhFilterCake.get(dust), + RhFilterCake.get(dust), + RhFilterCake.get(dust), + RhFilterCake.get(dust), + RhFilterCake.get(dust), + RhFilterCake.get(dust), + RhFilterCake.get(dust), + RhFilterCake.get(dust)) + .outputChances(1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sSifterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(RhFilterCake.get(dust)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(RHFilterCakeSolution.getFluidOrGas(1000)) + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).itemOutputs(ReRh.get(dust)) + .fluidInputs(RHFilterCakeSolution.getFluidOrGas(1000)).noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(ReRh.get(dust), Materials.Empty.getCells(1)) + .itemOutputs(Rhodium.get(dust), Materials.Ammonia.getCells(1)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)).fluidOutputs(Materials.Chlorine.getGas(1000)) + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + } private static boolean materialsContains(Materials one, ISubTagContainer other) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java index a76364faa..bc35f0656 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java @@ -15,6 +15,10 @@ import static gregtech.api.enums.OrePrefixes.dust; import static gregtech.api.enums.OrePrefixes.dustSmall; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import com.github.bartimaeusnek.bartworks.system.material.BW_NonMeta_MaterialItems; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; @@ -22,70 +26,59 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_OreDictUnificator; public class AddSomeRecipes implements Runnable { public void run() { - GT_Values.RA.addCentrifugeRecipe( - BW_NonMeta_MaterialItems.Depleted_Tiberium_1.get(1), - null, - null, - WerkstoffLoader.Xenon.getFluidOrGas(1), - WerkstoffLoader.Zirconium.get(dust), - WerkstoffLoader.Zirconium.get(dust), - WerkstoffLoader.Tiberium.get(dustSmall, 2), - WerkstoffLoader.Zirconium.get(dust, 2), - GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 8L), - GT_OreDictUnificator.get(dust, Materials.Platinum, 1L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 250, - 2000); + GT_Values.RA.stdBuilder().itemInputs(BW_NonMeta_MaterialItems.Depleted_Tiberium_1.get(1)) + .itemOutputs( + WerkstoffLoader.Zirconium.get(dust), + WerkstoffLoader.Zirconium.get(dust), + WerkstoffLoader.Tiberium.get(dustSmall, 2), + WerkstoffLoader.Zirconium.get(dust, 2), + GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 8L), + GT_OreDictUnificator.get(dust, Materials.Platinum, 1L)) + .outputChances(100_00, 50_00, 50_00, 25_00, 100_00, 100_00).noFluidInputs() + .fluidOutputs(WerkstoffLoader.Xenon.getFluidOrGas(1)).duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_EV).addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - BW_NonMeta_MaterialItems.Depleted_Tiberium_2.get(1), - null, - null, - WerkstoffLoader.Xenon.getFluidOrGas(2), - WerkstoffLoader.Zirconium.get(dust, 2), - WerkstoffLoader.Zirconium.get(dust, 2), - WerkstoffLoader.Tiberium.get(dust), - WerkstoffLoader.Zirconium.get(dust, 4), - GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 18L), - GT_OreDictUnificator.get(dust, Materials.Platinum, 2L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 500, - 2000); + GT_Values.RA.stdBuilder().itemInputs(BW_NonMeta_MaterialItems.Depleted_Tiberium_2.get(1)) + .itemOutputs( + WerkstoffLoader.Zirconium.get(dust, 2), + WerkstoffLoader.Zirconium.get(dust, 2), + WerkstoffLoader.Tiberium.get(dust), + WerkstoffLoader.Zirconium.get(dust, 4), + GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 18L), + GT_OreDictUnificator.get(dust, Materials.Platinum, 2L)) + .outputChances(100_00, 50_00, 50_00, 25_00, 100_00, 100_00).noFluidInputs() + .fluidOutputs(WerkstoffLoader.Xenon.getFluidOrGas(2)).duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_EV).addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - BW_NonMeta_MaterialItems.Depleted_Tiberium_4.get(1), - null, - null, - WerkstoffLoader.Xenon.getFluidOrGas(4), - WerkstoffLoader.Zirconium.get(dust, 4), - WerkstoffLoader.Zirconium.get(dust, 4), - WerkstoffLoader.Tiberium.get(dust, 2), - WerkstoffLoader.Zirconium.get(dust, 8), - GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 38L), - GT_OreDictUnificator.get(dust, Materials.Platinum, 4L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 1000, - 2000); + GT_Values.RA.stdBuilder().itemInputs(BW_NonMeta_MaterialItems.Depleted_Tiberium_4.get(1)) + .itemOutputs( + WerkstoffLoader.Zirconium.get(dust, 4), + WerkstoffLoader.Zirconium.get(dust, 4), + WerkstoffLoader.Tiberium.get(dust, 2), + WerkstoffLoader.Zirconium.get(dust, 8), + GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 38L), + GT_OreDictUnificator.get(dust, Materials.Platinum, 4L)) + .outputChances(100_00, 50_00, 50_00, 25_00, 100_00, 100_00).noFluidInputs() + .fluidOutputs(WerkstoffLoader.Xenon.getFluidOrGas(4)).duration(50 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(BW_NonMeta_MaterialItems.Depleted_TheCoreCell.get(1)) + .itemOutputs( + ItemList.Depleted_Naquadah_4.get(8), + WerkstoffLoader.Zirconium.get(dust, 64), + WerkstoffLoader.Zirconium.get(dust, 64), + GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 64L), + GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 64L), + GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 48L)) + .outputChances(100_00, 50_00, 50_00, 100_00, 100_00, 100_00).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - BW_NonMeta_MaterialItems.Depleted_TheCoreCell.get(1), - null, - null, - null, - ItemList.Depleted_Naquadah_4.get(8), - WerkstoffLoader.Zirconium.get(dust, 64), - WerkstoffLoader.Zirconium.get(dust, 64), - GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 64L), - GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 64L), - GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 48L), - new int[] { 10_000, 5_000, 5_000, 10_000, 10_000, 10_000 }, - 2000, - 8000); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java index 0cc8733ff..d2a2d06b3 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java @@ -27,6 +27,14 @@ import static gregtech.api.enums.OrePrefixes.gemFlawed; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.stickLong; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSifterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.ADDITIVE_AMOUNT; import java.lang.reflect.Field; import java.util.Map; @@ -62,6 +70,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -167,7 +176,7 @@ private static void runBWRecipes() { new FluidStack[] { FluidRegistry.getFluidStack("ic2distilledwater", 1000) }, null, 500, - BW_Util.getMachineVoltageFromTier(6), + (int) TierEU.RECIPE_LuV, BW_Util.STANDART); } } @@ -187,7 +196,7 @@ private static void runBWRecipes() { new FluidStack[] { new FluidStack(dnaFluid[0].getFluid(), 8000) }, null, 500, - BW_Util.getMachineVoltageFromTier(6), + (int) TierEU.RECIPE_LuV, BW_Util.STANDART); FluidStack[] easyFluids = { Materials.Water.getFluid(1000L), @@ -209,7 +218,7 @@ private static void runBWRecipes() { new FluidStack[] { fluidStack }, new FluidStack[] { new FluidStack(bioCulture.getFluid(), 10) }, 1000, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART), true); // aOptimize, aInputs, aOutputs, aSpecialItems, aChances, aFluidInputs, aFluidOutputs, @@ -229,7 +238,7 @@ private static void runBWRecipes() { new FluidStack[] { new FluidStack(bioCulture.getFluid(), 1000) }, null, 500, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, BW_Util.STANDART)); } } @@ -268,17 +277,20 @@ public static void run() { new ItemStack(ItemRegistry.bw_glasses[0], 1, 12), null, 800, - BW_Util.getMachineVoltageFromTier(5), + (int) TierEU.RECIPE_IV, 3663); - // Thorianit recipes - GT_Values.RA.addSifterRecipe( - WerkstoffLoader.Thorianit.get(crushedPurified), - new ItemStack[] { WerkstoffLoader.Thorianit.get(dust), WerkstoffLoader.Thorianit.get(dust), - WerkstoffLoader.Thorianit.get(dust), Materials.Thorium.getDust(1), Materials.Thorium.getDust(1), - WerkstoffLoader.Thorium232.get(dust), }, - new int[] { 7000, 1300, 700, 600, 300, 100 }, - 400, - BW_Util.getMachineVoltageFromTier(5)); + // Thorianite recipes + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Thorianit.get(crushedPurified)) + .itemOutputs( + WerkstoffLoader.Thorianit.get(dust), + WerkstoffLoader.Thorianit.get(dust), + WerkstoffLoader.Thorianit.get(dust), + Materials.Thorium.getDust(1), + Materials.Thorium.getDust(1), + WerkstoffLoader.Thorium232.get(dust)) + .outputChances(7000, 1300, 700, 600, 300, 100).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut((int) TierEU.RECIPE_IV).addTo(sSifterRecipes); + // 3ThO2 + 4Al = 3Th + 2Al2O3 GT_Values.RA.addChemicalRecipe( WerkstoffLoader.Thorianit.get(dust, 9), @@ -315,15 +327,13 @@ public static void run() { WerkstoffLoader.Prasiolite.get(OrePrefixes.gemFlawed, 20), GT_Values.NI, 800, - BW_Util.getMachineVoltageFromTier(2), + (int) TierEU.RECIPE_MV, 500); - GT_Values.RA.addPrimitiveBlastRecipe( - GT_OreDictUnificator.get(dust, Materials.Quartzite, 40L), - Materials.Amethyst.getDust(10), - 6, - WerkstoffLoader.Prasiolite.get(OrePrefixes.gemFlawed, 20), - GT_Values.NI, - 800); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(dust, Materials.Quartzite, 40L)) + .itemOutputs(Materials.Amethyst.getDust(10)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(0).metadata(ADDITIVE_AMOUNT, 6).addTo(sPrimitiveBlastRecipes); + // Cubic Circonia // 2Y + 3O = Y2O3 GT_Values.RA.addChemicalRecipe( @@ -333,7 +343,7 @@ public static void run() { GT_Values.NF, WerkstoffLoader.YttriumOxide.get(dust, 5), 4096, - BW_Util.getMachineVoltageFromTier(1)); + (int) TierEU.RECIPE_LV); // Zr + 2O =Y22O3= ZrO2 GT_Recipe.GT_Recipe_Map.sBlastRecipes.addRecipe( false, @@ -344,7 +354,7 @@ public static void run() { new FluidStack[] { Materials.Oxygen.getGas(20000) }, null, 57600, - BW_Util.getMachineVoltageFromTier(3), + (int) TierEU.RECIPE_HV, 2953); // Tellurium GT_Values.RA.addBlastRecipe( @@ -355,7 +365,7 @@ public static void run() { Materials.Lead.getIngots(10), Materials.Tellurium.getNuggets(20), 800, - BW_Util.getMachineVoltageFromTier(2), + (int) TierEU.RECIPE_MV, 722); GT_Values.RA.addFusionReactorRecipe( Materials.Plutonium.getMolten(48), @@ -380,37 +390,31 @@ public static void run() { Materials.Hydrogen.getGas(55), WerkstoffLoader.Xenon.getFluidOrGas(9) }, null, 7500, - BW_Util.getMachineVoltageFromTier(4)); - GT_Values.RA.addAutoclaveRecipe( - WerkstoffLoader.MagnetoResonaticDust.get(dust), - WerkstoffLoader.Neon.getFluidOrGas(1000), - WerkstoffLoader.MagnetoResonaticDust.get(gemChipped, 9), - 9000, - 4500, - BW_Util.getMachineVoltageFromTier(5)); - GT_Values.RA.addAutoclaveRecipe( - WerkstoffLoader.MagnetoResonaticDust.get(dust), - WerkstoffLoader.Krypton.getFluidOrGas(1000), - WerkstoffLoader.MagnetoResonaticDust.get(gem), - 10000, - 4500, - BW_Util.getMachineVoltageFromTier(5)); + (int) TierEU.RECIPE_EV); + + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.MagnetoResonaticDust.get(dust)) + .itemOutputs(WerkstoffLoader.MagnetoResonaticDust.get(gemChipped, 9)).outputChances(90_00) + .fluidInputs(WerkstoffLoader.Neon.getFluidOrGas(1000)).noFluidOutputs() + .duration(3 * MINUTES + 45 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.MagnetoResonaticDust.get(dust)) + .itemOutputs(WerkstoffLoader.MagnetoResonaticDust.get(gem)) + .fluidInputs(WerkstoffLoader.Krypton.getFluidOrGas(1000)).noFluidOutputs() + .duration(3 * MINUTES + 45 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAutoclaveRecipes); // Milk - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.Milk.getFluid(10000), - Materials.Water.getFluid(8832), - Materials.Sugar.getDustSmall(21), - Materials.Calcium.getDustTiny(1), - Materials.Magnesium.getDustTiny(1), - Materials.Potassium.getDustTiny(1), - Materials.Sodium.getDustTiny(4), - Materials.Phosphor.getDustTiny(1), - new int[] { 10000, 10000, 1000, 10000, 1000, 1000 }, - 50, - 120); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + Materials.Sugar.getDustSmall(21), + Materials.Calcium.getDustTiny(1), + Materials.Magnesium.getDustTiny(1), + Materials.Potassium.getDustTiny(1), + Materials.Sodium.getDustTiny(4), + Materials.Phosphor.getDustTiny(1)) + .outputChances(100_00, 100_00, 10_00, 100_00, 10_00, 10_00).fluidInputs(Materials.Milk.getFluid(10000)) + .fluidOutputs(Materials.Water.getFluid(8832)).duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); // Magneto Resonatic Circuits @@ -435,7 +439,7 @@ public static void run() { new FluidStack[] { Materials.SolderingAlloy.getMolten(36) }, null, 750, - BW_Util.getMachineVoltageFromTier(1), + (int) TierEU.RECIPE_LV, CLEANROOM)); // LV-EV for (int i = 1; i <= 4; i++) { @@ -631,7 +635,7 @@ public static void run() { null, BW_NonMeta_MaterialItems.TheCoreCell.get(1L), 100, - BW_Util.getMachineVoltageFromTier(6)); + (int) TierEU.RECIPE_LuV); GregTech_API.sAfterGTPostload.add(new AddSomeRecipes()); AdditionalRecipes.oldGThelperMethod(); diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java index 4f52aab4e..bf76e81d1 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java @@ -17,13 +17,17 @@ import static gregtech.api.enums.OrePrefixes.cellMolten; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.plate; - -import net.minecraft.item.ItemStack; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.UniversalArcFurnace; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; import gregtech.api.enums.GT_Values; +import gregtech.api.enums.TierEU; public class BlockLoader implements IWerkstoffRunnable { @@ -31,24 +35,22 @@ public class BlockLoader implements IWerkstoffRunnable { public void run(Werkstoff werkstoff) { if (!werkstoff.hasItemType(block)) return; if (werkstoff.hasItemType(ingot)) { - GT_Values.RA.addArcFurnaceRecipe( - werkstoff.get(block), - new ItemStack[] { werkstoff.get(ingot, 9) }, - null, - 16, - 90, - false); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(ingot, 9)) + .noFluidInputs().noFluidOutputs().duration(16 * TICKS).eut(90).addTo(UniversalArcFurnace); } if (werkstoff.hasItemType(cellMolten)) { - GT_Values.RA.addFluidExtractionRecipe(werkstoff.get(block), null, werkstoff.getMolten(1296), 0, 288, 8); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(1296)).duration(14 * SECONDS + 8 * TICKS).eut(8) + .addTo(sFluidExtractionRecipes); + } if (werkstoff.hasItemType(plate)) { - GT_Values.RA.addCutterRecipe( - werkstoff.get(block), - werkstoff.get(plate, 9), - null, - (int) Math.max(werkstoff.getStats().getMass() * 10L, 1L), - 30); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(plate, 9)) + .noFluidInputs().noFluidOutputs().duration((int) Math.max(werkstoff.getStats().getMass() * 10L, 1L)) + .eut(TierEU.RECIPE_LV).addTo(sCutterRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java index be8a2f95a..021d827b6 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java @@ -21,8 +21,8 @@ import static gregtech.api.enums.OrePrefixes.plate; import static gregtech.api.enums.OrePrefixes.plateDouble; import static gregtech.api.enums.OrePrefixes.screw; - -import net.minecraft.item.ItemStack; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import com.github.bartimaeusnek.bartworks.system.material.BW_GT_MaterialReference; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; @@ -30,6 +30,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; public class CasingLoader implements IWerkstoffRunnable { @@ -55,23 +56,20 @@ private static void addCasingRecipes(Werkstoff werkstoff, OrePrefixes reboltedCa werkstoff.get(blockCasing), new Object[] { "PSP", "PGP", "PSP", 'P', werkstoff.get(plate), 'S', werkstoff.get(screw), 'G', werkstoff.get(gearGtSmall) }); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { werkstoff.get(plate, 6), werkstoff.get(screw, 2), werkstoff.get(gearGtSmall) }, - GT_Values.NF, - werkstoff.get(blockCasing), - 200, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs(werkstoff.get(plate, 6), werkstoff.get(screw, 2), werkstoff.get(gearGtSmall)) + .itemOutputs(werkstoff.get(blockCasing)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); GT_ModHandler.addCraftingRecipe( werkstoff.get(blockCasingAdvanced), new Object[] { "PSP", "PGP", "PSP", 'P', werkstoff.get(reboltedCasingsOuterStuff), 'S', werkstoff.get(screw), 'G', werkstoff.get(gearGt) }); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { werkstoff.get(reboltedCasingsOuterStuff, 6), werkstoff.get(screw, 2), - werkstoff.get(gearGt) }, - GT_Values.NF, - werkstoff.get(blockCasingAdvanced), - 200, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs(werkstoff.get(reboltedCasingsOuterStuff, 6), werkstoff.get(screw, 2), werkstoff.get(gearGt)) + .itemOutputs(werkstoff.get(blockCasingAdvanced)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java index b128d7dac..d6bdecb3e 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java @@ -17,6 +17,10 @@ import static gregtech.api.enums.OrePrefixes.capsule; import static gregtech.api.enums.OrePrefixes.cell; import static gregtech.api.enums.OrePrefixes.dust; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.ArrayList; import java.util.HashMap; @@ -179,16 +183,15 @@ public void run(Werkstoff werkstoff) { werkstoff.getFluidOrGas(1).getFluid(), werkstoff.get(cell), Materials.Empty.getCells(1)); - GT_Values.RA.addFluidCannerRecipe( - Materials.Empty.getCells(1), - werkstoff.get(cell), - new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - werkstoff.get(cell), - Materials.Empty.getCells(1), - GT_Values.NF, - new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1)).itemOutputs(werkstoff.get(cell)) + .fluidInputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)) + .noFluidOutputs().duration(16 * TICKS).eut(2).addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(cell)).itemOutputs(Materials.Empty.getCells(1)) + .noFluidInputs() + .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)) + .duration(16 * TICKS).eut(2).addTo(sFluidCannerRecipes); if (Forestry.isModLoaded()) { FluidContainerRegistry.FluidContainerData emptyData = new FluidContainerRegistry.FluidContainerData( @@ -198,27 +201,23 @@ public void run(Werkstoff werkstoff) { true); GT_Utility.addFluidContainerData(emptyData); FluidContainerRegistry.registerFluidContainer(emptyData); - GT_Values.RA.addFluidCannerRecipe( - werkstoff.get(capsule), - GT_Values.NI, - GT_Values.NF, - new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(capsule)).noItemOutputs().noFluidInputs() + .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)) + .duration(16 * TICKS).eut(2).addTo(sFluidCannerRecipes); } if (werkstoff.hasItemType(dust)) { - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(dust), - null, - werkstoff.getFluidOrGas(1000), - 0, - (int) werkstoff.getStats().getMass(), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - GT_Values.RA.addFluidSolidifierRecipe( - GT_Utility.getIntegratedCircuit(1), - werkstoff.getFluidOrGas(1000), - werkstoff.get(dust), - (int) werkstoff.getStats().getMass(), - werkstoff.getStats().getMass() > 128 ? 64 : 30); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getFluidOrGas(1000)).duration(werkstoff.getStats().getMass()) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).itemOutputs(werkstoff.get(dust)) + .fluidInputs(werkstoff.getFluidOrGas(1000)).noFluidOutputs() + .duration((int) werkstoff.getStats().getMass()).eut(werkstoff.getStats().getMass() > 128 ? 64 : 30) + .addTo(sFluidSolidficationRecipes); + } if (werkstoff.getType().equals(Werkstoff.Types.ELEMENT)) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java index 00a9915ca..cf5bd7f03 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java @@ -28,8 +28,14 @@ import static gregtech.api.enums.OrePrefixes.screw; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.wireFine; - -import net.minecraft.item.ItemStack; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLatheRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sWiremillRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; @@ -50,52 +56,45 @@ public void run(Werkstoff werkstoff) { int tVoltageMultiplier = werkstoff.getStats().getMeltingPoint() >= 2800 ? 60 : 15; // bolt - GT_Values.RA.addExtruderRecipe( - werkstoff.hasItemType(gem) ? werkstoff.get(gem) : werkstoff.get(ingot), - ItemList.Shape_Extruder_Bolt.get(0L), - werkstoff.get(bolt, 8), - (int) Math.max(werkstoff.getStats().getMass() * 2L, 1), - 8 * tVoltageMultiplier); - GT_Values.RA.addCutterRecipe( - werkstoff.get(stick), - werkstoff.get(bolt, 4), - null, - (int) Math.max(werkstoff.getStats().getMass() * 2L, 1L), - 4); - GT_Values.RA.addPulveriserRecipe( - werkstoff.get(bolt), - new ItemStack[] { werkstoff.get(dustTiny, 1) }, - null, - 2, - 8); + + GT_Values.RA.stdBuilder() + .itemInputs( + werkstoff.hasItemType(gem) ? werkstoff.get(gem) : werkstoff.get(ingot), + ItemList.Shape_Extruder_Bolt.get(0L)) + .itemOutputs(werkstoff.get(bolt, 8)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1)).eut(8 * tVoltageMultiplier) + .addTo(sExtruderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick)).itemOutputs(werkstoff.get(bolt, 4)) + .noFluidInputs().noFluidOutputs().duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)) + .eut(4).addTo(sCutterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(bolt)).itemOutputs(werkstoff.get(dustTiny, 1)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); // screw - GT_Values.RA.addLatheRecipe( - werkstoff.get(bolt), - werkstoff.get(screw), - null, - (int) Math.max(werkstoff.getStats().getMass() / 8L, 1L), - 4); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(bolt)).itemOutputs(werkstoff.get(screw)).noFluidInputs() + .noFluidOutputs().duration((int) Math.max(werkstoff.getStats().getMass() / 8L, 1L)).eut(4) + .addTo(sLatheRecipes); + GT_ModHandler.addCraftingRecipe( werkstoff.get(screw), GT_Proxy.tBits, new Object[] { "fX", "X ", 'X', werkstoff.get(bolt) }); - GT_Values.RA.addPulveriserRecipe( - werkstoff.get(screw), - new ItemStack[] { werkstoff.get(dustTiny, 1) }, - null, - 2, - 8); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(screw)).itemOutputs(werkstoff.get(dustTiny, 1)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); if (werkstoff.hasItemType(gem)) return; // ring - GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot), - ItemList.Shape_Extruder_Ring.get(0L), - werkstoff.get(ring, 4), - (int) Math.max(werkstoff.getStats().getMass() * 2L, 1), - 6 * tVoltageMultiplier); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Ring.get(0L)) + .itemOutputs(werkstoff.get(ring, 4)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1)).eut(6 * tVoltageMultiplier) + .addTo(sExtruderRecipes); + GT_ModHandler.addCraftingRecipe( werkstoff.get(ring), GT_Proxy.tBits, @@ -106,40 +105,37 @@ public void run(Werkstoff werkstoff) { werkstoff.get(gearGt), GT_Proxy.tBits, new Object[] { "SPS", "PwP", "SPS", 'P', werkstoff.get(plate), 'S', werkstoff.get(stick) }); - GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot, 4), - ItemList.Shape_Extruder_Gear.get(0L), - werkstoff.get(gearGt), - (int) Math.max(werkstoff.getStats().getMass() * 5L, 1), - 8 * tVoltageMultiplier); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 4), ItemList.Shape_Extruder_Gear.get(0L)) + .itemOutputs(werkstoff.get(gearGt)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1)).eut(8 * tVoltageMultiplier) + .addTo(sExtruderRecipes); // wireFine - GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot), - ItemList.Shape_Extruder_Wire.get(0L), - werkstoff.get(wireFine, 8), - (int) Math.max(werkstoff.getStats().getMass() * 1.5F, 1F), - 8 * tVoltageMultiplier); - GT_Values.RA.addWiremillRecipe( - werkstoff.get(ingot), - GT_Utility.getIntegratedCircuit(3), - werkstoff.get(wireFine, 8), - (int) Math.max(werkstoff.getStats().getMass(), 1), - 8 * tVoltageMultiplier); - GT_Values.RA.addWiremillRecipe( - werkstoff.get(stick), - GT_Utility.getIntegratedCircuit(3), - werkstoff.get(wireFine, 4), - (int) Math.max(werkstoff.getStats().getMass() * 0.5F, 1F), - 8 * tVoltageMultiplier); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Wire.get(0L)) + .itemOutputs(werkstoff.get(wireFine, 8)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 1.5F, 1F)).eut(8 * tVoltageMultiplier) + .addTo(sExtruderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(werkstoff.get(wireFine, 8)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass(), 1)).eut(8 * tVoltageMultiplier) + .addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick), GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(werkstoff.get(wireFine, 4)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 0.5F, 1F)).eut(8 * tVoltageMultiplier) + .addTo(sWiremillRecipes); // smallGear - if (WerkstoffLoader.smallGearShape != null) GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot), - WerkstoffLoader.smallGearShape.get(0L), - werkstoff.get(gearGtSmall), - (int) werkstoff.getStats().getMass(), - 8 * tVoltageMultiplier); + if (WerkstoffLoader.smallGearShape != null) { + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), WerkstoffLoader.smallGearShape.get(0L)) + .itemOutputs(werkstoff.get(gearGtSmall)).noFluidInputs().noFluidOutputs() + .duration((int) werkstoff.getStats().getMass()).eut(8 * tVoltageMultiplier) + .addTo(sExtruderRecipes); + + } GT_ModHandler.addCraftingRecipe( werkstoff.get(gearGtSmall), @@ -152,34 +148,26 @@ public void run(Werkstoff werkstoff) { GT_Proxy.tBits, new Object[] { "PhP", "SRf", "PdP", 'P', werkstoff.get(plate), 'R', werkstoff.get(ring), 'S', werkstoff.get(screw) }); - GT_Values.RA.addAssemblerRecipe( - werkstoff.get(plate, 4), - werkstoff.get(ring), - Materials.Tin.getMolten(32), - werkstoff.get(rotor), - 240, - 24); - GT_Values.RA.addAssemblerRecipe( - werkstoff.get(plate, 4), - werkstoff.get(ring), - Materials.Lead.getMolten(48), - werkstoff.get(rotor), - 240, - 24); - GT_Values.RA.addAssemblerRecipe( - werkstoff.get(plate, 4), - werkstoff.get(ring), - Materials.SolderingAlloy.getMolten(16), - werkstoff.get(rotor), - 240, - 24); - if (WerkstoffLoader.rotorShape != null) GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot, 5), - WerkstoffLoader.rotorShape.get(0L), - werkstoff.get(rotor), - 200, - 60); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate, 4), werkstoff.get(ring)) + .itemOutputs(werkstoff.get(rotor)).fluidInputs(Materials.Tin.getMolten(32)).noFluidOutputs() + .duration(12 * SECONDS).eut(24).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate, 4), werkstoff.get(ring)) + .itemOutputs(werkstoff.get(rotor)).fluidInputs(Materials.Lead.getMolten(48)).noFluidOutputs() + .duration(12 * SECONDS).eut(24).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate, 4), werkstoff.get(ring)) + .itemOutputs(werkstoff.get(rotor)).fluidInputs(Materials.SolderingAlloy.getMolten(16)) + .noFluidOutputs().duration(12 * SECONDS).eut(24).addTo(sAssemblerRecipes); + + if (WerkstoffLoader.rotorShape != null) { + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 5), WerkstoffLoader.rotorShape.get(0L)) + .itemOutputs(werkstoff.get(rotor)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(60).addTo(sExtruderRecipes); + + } // molten -> metal if (werkstoff.hasItemType(cellMolten)) { @@ -198,26 +186,19 @@ public void run(Werkstoff werkstoff) { */ } - GT_Values.RA - .addPulveriserRecipe(werkstoff.get(gearGt), new ItemStack[] { werkstoff.get(dust, 4) }, null, 2, 8); - GT_Values.RA.addPulveriserRecipe( - werkstoff.get(gearGtSmall), - new ItemStack[] { werkstoff.get(dust, 1) }, - null, - 2, - 8); - GT_Values.RA.addPulveriserRecipe( - werkstoff.get(rotor), - new ItemStack[] { werkstoff.get(dust, 4), werkstoff.get(dustSmall) }, - null, - 2, - 8); - GT_Values.RA.addPulveriserRecipe( - werkstoff.get(ring), - new ItemStack[] { werkstoff.get(dustSmall, 1) }, - null, - 2, - 8); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gearGt)).itemOutputs(werkstoff.get(dust, 4)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gearGtSmall)).itemOutputs(werkstoff.get(dust, 1)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(rotor)) + .itemOutputs(werkstoff.get(dust, 4), werkstoff.get(dustSmall)).noFluidInputs().noFluidOutputs() + .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ring)).itemOutputs(werkstoff.get(dustSmall, 1)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java index f3e2d1dba..b1926f570 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java @@ -24,6 +24,14 @@ import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.nugget; import static gregtech.api.enums.OrePrefixes.ore; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; @@ -66,7 +74,9 @@ public void run(Werkstoff werkstoff) { werkstoff.get(dust), new Object[] { "h ", "W ", 'W', werkstoff.get(crushedCentrifuged) }); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(crushed), werkstoff.get(dustImpure), 10, 16); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushed)).itemOutputs(werkstoff.get(dustImpure)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( werkstoff.get(crushed), werkstoff.get(dustImpure), @@ -88,7 +98,9 @@ public void run(Werkstoff werkstoff) { werkstoff.getOreByProduct(1, dust), GT_OreDictUnificator.get(dust, Materials.Stone, 1L)); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(crushedPurified), werkstoff.get(dustPure), 10, 16); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushedPurified)).itemOutputs(werkstoff.get(dustPure)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( werkstoff.get(crushedPurified), werkstoff.get(dustPure), @@ -102,7 +114,9 @@ public void run(Werkstoff werkstoff) { werkstoff.get(crushedCentrifuged), werkstoff.getOreByProduct(1, dust)); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(crushedCentrifuged), werkstoff.get(dust), 10, 16); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushedCentrifuged)).itemOutputs(werkstoff.get(dust)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( werkstoff.get(crushedCentrifuged), werkstoff.get(dust), @@ -110,108 +124,90 @@ public void run(Werkstoff werkstoff) { 10, false); - GT_Values.RA.addCentrifugeRecipe( - werkstoff.get(dustImpure), - null, - null, - null, - werkstoff.get(dust), - werkstoff.getOreByProduct(0, dust), - null, - null, - null, - null, - new int[] { 10000, 1111 }, - (int) Math.max(1L, werkstoff.getStats().getMass() * 8L), - 5); - GT_Values.RA.addCentrifugeRecipe( - werkstoff.get(dustPure), - null, - null, - null, - werkstoff.get(dust), - werkstoff.getOreByProduct(1, dust), - null, - null, - null, - null, - new int[] { 10000, 1111 }, - (int) Math.max(1L, werkstoff.getStats().getMass() * 8L), - 5); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustImpure)) + .itemOutputs(werkstoff.get(dust), werkstoff.getOreByProduct(0, dust)).outputChances(100_00, 11_11) + .noFluidInputs().noFluidOutputs().duration(Math.max(1L, werkstoff.getStats().getMass() * 8L)).eut(5) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)) + .itemOutputs(werkstoff.get(dust), werkstoff.getOreByProduct(1, dust)).outputChances(100_00, 11_11) + .noFluidInputs().noFluidOutputs().duration(Math.max(1L, werkstoff.getStats().getMass() * 8L)).eut(5) + .addTo(sCentrifugeRecipes); if (werkstoff.contains(SubTag.CRYSTALLISABLE)) { - GT_Values.RA.addAutoclaveRecipe( - werkstoff.get(dustPure), - Materials.Water.getFluid(200L), - werkstoff.get(gem), - 9000, - 2000, - 24); - GT_Values.RA.addAutoclaveRecipe( - werkstoff.get(dustImpure), - Materials.Water.getFluid(200L), - werkstoff.get(gem), - 9000, - 2000, - 24); - GT_Values.RA.addAutoclaveRecipe( - werkstoff.get(dustPure), - gregtech.api.util.GT_ModHandler.getDistilledWater(200L), - werkstoff.get(gem), - 9500, - 1500, - 24); - GT_Values.RA.addAutoclaveRecipe( - werkstoff.get(dustImpure), - gregtech.api.util.GT_ModHandler.getDistilledWater(200L), - werkstoff.get(gem), - 9500, - 1500, - 24); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)).itemOutputs(werkstoff.get(gem)) + .outputChances(9000).fluidInputs(Materials.Water.getFluid(200L)).noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustImpure)).itemOutputs(werkstoff.get(gem)) + .outputChances(9000).fluidInputs(Materials.Water.getFluid(200L)).noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)).itemOutputs(werkstoff.get(gem)) + .outputChances(9500).fluidInputs(gregtech.api.util.GT_ModHandler.getDistilledWater(200L)) + .noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustImpure)).itemOutputs(werkstoff.get(gem)) + .outputChances(9500).fluidInputs(gregtech.api.util.GT_ModHandler.getDistilledWater(200L)) + .noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + } + if (werkstoff.contains(SubTag.WASHING_MERCURY)) { + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushed)) + .itemOutputs( + werkstoff.get(crushedPurified), + werkstoff.getOreByProduct(1, dust), + GT_OreDictUnificator.get(dust, Materials.Stone, 1L)) + .outputChances(10000, 7000, 4000).fluidInputs(Materials.Mercury.getFluid(1000L)).noFluidOutputs() + .duration(40 * SECONDS).eut(8).addTo(sChemicalBathRecipes); + + } + if (werkstoff.contains(SubTag.WASHING_SODIUMPERSULFATE)) { + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushed)) + .itemOutputs( + werkstoff.get(crushedPurified), + werkstoff.getOreByProduct(1, dust), + GT_OreDictUnificator.get(dust, Materials.Stone, 1L)) + .outputChances(10000, 7000, 4000) + .fluidInputs( + Materials.SodiumPersulfate + .getFluid(GT_Mod.gregtechproxy.mDisableOldChemicalRecipes ? 1000L : 100L)) + .noFluidOutputs().duration(40 * SECONDS).eut(8).addTo(sChemicalBathRecipes); + + } + if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_GOLD)) { + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)) + .itemOutputs( + werkstoff.get(dust), + GT_OreDictUnificator.get(dustSmall, Materials.Gold, 1L), + GT_OreDictUnificator.get(nugget, Materials.Gold, 1L)) + .outputChances(10000, 4000, 2000).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(24) + .addTo(sElectroMagneticSeparatorRecipes); + + } else if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_IRON)) { + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)) + .itemOutputs( + werkstoff.get(dust), + GT_OreDictUnificator.get(dustSmall, Materials.Iron, 1L), + GT_OreDictUnificator.get(nugget, Materials.Iron, 1L)) + .outputChances(10000, 4000, 2000).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(24) + .addTo(sElectroMagneticSeparatorRecipes); + + } else if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_NEODYMIUM)) { + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)) + .itemOutputs( + werkstoff.get(dust), + GT_OreDictUnificator.get(dustSmall, Materials.Neodymium, 1L), + GT_OreDictUnificator.get(nugget, Materials.Neodymium, 1L)) + .outputChances(10000, 4000, 2000).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(24) + .addTo(sElectroMagneticSeparatorRecipes); + } - if (werkstoff.contains(SubTag.WASHING_MERCURY)) GT_Values.RA.addChemicalBathRecipe( - werkstoff.get(crushed), - Materials.Mercury.getFluid(1000L), - werkstoff.get(crushedPurified), - werkstoff.getOreByProduct(1, dust), - GT_OreDictUnificator.get(dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); - if (werkstoff.contains(SubTag.WASHING_SODIUMPERSULFATE)) GT_Values.RA.addChemicalBathRecipe( - werkstoff.get(crushed), - Materials.SodiumPersulfate.getFluid(GT_Mod.gregtechproxy.mDisableOldChemicalRecipes ? 1000L : 100L), - werkstoff.get(crushedPurified), - werkstoff.getOreByProduct(1, dust), - GT_OreDictUnificator.get(dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); - if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_GOLD)) GT_Values.RA.addElectromagneticSeparatorRecipe( - werkstoff.get(dustPure), - werkstoff.get(dust), - GT_OreDictUnificator.get(dustSmall, Materials.Gold, 1L), - GT_OreDictUnificator.get(nugget, Materials.Gold, 1L), - new int[] { 10000, 4000, 2000 }, - 400, - 24); - else if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_IRON)) - GT_Values.RA.addElectromagneticSeparatorRecipe( - werkstoff.get(dustPure), - werkstoff.get(dust), - GT_OreDictUnificator.get(dustSmall, Materials.Iron, 1L), - GT_OreDictUnificator.get(nugget, Materials.Iron, 1L), - new int[] { 10000, 4000, 2000 }, - 400, - 24); - else if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_NEODYMIUM)) - GT_Values.RA.addElectromagneticSeparatorRecipe( - werkstoff.get(dustPure), - werkstoff.get(dust), - GT_OreDictUnificator.get(dustSmall, Materials.Neodymium, 1L), - GT_OreDictUnificator.get(nugget, Materials.Neodymium, 1L), - new int[] { 10000, 4000, 2000 }, - 400, - 24); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java index dca73ad91..3eb4e9028 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java @@ -22,6 +22,14 @@ import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.ingotHot; import static gregtech.api.enums.OrePrefixes.nugget; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeConstants.ADDITIVE_AMOUNT; +import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; import java.util.ArrayList; import java.util.HashMap; @@ -40,6 +48,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.TextureSet; +import gregtech.api.enums.TierEU; import gregtech.api.interfaces.ISubTagContainer; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; @@ -306,30 +315,21 @@ public void run(Werkstoff werkstoff) { WerkstoffLoader.getCorrespondingItemStack(dustTiny, werkstoff, 9), new Object[] { "T ", 'T', werkstoff.get(dust) }); - GT_Values.RA.addBoxingRecipe( - werkstoff.get(dustTiny, 9), - ItemList.Schematic_Dust.get(0L), - werkstoff.get(dust), - 100, - 4); - GT_Values.RA.addBoxingRecipe( - werkstoff.get(dustSmall, 4), - ItemList.Schematic_Dust.get(0L), - werkstoff.get(dust), - 100, - 4); - GT_Values.RA.addBoxingRecipe( - werkstoff.get(dustTiny, 9), - ItemList.Schematic_3by3.get(0L), - werkstoff.get(dust), - 100, - 4); - GT_Values.RA.addBoxingRecipe( - werkstoff.get(dustSmall, 4), - ItemList.Schematic_2by2.get(0L), - werkstoff.get(dust), - 100, - 4); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustTiny, 9), ItemList.Schematic_Dust.get(0L)) + .itemOutputs(werkstoff.get(dust)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(4) + .addTo(sBoxinatorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustSmall, 4), ItemList.Schematic_Dust.get(0L)) + .itemOutputs(werkstoff.get(dust)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(4) + .addTo(sBoxinatorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustTiny, 9), ItemList.Schematic_3by3.get(0L)) + .itemOutputs(werkstoff.get(dust)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(4) + .addTo(sBoxinatorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustSmall, 4), ItemList.Schematic_2by2.get(0L)) + .itemOutputs(werkstoff.get(dust)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(4) + .addTo(sBoxinatorRecipes); if (werkstoff.hasItemType(ingot) && !werkstoff.getStats().isBlastFurnace()) { GT_ModHandler.addSmeltingRecipe(werkstoff.get(dust), werkstoff.get(ingot)); @@ -337,70 +337,76 @@ public void run(Werkstoff werkstoff) { } else if (werkstoff.hasItemType(ingot) && werkstoff.getStats().isBlastFurnace() && werkstoff.getStats().getMeltingPoint() != 0) { if (werkstoff.contains(WerkstoffLoader.ANAEROBE_SMELTING)) { - GT_Values.RA.addBlastRecipe( - werkstoff.get(dust), - GT_Utility.getIntegratedCircuit(11), - Materials.Nitrogen.getGas(1000), - null, - werkstoff.getStats().getMeltingPoint() < 1750 ? werkstoff.get(ingot) - : werkstoff.get(ingotHot), - null, - (int) Math.max(werkstoff.getStats().getMass() / 40L, 1L) - * werkstoff.getStats().getMeltingPoint(), - werkstoff.getStats().getMeltingVoltage(), - werkstoff.getStats().getMeltingPoint()); + GT_Values.RA.stdBuilder() + .itemInputs(werkstoff.get(dust), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs( + werkstoff.getStats().getMeltingPoint() < 1750 ? werkstoff.get(ingot) + : werkstoff.get(ingotHot)) + .fluidInputs(Materials.Nitrogen.getGas(1000)).noFluidOutputs() + .duration( + Math.max(werkstoff.getStats().getMass() / 40L, 1L) + * werkstoff.getStats().getMeltingPoint()) + .eut(werkstoff.getStats().getMeltingVoltage()) + .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()).addTo(sBlastRecipes); + } else if (werkstoff.contains(WerkstoffLoader.NOBLE_GAS_SMELTING)) { - GT_Values.RA.addBlastRecipe( - werkstoff.get(dust), - GT_Utility.getIntegratedCircuit(11), - Materials.Argon.getGas(1000), - null, - werkstoff.getStats().getMeltingPoint() < 1750 ? werkstoff.get(ingot) - : werkstoff.get(ingotHot), - null, - (int) Math.max(werkstoff.getStats().getMass() / 40L, 1L) - * werkstoff.getStats().getMeltingPoint(), - werkstoff.getStats().getMeltingVoltage(), - werkstoff.getStats().getMeltingPoint()); + GT_Values.RA.stdBuilder() + .itemInputs(werkstoff.get(dust), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs( + werkstoff.getStats().getMeltingPoint() < 1750 ? werkstoff.get(ingot) + : werkstoff.get(ingotHot)) + .fluidInputs(Materials.Argon.getGas(1000)).noFluidOutputs() + .duration( + Math.max(werkstoff.getStats().getMass() / 40L, 1L) + * werkstoff.getStats().getMeltingPoint()) + .eut(werkstoff.getStats().getMeltingVoltage()) + .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()).addTo(sBlastRecipes); + } else { - GT_Values.RA.addBlastRecipe( - werkstoff.get(dust), - GT_Utility.getIntegratedCircuit(1), - null, - null, - werkstoff.getStats().getMeltingPoint() < 1750 ? werkstoff.get(ingot) - : werkstoff.get(ingotHot), - null, - (int) Math.max(werkstoff.getStats().getMass() / 40L, 1L) - * werkstoff.getStats().getMeltingPoint(), - werkstoff.getStats().getMeltingVoltage(), - werkstoff.getStats().getMeltingPoint()); + GT_Values.RA.stdBuilder() + .itemInputs(werkstoff.get(dust), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + werkstoff.getStats().getMeltingPoint() < 1750 ? werkstoff.get(ingot) + : werkstoff.get(ingotHot)) + .noFluidInputs().noFluidOutputs() + .duration( + Math.max(werkstoff.getStats().getMass() / 40L, 1L) + * werkstoff.getStats().getMeltingPoint()) + .eut(werkstoff.getStats().getMeltingVoltage()) + .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()).addTo(sBlastRecipes); + if (werkstoff.getStats().getMeltingPoint() <= 1000) { - GT_Values.RA.addPrimitiveBlastRecipe( - werkstoff.get(dust), - null, - 9, - werkstoff.get(ingot), - null, - (int) Math.max(werkstoff.getStats().getMass() / 40L, 1L) - * werkstoff.getStats().getMeltingPoint()); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust)) + .itemOutputs(werkstoff.get(ingot)).noFluidInputs().noFluidOutputs() + .duration( + (int) Math.max(werkstoff.getStats().getMass() / 40L, 1L) + * werkstoff.getStats().getMeltingPoint()) + .eut(0).metadata(ADDITIVE_AMOUNT, 9).addTo(sPrimitiveBlastRecipes); } } } if (werkstoff.getStats().isBlastFurnace() && werkstoff.getStats().getMeltingPoint() > 1750) { - GT_Values.RA.addVacuumFreezerRecipe( - werkstoff.get(ingotHot), - werkstoff.get(ingot), - (int) Math.max(werkstoff.getStats().getMass() * 3L, 1L)); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingotHot)).itemOutputs(werkstoff.get(ingot)) + .noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 3L, 1L)).eut(TierEU.RECIPE_MV) + .addTo(sVacuumRecipes); } if (werkstoff.hasItemType(ingot)) { - GT_ModHandler.addPulverisationRecipe(werkstoff.get(ingot), werkstoff.get(dust)); - GT_ModHandler.addPulverisationRecipe(werkstoff.get(nugget), werkstoff.get(dustTiny)); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)).itemOutputs(werkstoff.get(dust)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(nugget)).itemOutputs(werkstoff.get(dustTiny)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + } if (werkstoff.hasItemType(ingot) || werkstoff.hasItemType(gem)) { - GT_ModHandler.addPulverisationRecipe(werkstoff.get(block), werkstoff.get(dust, 9)); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(dust, 9)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java index 3788f50a3..1f9122c53 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java @@ -26,6 +26,17 @@ import static gregtech.api.enums.OrePrefixes.lens; import static gregtech.api.enums.OrePrefixes.ore; import static gregtech.api.enums.OrePrefixes.plate; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sImplosionRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLatheRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSifterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.ADDITIVE_AMOUNT; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; @@ -39,6 +50,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.Textures; +import gregtech.api.enums.TierEU; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -51,22 +63,39 @@ public void run(Werkstoff werkstoff) { if (werkstoff.getGenerationFeatures().hasSifterRecipes() || (werkstoff.hasItemType(ore) && werkstoff.hasItemType(dust))) { - GT_ModHandler.addCompressionRecipe(werkstoff.get(gem, 9), werkstoff.get(block)); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(block), werkstoff.get(gem, 9), 100, 24); - GT_Values.RA.addSifterRecipe( - werkstoff.get(crushedPurified), - new ItemStack[] { werkstoff.get(gemExquisite), werkstoff.get(gemFlawless), werkstoff.get(gem), - werkstoff.get(gemFlawed), werkstoff.get(gemChipped), werkstoff.get(dust) }, - new int[] { 200, 1000, 2500, 2000, 4000, 5000 }, - 800, - 16); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem, 9)).itemOutputs(werkstoff.get(block)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(gem, 9)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(24).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushedPurified)) + .itemOutputs( + werkstoff.get(gemExquisite), + werkstoff.get(gemFlawless), + werkstoff.get(gem), + werkstoff.get(gemFlawed), + werkstoff.get(gemChipped), + werkstoff.get(dust)) + .outputChances(200, 1000, 2500, 2000, 4000, 5000).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(16).addTo(sSifterRecipes); + } - GT_ModHandler.addPulverisationRecipe(werkstoff.get(gemExquisite), werkstoff.get(dust, 4)); - GT_ModHandler.addPulverisationRecipe(werkstoff.get(gemFlawless), werkstoff.get(dust, 2)); - GT_ModHandler.addPulverisationRecipe(werkstoff.get(gem), werkstoff.get(dust)); - GT_ModHandler.addPulverisationRecipe(werkstoff.get(gemFlawed), werkstoff.get(dustSmall, 2)); - GT_ModHandler.addPulverisationRecipe(werkstoff.get(gemChipped), werkstoff.get(dustSmall)); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemExquisite)).itemOutputs(werkstoff.get(dust, 4)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless)).itemOutputs(werkstoff.get(dust, 2)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem)).itemOutputs(werkstoff.get(dust)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed)).itemOutputs(werkstoff.get(dustSmall, 2)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped)).itemOutputs(werkstoff.get(dustSmall)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); GT_ModHandler.addCraftingRecipe( werkstoff.get(gemFlawless, 2), @@ -85,70 +114,94 @@ public void run(Werkstoff werkstoff) { 0, new Object[] { "h ", "W ", 'W', werkstoff.get(gemFlawed) }); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(gemExquisite), werkstoff.get(gemFlawless, 2), 64, 16); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(gemFlawless), werkstoff.get(gem, 2), 64, 16); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(gem), werkstoff.get(gemFlawed, 2), 64, 16); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(gemFlawed), werkstoff.get(gemChipped, 2), 64, 16); - GT_Values.RA.addForgeHammerRecipe(werkstoff.get(gemChipped), werkstoff.get(dustTiny), 64, 16); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemExquisite)).itemOutputs(werkstoff.get(gemFlawless, 2)) + .noFluidInputs().noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless)).itemOutputs(werkstoff.get(gem, 2)) + .noFluidInputs().noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem)).itemOutputs(werkstoff.get(gemFlawed, 2)) + .noFluidInputs().noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed)).itemOutputs(werkstoff.get(gemChipped, 2)) + .noFluidInputs().noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped)).itemOutputs(werkstoff.get(dustTiny)) + .noFluidInputs().noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); if (!werkstoff.contains(WerkstoffLoader.NO_BLAST)) { - GT_Values.RA.addImplosionRecipe( - werkstoff.get(gemFlawless, 3), - 8, - werkstoff.get(gemExquisite), - GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)); - GT_Values.RA.addImplosionRecipe( - werkstoff.get(gem, 3), - 8, - werkstoff.get(gemFlawless), - GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)); - GT_Values.RA.addImplosionRecipe( - werkstoff.get(gemFlawed, 3), - 8, - werkstoff.get(gem), - GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)); - GT_Values.RA.addImplosionRecipe( - werkstoff.get(gemChipped, 3), - 8, - werkstoff.get(gemFlawed), - GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)); - - GT_Values.RA.addImplosionRecipe( - werkstoff.get(dust, 4), - 24, - werkstoff.get(gem, 3), - GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 8)); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless, 3)) + .itemOutputs( + werkstoff.get(gemExquisite), + GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) + .noFluidInputs().noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_LV) + .metadata(ADDITIVE_AMOUNT, 8).addTo(sImplosionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem, 3)) + .itemOutputs( + werkstoff.get(gemFlawless), + GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) + .noFluidInputs().noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_LV) + .metadata(ADDITIVE_AMOUNT, 8).addTo(sImplosionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed, 3)) + .itemOutputs(werkstoff.get(gem), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) + .noFluidInputs().noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_LV) + .metadata(ADDITIVE_AMOUNT, 8).addTo(sImplosionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped, 3)) + .itemOutputs(werkstoff.get(gemFlawed), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) + .noFluidInputs().noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_LV) + .metadata(ADDITIVE_AMOUNT, 8).addTo(sImplosionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust, 4)) + .itemOutputs(werkstoff.get(gem, 3), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 8)) + .noFluidInputs().noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_LV) + .metadata(ADDITIVE_AMOUNT, 24).addTo(sImplosionRecipes); } if (werkstoff.hasItemType(plate)) { - GT_Values.RA - .addLatheRecipe(werkstoff.get(plate), werkstoff.get(lens), werkstoff.get(dustSmall), 1200, 120); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)) + .itemOutputs(werkstoff.get(lens), werkstoff.get(dustSmall)).noFluidInputs().noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sLatheRecipes); + } - GT_Values.RA - .addLatheRecipe(werkstoff.get(gemExquisite), werkstoff.get(lens), werkstoff.get(dust, 2), 2400, 30); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemExquisite)) + .itemOutputs(werkstoff.get(lens), werkstoff.get(dust, 2)).noFluidInputs().noFluidOutputs() + .duration(2 * MINUTES).eut(TierEU.RECIPE_LV).addTo(sLatheRecipes); + GregTech_API.registerCover( werkstoff.get(lens), TextureFactory.of( Textures.BlockIcons.MACHINE_CASINGS[2][0], TextureFactory.of(Textures.BlockIcons.OVERLAY_LENS, werkstoff.getRGBA(), false)), new gregtech.common.covers.GT_Cover_Lens(BW_ColorUtil.getDyeFromColor(werkstoff.getRGBA()).mIndex)); - GT_ModHandler.addPulverisationRecipe(werkstoff.get(lens), werkstoff.get(dustSmall, 3)); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(lens)).itemOutputs(werkstoff.get(dustSmall, 3)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); for (ItemStack is : OreDictionary.getOres( "craftingLens" + BW_ColorUtil.getDyeFromColor(werkstoff.getRGBA()).mName.replace(" ", ""))) { is.stackSize = 0; - GT_Values.RA - .addLaserEngraverRecipe(werkstoff.get(gemChipped, 3), is, werkstoff.get(gemFlawed, 1), 600, 30); - GT_Values.RA.addLaserEngraverRecipe(werkstoff.get(gemFlawed, 3), is, werkstoff.get(gem, 1), 600, 120); - GT_Values.RA - .addLaserEngraverRecipe(werkstoff.get(gem, 3), is, werkstoff.get(gemFlawless, 1), 1200, 480); - GT_Values.RA.addLaserEngraverRecipe( - werkstoff.get(gemFlawless, 3), - is, - werkstoff.get(gemExquisite, 1), - 2400, - 2000); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped, 3), is) + .itemOutputs(werkstoff.get(gemFlawed, 1)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed, 3), is).itemOutputs(werkstoff.get(gem, 1)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem, 3), is) + .itemOutputs(werkstoff.get(gemFlawless, 1)).noFluidInputs().noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless, 3), is) + .itemOutputs(werkstoff.get(gemExquisite, 1)).noFluidInputs().noFluidOutputs() + .duration(2 * MINUTES).eut(2000).addTo(sLaserEngraverRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java index 47716b040..0c0a16aa9 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java @@ -15,26 +15,29 @@ import static gregtech.api.enums.OrePrefixes.block; import static gregtech.api.enums.OrePrefixes.ingot; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; -import gregtech.api.util.GT_ModHandler; public class MetalLoader implements IWerkstoffRunnable { @Override public void run(Werkstoff werkstoff) { if (werkstoff.hasItemType(ingot)) { - GT_ModHandler.addCompressionRecipe(werkstoff.get(ingot, 9), werkstoff.get(block)); - GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot, 9), - ItemList.Shape_Extruder_Block.get(0), - werkstoff.get(block), - (int) werkstoff.getStats().getMass(), - 8 * werkstoff.getStats().getMeltingPoint() >= 2800 ? 60 : 15); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 9)).itemOutputs(werkstoff.get(block)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 9), ItemList.Shape_Extruder_Block.get(0)) + .itemOutputs(werkstoff.get(block)).noFluidInputs().noFluidOutputs() + .duration((int) werkstoff.getStats().getMass()) + .eut(8 * werkstoff.getStats().getMeltingPoint() >= 2800 ? 60 : 15).addTo(sExtruderRecipes); + GT_Values.RA.addAlloySmelterRecipe( werkstoff.get(ingot, 9), ItemList.Shape_Mold_Block.get(0L), diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java index 0481c0872..29e7cadc1 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java @@ -32,6 +32,11 @@ import static gregtech.api.enums.OrePrefixes.screw; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.stickLong; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.Objects; @@ -52,170 +57,136 @@ public class MoltenCellLoader implements IWerkstoffRunnable { @Override public void run(Werkstoff werkstoff) { - if (!werkstoff.hasItemType(cellMolten)) return; + if (!werkstoff.hasItemType(cellMolten)) { + return; + } if (!werkstoff.hasItemType(ingot)) { - if (!werkstoff.hasItemType(dust)) return; - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(dust), - null, - werkstoff.getMolten(144), - 0, - (int) werkstoff.getStats().getMass(), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(dustSmall), - null, - werkstoff.getMolten(36), - 0, - (int) ((double) werkstoff.getStats().getMass() / 4D), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(dustTiny), - null, - werkstoff.getMolten(16), - 0, - (int) ((double) werkstoff.getStats().getMass() / 9D), - werkstoff.getStats().getMass() > 128 ? 64 : 30); + if (!werkstoff.hasItemType(dust)) { + return; + } + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(144)).duration(15 * SECONDS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustSmall)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(36)).duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustTiny)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(16)).duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + } else { - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(ingot), - null, - werkstoff.getMolten(144), - 0, - (int) werkstoff.getStats().getMass(), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(nugget), - null, - werkstoff.getMolten(16), - 0, - (int) ((double) werkstoff.getStats().getMass() / 9D), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ingot.get(0), - werkstoff.getMolten(144), - werkstoff.get(ingot), - (int) werkstoff.getStats().getMass(), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Nugget.get(0), - werkstoff.getMolten(16), - werkstoff.get(nugget), - (int) ((double) werkstoff.getStats().getMass() / 9D), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0), - werkstoff.getMolten(1296), - werkstoff.get(block), - (int) werkstoff.getStats().getMass() * 9, - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - if (!werkstoff.hasItemType(plate)) return; - - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(stickLong), - null, - werkstoff.getMolten(144), - 0, - (int) werkstoff.getStats().getMass(), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(plate), - null, - werkstoff.getMolten(144), - 0, - (int) werkstoff.getStats().getMass(), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - GT_Values.RA.addFluidExtractionRecipe( - werkstoff.get(stick), - null, - werkstoff.getMolten(72), - 0, - (int) ((double) werkstoff.getStats().getMass() / 2D), - werkstoff.getStats().getMass() > 128 ? 64 : 30); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(144)).duration(15 * SECONDS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(nugget)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(16)).duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ingot.get(0)).itemOutputs(werkstoff.get(ingot)) + .fluidInputs(werkstoff.getMolten(144)).noFluidOutputs() + .duration((int) werkstoff.getStats().getMass()).eut(werkstoff.getStats().getMass() > 128 ? 64 : 30) + .addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Nugget.get(0)).itemOutputs(werkstoff.get(nugget)) + .fluidInputs(werkstoff.getMolten(16)).noFluidOutputs() + .duration((int) ((double) werkstoff.getStats().getMass() / 9D)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0)).itemOutputs(werkstoff.get(block)) + .fluidInputs(werkstoff.getMolten(1296)).noFluidOutputs() + .duration((int) werkstoff.getStats().getMass() * 9) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + if (!werkstoff.hasItemType(plate)) { + return; + } + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stickLong)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(144)).duration(15 * SECONDS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(144)).duration(15 * SECONDS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick)).noItemOutputs().noFluidInputs() + .fluidOutputs(werkstoff.getMolten(72)).duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + } if (werkstoff.getGenerationFeatures().hasMetalCraftingSolidifierRecipes()) { - if (!werkstoff.hasItemType(plate)) return; - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Rod_Long.get(0), - werkstoff.getMolten(144), - werkstoff.get(stickLong), - (int) Math.max(werkstoff.getStats().getMass(), 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Rod.get(0), - werkstoff.getMolten(72), - werkstoff.get(stick), - (int) Math.max(werkstoff.getStats().getMass() / 2, 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Plate.get(0), - werkstoff.getMolten(144), - werkstoff.get(plate), - (int) Math.max(werkstoff.getStats().getMass(), 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); + if (!werkstoff.hasItemType(plate)) { + return; + } + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Rod_Long.get(0)) + .itemOutputs(werkstoff.get(stickLong)).fluidInputs(werkstoff.getMolten(144)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Rod.get(0)).itemOutputs(werkstoff.get(stick)) + .fluidInputs(werkstoff.getMolten(72)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() / 2, 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Plate.get(0)).itemOutputs(werkstoff.get(plate)) + .fluidInputs(werkstoff.getMolten(144)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + } if (werkstoff.getGenerationFeatures().hasMetaSolidifierRecipes()) { - if (!werkstoff.hasItemType(screw)) return; - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Screw.get(0), - werkstoff.getMolten(18), - werkstoff.get(screw), - (int) Math.max(werkstoff.getStats().getMass() / 8, 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Gear.get(0), - werkstoff.getMolten(576), - werkstoff.get(gearGt), - (int) Math.max(werkstoff.getStats().getMass() / 4, 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Gear_Small.get(0), - werkstoff.getMolten(144), - werkstoff.get(gearGtSmall), - (int) Math.max(werkstoff.getStats().getMass(), 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Bolt.get(0), - werkstoff.getMolten(18), - werkstoff.get(bolt), - (int) Math.max(werkstoff.getStats().getMass() / 8, 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ring.get(0), - werkstoff.getMolten(36), - werkstoff.get(ring), - (int) Math.max(werkstoff.getStats().getMass() / 4, 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); + if (!werkstoff.hasItemType(screw)) { + return; + } + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Screw.get(0)).itemOutputs(werkstoff.get(screw)) + .fluidInputs(werkstoff.getMolten(18)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() / 8, 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Gear.get(0)).itemOutputs(werkstoff.get(gearGt)) + .fluidInputs(werkstoff.getMolten(576)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() / 4, 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Gear_Small.get(0)) + .itemOutputs(werkstoff.get(gearGtSmall)).fluidInputs(werkstoff.getMolten(144)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Bolt.get(0)).itemOutputs(werkstoff.get(bolt)) + .fluidInputs(werkstoff.getMolten(18)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() / 8, 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ring.get(0)).itemOutputs(werkstoff.get(ring)) + .fluidInputs(werkstoff.getMolten(36)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() / 4, 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); // No Spring Molds - if (WerkstoffLoader.rotorMold == null) return; - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Rotor.get(0), - werkstoff.getMolten(612), - werkstoff.get(rotor), - (int) Math.max(werkstoff.getStats().getMass() * 4.25, 1L), - werkstoff.getStats().getMass() > 128 ? 64 : 30); + if (WerkstoffLoader.rotorMold == null) { + return; + } + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Rotor.get(0)).itemOutputs(werkstoff.get(rotor)) + .fluidInputs(werkstoff.getMolten(612)).noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 4.25, 1L)) + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + } if (werkstoff.getGenerationFeatures().hasMultipleMetalSolidifierRecipes()) { - if (!werkstoff.hasItemType(plateDouble)) return; + if (!werkstoff.hasItemType(plateDouble)) { + return; + } // No multiple plate molds } @@ -229,16 +200,15 @@ public void run(Werkstoff werkstoff) { werkstoff.get(cellMolten), Materials.Empty.getCells(1)); GT_Utility.addFluidContainerData(data); - GT_Values.RA.addFluidCannerRecipe( - Materials.Empty.getCells(1), - werkstoff.get(cellMolten), - new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - werkstoff.get(cellMolten), - Materials.Empty.getCells(1), - GT_Values.NF, - new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1)).itemOutputs(werkstoff.get(cellMolten)) + .fluidInputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)) + .noFluidOutputs().duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(cellMolten)).itemOutputs(Materials.Empty.getCells(1)) + .noFluidInputs() + .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)) + .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); if (!Forestry.isModLoaded()) return; @@ -251,10 +221,10 @@ public void run(Werkstoff werkstoff) { werkstoff.get(capsuleMolten), GT_ModHandler.getModItem(Forestry.ID, "refractoryEmpty", 1)); GT_Utility.addFluidContainerData(emptyData); - GT_Values.RA.addFluidCannerRecipe( - werkstoff.get(capsuleMolten), - GT_Values.NI, - GT_Values.NF, - new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(capsuleMolten)).noItemOutputs().noFluidInputs() + .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)) + .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java index aba41181a..36b6e1e7d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java @@ -17,6 +17,8 @@ import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.plateDense; import static gregtech.api.enums.OrePrefixes.plateDouble; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.item.ItemStack; @@ -51,12 +53,10 @@ public void run(Werkstoff werkstoff) { werkstoff.get(plateDouble), TextureFactory.of(werkstoff.getTexSet().mTextures[72], werkstoff.getRGBA(), false), null); - GT_Values.RA.addPulveriserRecipe( - werkstoff.get(plateDouble), - new ItemStack[] { werkstoff.get(dust, 2) }, - null, - 2, - 8); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plateDouble)).itemOutputs(werkstoff.get(dust, 2)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java index f55169ece..725d4b631 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java @@ -18,6 +18,8 @@ import static gregtech.api.enums.OrePrefixes.gem; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.ore; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; @@ -37,11 +39,11 @@ public void run(Werkstoff werkstoff) { .addSmeltingRecipe(WerkstoffLoader.getCorrespondingItemStack(ore, werkstoff), werkstoff.get(ingot)); if (werkstoff.hasItemType(ore)) { - GT_Values.RA.addForgeHammerRecipe( - werkstoff.get(ore), - werkstoff.hasItemType(gem) ? werkstoff.get(gem) : werkstoff.get(crushed), - 16, - 10); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ore)) + .itemOutputs(werkstoff.hasItemType(gem) ? werkstoff.get(gem) : werkstoff.get(crushed)) + .noFluidInputs().noFluidOutputs().duration(16 * TICKS).eut(10).addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( werkstoff.get(ore), werkstoff.get(crushed, 2), diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java index 923ce10ad..f2a6fd998 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java @@ -22,6 +22,12 @@ import static gregtech.api.enums.OrePrefixes.plate; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.stickLong; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLatheRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.item.ItemStack; @@ -38,7 +44,6 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Proxy; @@ -48,12 +53,11 @@ public class SimpleMetalLoader implements IWerkstoffRunnable { public void run(Werkstoff werkstoff) { if (werkstoff.hasItemType(plate)) { if (werkstoff.hasItemType(gem)) { - GT_Values.RA.addLatheRecipe( - werkstoff.get(gem), - werkstoff.get(stick), - werkstoff.get(dustSmall, 2), - (int) Math.max(werkstoff.getStats().getMass() * 5L, 1L), - 16); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem)) + .itemOutputs(werkstoff.get(stick), werkstoff.get(dustSmall, 2)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1L)).eut(16).addTo(sLatheRecipes); + GT_ModHandler.addCraftingRecipe( werkstoff.get(stick, 2), GT_Proxy.tBits, @@ -62,11 +66,10 @@ public void run(Werkstoff werkstoff) { werkstoff.get(stick), GT_Proxy.tBits, new Object[] { "f ", " X", 'X', werkstoff.get(gem) }); - GT_Values.RA.addForgeHammerRecipe( - werkstoff.get(stick, 2), - werkstoff.get(stickLong), - (int) Math.max(werkstoff.getStats().getMass(), 1L), - 16); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick, 2)).itemOutputs(werkstoff.get(stickLong)) + .noFluidInputs().noFluidOutputs().duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) + .eut(16).addTo(sHammerRecipes); TextureSet texSet = werkstoff.getTexSet(); ITexture texture = SideReference.Side.Client @@ -78,8 +81,9 @@ public void run(Werkstoff werkstoff) { : TextureFactory.of(texSet.mTextures[block.mTextureIndex], werkstoff.getRGBA(), false); GregTech_API.registerCover(werkstoff.get(plate), texture, null); - GT_Values.RA - .addPulveriserRecipe(werkstoff.get(plate), new ItemStack[] { werkstoff.get(dust) }, null, 2, 8); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)).itemOutputs(werkstoff.get(dust)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + return; } @@ -100,7 +104,7 @@ public void run(Werkstoff werkstoff) { GT_Proxy.tBits, new Object[] { "hX", 'X', werkstoff.get(plate) }); - GT_Recipe.GT_Recipe_Map.sBenderRecipes.add( + sBenderRecipes.add( new BWRecipes.DynamicGTRecipe( true, new ItemStack[] { werkstoff.get(ingot), GT_Utility.getIntegratedCircuit(1) }, @@ -112,66 +116,52 @@ public void run(Werkstoff werkstoff) { (int) Math.max(werkstoff.getStats().getMass(), 1L), 24, 0)); - GT_Values.RA.addForgeHammerRecipe( - werkstoff.get(ingot, 3), - werkstoff.get(plate, 2), - (int) Math.max(werkstoff.getStats().getMass(), 1L), - 16); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 3)).itemOutputs(werkstoff.get(plate, 2)) + .noFluidInputs().noFluidOutputs().duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) + .eut(16).addTo(sHammerRecipes); + GregTech_API.registerCover( werkstoff.get(plate), TextureFactory.of(werkstoff.getTexSet().mTextures[71], werkstoff.getRGBA(), false), null); - GT_Values.RA.addLatheRecipe( - werkstoff.get(ingot), - werkstoff.get(stick), - werkstoff.get(dustSmall, 2), - (int) Math.max(werkstoff.getStats().getMass() * 5L, 1L), - 16); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)) + .itemOutputs(werkstoff.get(stick), werkstoff.get(dustSmall, 2)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1L)).eut(16).addTo(sLatheRecipes); - GT_Values.RA.addBenderRecipe( - werkstoff.get(plate), - GT_Utility.getIntegratedCircuit(1), - werkstoff.get(foil, 4), - (int) Math.max(werkstoff.getStats().getMass() * 1L, 1L), - 24); - - GT_Values.RA.addBenderRecipe( - werkstoff.get(ingot), - GT_Utility.getIntegratedCircuit(10), - werkstoff.get(foil, 4), - (int) Math.max(werkstoff.getStats().getMass() * 2L, 1L), - 24); - - GT_Values.RA.addForgeHammerRecipe( - werkstoff.get(stick, 2), - werkstoff.get(stickLong), - (int) Math.max(werkstoff.getStats().getMass(), 1L), - 16); + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(werkstoff.get(foil, 4)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 1L, 1L)).eut(24).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(werkstoff.get(foil, 4)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(24).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick, 2)).itemOutputs(werkstoff.get(stickLong)) + .noFluidInputs().noFluidOutputs().duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) + .eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Plate.get(0)) + .itemOutputs(werkstoff.get(plate)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(45).addTo(sExtruderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Rod.get(0)) + .itemOutputs(werkstoff.get(stick, 2)).noFluidInputs().noFluidOutputs() + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(45).addTo(sExtruderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)).itemOutputs(werkstoff.get(dust)).noFluidInputs() + .noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)).itemOutputs(werkstoff.get(dust)).noFluidInputs() + .noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stickLong)).itemOutputs(werkstoff.get(dust)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick)).itemOutputs(werkstoff.get(dustSmall, 2)) + .noFluidInputs().noFluidOutputs().duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); - GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot), - ItemList.Shape_Extruder_Plate.get(0), - werkstoff.get(plate), - (int) Math.max(werkstoff.getStats().getMass() * 2L, 1L), - 45); - GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot), - ItemList.Shape_Extruder_Rod.get(0), - werkstoff.get(stick, 2), - (int) Math.max(werkstoff.getStats().getMass() * 2L, 1L), - 45); - - GT_Values.RA.addPulveriserRecipe(werkstoff.get(ingot), new ItemStack[] { werkstoff.get(dust) }, null, 2, 8); - GT_Values.RA.addPulveriserRecipe(werkstoff.get(plate), new ItemStack[] { werkstoff.get(dust) }, null, 2, 8); - GT_Values.RA - .addPulveriserRecipe(werkstoff.get(stickLong), new ItemStack[] { werkstoff.get(dust) }, null, 2, 8); - GT_Values.RA.addPulveriserRecipe( - werkstoff.get(stick), - new ItemStack[] { werkstoff.get(dustSmall, 2) }, - null, - 2, - 8); } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java index a239efb65..e92c7ee63 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java @@ -28,6 +28,12 @@ import static gregtech.api.enums.OrePrefixes.toolHeadSaw; import static gregtech.api.enums.OrePrefixes.toolHeadWrench; import static gregtech.api.enums.OrePrefixes.turbineBlade; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; @@ -39,6 +45,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.common.GT_Proxy; @@ -424,68 +431,74 @@ public void run(Werkstoff werkstoff) { GT_Proxy.tBits, new Object[] { "fPd", "SPS", " P ", 'P', plateDouble.get(werkstoff.getBridgeMaterial()), 'S', screw.get(werkstoff.getBridgeMaterial()) }); - GT_Values.RA.addExtruderRecipe( - werkstoff.get(ingot, 6), - ItemList.Shape_Extruder_Turbine_Blade.get(0), - werkstoff.get(turbineBlade, 1), - (int) werkstoff.getStats().getMass() / 2 * 20, - 120); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Turbine_Blade.get(0), - werkstoff.getMolten(864), - werkstoff.get(turbineBlade, 1), - (int) werkstoff.getStats().getMass() * 20, - 120); - GT_Values.RA.addFormingPressRecipe( - werkstoff.get(plateDouble, 3), - werkstoff.get(screw, 2), - werkstoff.get(turbineBlade, 1), - (int) werkstoff.getStats().getMass() / 4 * 20, - 30); - GT_Values.RA.addAssemblerRecipe( - werkstoff.get(turbineBlade, 4), - GT_OreDictUnificator.get(stickLong, Materials.Magnalium, 1), - GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( - GT_MetaGenerated_Tool_01.TURBINE_SMALL, - 1, - werkstoff.getBridgeMaterial(), - Materials.Magnalium, - null), - 160, - 100); - GT_Values.RA.addAssemblerRecipe( - werkstoff.get(turbineBlade, 8), - GT_OreDictUnificator.get(stickLong, Materials.Titanium, 1), - GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( - GT_MetaGenerated_Tool_01.TURBINE, - 1, - werkstoff.getBridgeMaterial(), - Materials.Titanium, - null), - 320, - 400); - GT_Values.RA.addAssemblerRecipe( - werkstoff.get(turbineBlade, 12), - GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel, 1), - GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( - GT_MetaGenerated_Tool_01.TURBINE_LARGE, - 1, - werkstoff.getBridgeMaterial(), - Materials.TungstenSteel, - null), - 640, - 1600); - GT_Values.RA.addAssemblerRecipe( - werkstoff.get(turbineBlade, 16), - GT_OreDictUnificator.get(stickLong, Materials.Americium, 1), - GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( - GT_MetaGenerated_Tool_01.TURBINE_HUGE, - 1, - werkstoff.getBridgeMaterial(), - Materials.Americium, - null), - 1280, - 6400); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 6), ItemList.Shape_Extruder_Turbine_Blade.get(0)) + .itemOutputs(werkstoff.get(turbineBlade, 1)).noFluidInputs().noFluidOutputs() + .duration((int) werkstoff.getStats().getMass() / 2 * 20).eut(TierEU.RECIPE_MV) + .addTo(sExtruderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Turbine_Blade.get(0)) + .itemOutputs(werkstoff.get(turbineBlade, 1)).fluidInputs(werkstoff.getMolten(864)).noFluidOutputs() + .duration((int) werkstoff.getStats().getMass() * 20).eut(TierEU.RECIPE_MV) + .addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plateDouble, 3), werkstoff.get(screw, 2)) + .itemOutputs(werkstoff.get(turbineBlade, 1)).noFluidInputs().noFluidOutputs() + .duration((werkstoff.getStats().getMass() / 4) * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + werkstoff.get(turbineBlade, 4), + GT_OreDictUnificator.get(stickLong, Materials.Magnalium, 1)) + .itemOutputs( + GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( + GT_MetaGenerated_Tool_01.TURBINE_SMALL, + 1, + werkstoff.getBridgeMaterial(), + Materials.Magnalium, + null)) + .noFluidInputs().noFluidOutputs().duration(8 * SECONDS).eut(100).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + werkstoff.get(turbineBlade, 8), + GT_OreDictUnificator.get(stickLong, Materials.Titanium, 1)) + .itemOutputs( + GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( + GT_MetaGenerated_Tool_01.TURBINE, + 1, + werkstoff.getBridgeMaterial(), + Materials.Titanium, + null)) + .noFluidInputs().noFluidOutputs().duration(16 * SECONDS).eut(400).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + werkstoff.get(turbineBlade, 12), + GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel, 1)) + .itemOutputs( + GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( + GT_MetaGenerated_Tool_01.TURBINE_LARGE, + 1, + werkstoff.getBridgeMaterial(), + Materials.TungstenSteel, + null)) + .noFluidInputs().noFluidOutputs().duration(32 * SECONDS).eut(1600).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + werkstoff.get(turbineBlade, 16), + GT_OreDictUnificator.get(stickLong, Materials.Americium, 1)) + .itemOutputs( + GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats( + GT_MetaGenerated_Tool_01.TURBINE_HUGE, + 1, + werkstoff.getBridgeMaterial(), + Materials.Americium, + null)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 4 * SECONDS).eut(6400) + .addTo(sAssemblerRecipes); } if (!werkstoff.hasItemType(gem)) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java b/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java index d4ed594de..1db1293f2 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java @@ -395,6 +395,7 @@ public static T[] copyAndRemoveNulls(T[] input, Class clazz) { return retArr; } + @Deprecated public static int getMachineVoltageFromTier(int tier) { return (int) (30 * Math.pow(4, (tier - 1))); }