diff options
author | chochem <40274384+chochem@users.noreply.github.com> | 2023-09-10 01:00:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-10 01:00:27 +0100 |
commit | 87f5c9648088ad8c5683f0d9ce99fadcd8052aad (patch) | |
tree | d07647838351577700a43259368f547e0eba34e0 /src/main/java | |
parent | 9cff98e7429fb320edbcc1d88b8f897b1fbf35da (diff) | |
download | GT5-Unofficial-87f5c9648088ad8c5683f0d9ce99fadcd8052aad.tar.gz GT5-Unofficial-87f5c9648088ad8c5683f0d9ce99fadcd8052aad.tar.bz2 GT5-Unofficial-87f5c9648088ad8c5683f0d9ce99fadcd8052aad.zip |
Ra2ify gt++ Part 1 (#739)
* another deprecation
* agrichem ra2
* dehydrator coils
* nuclear chem
* general recipes
* generic chem RA2 and NO,NO2 cleanup
* start with gregtech recipes
* another deprecation
* more gregtech recipes
* dont deprecate ABS yet, was just a mistake
* gregtech recipes
* even more gregtech recipes
* finish assembler recipes
* fuels and fluid extraction
* centrifuge and mixer
* chem recipes
* compression and maceration
* remove duplicate bending
* blast furnace (remove a broken one)
* AL recipes
* distilling
* baseitemingots
* bee recipes and some cleanup
* coke things
* random one
* cryo and pyro
Diffstat (limited to 'src/main/java')
17 files changed, 1012 insertions, 1538 deletions
diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java index 45dc15b3f2..f85e18b8d6 100644 --- a/src/main/java/gtPlusPlus/core/item/ModItems.java +++ b/src/main/java/gtPlusPlus/core/item/ModItems.java @@ -4,6 +4,8 @@ import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Mods.GTPlusPlus; import static gregtech.api.enums.Mods.GregTech; import static gregtech.api.enums.Mods.Thaumcraft; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static gtPlusPlus.core.creative.AddToCreativeTab.tabMisc; import net.minecraft.item.EnumRarity; @@ -700,7 +702,9 @@ public final class ModItems { temp1, null, true); - GT_Values.RA.addFluidExtractionRecipe(temp2, null, new FluidStack(fluidFertBasic, 36), 10000, 5, 16); + GT_Values.RA.stdBuilder().itemInputs(temp2).noItemOutputs().noFluidInputs() + .fluidOutputs(new FluidStack(fluidFertBasic, 36)).duration(5 * TICKS).eut(16) + .addTo(sFluidExtractionRecipes); } fluidFertUN32 = FluidUtils.generateFluidNonMolten( "UN32Fertiliser", @@ -871,7 +875,7 @@ public final class ModItems { public static void registerCustomMaterialComponents() { // Custom GT++ Crafting Components - /** + /* * Try generate dusts for missing rare earth materials if they don't exist */ if (!ItemUtils.checkForInvalidItems(ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustGadolinium", 1))) { diff --git a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java index b180a80f2b..94a84ed27d 100644 --- a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java +++ b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java @@ -2,6 +2,8 @@ package gtPlusPlus.core.item.base.ingots; import static gregtech.api.enums.Mods.GTPlusPlus; import static gregtech.api.enums.Mods.GregTech; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; @@ -12,6 +14,7 @@ import net.minecraft.world.World; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.GT_Values; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.item.base.BaseItemComponent; import gtPlusPlus.core.lib.CORE; @@ -51,11 +54,9 @@ public class BaseItemIngotHot extends BaseItemIngot { private void generateRecipe() { Logger.WARNING("Adding Vacuum Freezer recipe for a Hot Ingot of " + this.materialName + "."); - CORE.RA.addVacuumFreezerRecipe( - ItemUtils.getSimpleStack(this), - this.outputIngot.copy(), - (int) Math.max(this.componentMaterial.getMass() * 3L, 1L), - this.componentMaterial.vVoltageMultiplier); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(this)).itemOutputs(this.outputIngot.copy()) + .noFluidInputs().noFluidOutputs().duration(Math.max(this.componentMaterial.getMass() * 3L, 1L) * TICKS) + .eut(this.componentMaterial.vVoltageMultiplier).addTo(sVacuumRecipes); } @Override diff --git a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java index 222f6e9c1a..dcb9738fd4 100644 --- a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java +++ b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java @@ -1,6 +1,8 @@ package gtPlusPlus.core.item.base.ingots; import static gregtech.api.enums.Mods.GTPlusPlus; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.entity.Entity; import net.minecraft.item.Item; @@ -8,7 +10,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.world.World; import cpw.mods.fml.common.registry.GameRegistry; -import gregtech.api.util.GT_ModHandler; +import gregtech.api.enums.GT_Values; import gregtech.api.util.GT_OreDictUnificator; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.creative.AddToCreativeTab; @@ -78,7 +80,8 @@ public class BaseItemIngot_OLD extends Item { if ((temp != null) && !temp.equals("")) { tempOutput = ItemUtils.getItemStackOfAmountFromOreDict(temp, 1); if (tempOutput != null) { - GT_ModHandler.addCompressionRecipe(tempStack, tempOutput); + GT_Values.RA.stdBuilder().itemInputs(tempStack).itemOutputs(tempOutput).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); } } } else if (this.unlocalName.contains("itemHotIngot")) { diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java index effb10268a..1da1fb6bfc 100644 --- a/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java +++ b/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java @@ -3,6 +3,11 @@ package gtPlusPlus.core.item.chemistry; import static gregtech.api.enums.Mods.BiomesOPlenty; import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Mods.TinkerConstruct; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +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_RecipeConstants.UniversalChemical; import java.lang.reflect.Field; import java.util.ArrayList; @@ -17,13 +22,15 @@ import net.minecraftforge.oredict.OreDictionary; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; -import gtPlusPlus.api.helpers.MaterialHelper; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.api.objects.minecraft.ItemPackage; import gtPlusPlus.core.item.circuit.GTPP_IntegratedCircuit_Item; import gtPlusPlus.core.lib.CORE; -import gtPlusPlus.core.material.ELEMENT; import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.minecraft.FluidUtils; @@ -166,7 +173,7 @@ public class AgriculturalChem extends ItemPackage { mAluminiumPellet = ItemUtils.simpleMetaStack(mAgrichemItem1, 17, 1); mSodiumAluminate = ItemUtils.simpleMetaStack(mAgrichemItem1, 18, 1); - /** + /* * If It exists, don't add a new one. */ if (OreDictionary.doesOreNameExist("dustSodiumHydroxide_GT5U") @@ -413,46 +420,26 @@ public class AgriculturalChem extends ItemPackage { ItemStack aDirtDust = ItemUtils.getSimpleStack(dustDirt, 1); // Poop Juice to Basic Slurry - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(10), - null, - FluidUtils.getFluidStack(PoopJuice, 1000), // In - // Fluid - FluidUtils.getFluidStack(ManureSlurry, 250), // Out Fluid - aDirtDust, - aDirtDust, - aManureByprod1, - aManureByprod1, - aManureByprod1, - aManureByprod1, - new int[] { 2000, 2000, 500, 500, 250, 250 }, // Chances - 10 * 20, // Time - 30); // EU + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(aDirtDust, aDirtDust, aManureByprod1, aManureByprod1, aManureByprod1, aManureByprod1) + .outputChances(2000, 2000, 500, 500, 250, 250).fluidInputs(FluidUtils.getFluidStack(PoopJuice, 1000)) + .fluidOutputs(FluidUtils.getFluidStack(ManureSlurry, 250)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sCentrifugeRecipes); // More Efficient way to get byproducts, less Slurry - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(20), - null, - FluidUtils.getFluidStack(PoopJuice, 1000), // In - // Fluid - FluidUtils.getFluidStack(ManureSlurry, 50), // Out Fluid - aDirtDust, - aDirtDust, - aManureByprod1, - aManureByprod1, - aManureByprod2, - aManureByprod2, - new int[] { 4000, 3000, 1250, 1250, 675, 675 }, // Chances - 20 * 20, // Time - 60); // EU + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(aDirtDust, aDirtDust, aManureByprod1, aManureByprod1, aManureByprod2, aManureByprod2) + .outputChances(4000, 3000, 1250, 1250, 675, 675).fluidInputs(FluidUtils.getFluidStack(PoopJuice, 1000)) + .fluidOutputs(FluidUtils.getFluidStack(ManureSlurry, 50)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_MV / 2).addTo(sCentrifugeRecipes); } private static void addAdvancedSlurryRecipes() { - ItemStack aCircuit = CI.getNumberedCircuit(10); + ItemStack aCircuit = GT_Utility.getIntegratedCircuit(10); ItemStack aBone; ItemStack aMeat; - ItemStack aEmptyCells = CI.emptyCells(2); + ItemStack aEmptyCells = Materials.Empty.getCells(2); ItemStack aInputCells = ItemUtils.getItemStackOfAmountFromOreDict("cellRawAnimalWaste", 2); FluidStack aOutput = FluidUtils.getFluidStack(FertileManureSlurry, 1000); @@ -462,17 +449,9 @@ public class AgriculturalChem extends ItemPackage { for (ItemStack aMeatStack : mList_Master_Meats) { aMeat = ItemUtils.getSimpleStack(aMeatStack, 5); // Poop Juice to Fertile Slurry - GT_Values.RA.addMixerRecipe( - aCircuit, - aBone, - aMeat, - aInputCells, - aBloodStack, // Input Fluid - aOutput, // Output Fluid - aEmptyCells, // Output Item - 20 * 8, // Time? - 60 // Eu? - ); + GT_Values.RA.stdBuilder().itemInputs(aCircuit, aBone, aMeat, aInputCells).itemOutputs(aEmptyCells) + .fluidInputs(aBloodStack).fluidOutputs(aOutput).duration(8 * SECONDS) + .eut(TierEU.RECIPE_MV / 2).addTo(sMixerRecipes); } } } @@ -487,13 +466,14 @@ public class AgriculturalChem extends ItemPackage { aPeat = ItemUtils.getSimpleStack(aPeatStack, 3); for (ItemStack aMeatStack : mList_Master_Meats) { aMeat = ItemUtils.getSimpleStack(aMeatStack, 5); - CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 20 * 20, 120); + GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); } - aPeat = ItemUtils.getSimpleStack(aPeatStack, 2); for (ItemStack aMeatStack : mList_Master_FruitVege) { aMeat = ItemUtils.getSimpleStack(aMeatStack, 9); - CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 10 * 20, 120); + GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); } } } @@ -507,12 +487,14 @@ public class AgriculturalChem extends ItemPackage { aPeat = ItemUtils.getSimpleStack(aPeatStack, 5); for (ItemStack aMeatStack : mList_Master_Meats) { aMeat = ItemUtils.getSimpleStack(aMeatStack, 7); - CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 10 * 20, 140); + GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid) + .noFluidOutputs().duration(10 * SECONDS).eut(140).addTo(UniversalChemical); } aPeat = ItemUtils.getSimpleStack(aPeatStack, 3); for (ItemStack aMeatStack : mList_Master_FruitVege) { aMeat = ItemUtils.getSimpleStack(aMeatStack, 12); - CORE.RA.addChemicalRecipe(aPeat, aMeat, aInputFluid, null, aOutputDust, 5 * 20, 140); + GT_Values.RA.stdBuilder().itemInputs(aPeat, aMeat).itemOutputs(aOutputDust).fluidInputs(aInputFluid) + .noFluidOutputs().duration(5 * SECONDS).eut(140).addTo(UniversalChemical); } } } @@ -527,7 +509,7 @@ public class AgriculturalChem extends ItemPackage { // Dehydrate Organise Fert to Normal Fert. - /** + /* * Forestry Support */ if (Forestry.isModLoaded()) { @@ -558,7 +540,7 @@ public class AgriculturalChem extends ItemPackage { } } - /** + /* * IC2 Support */ aFertIC2 = ItemUtils.getItemStackFromFQRN("IC2:itemFertilizer", 1); @@ -573,29 +555,25 @@ public class AgriculturalChem extends ItemPackage { 240); // Dirt Production - CORE.RA.addCompressorRecipe( - ItemUtils.getSimpleStack(dustDirt, 9), - ItemUtils.getSimpleStack(Blocks.dirt), - 20 * 2, - 8); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(dustDirt, 9)) + .itemOutputs(ItemUtils.getSimpleStack(Blocks.dirt)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS).eut(8).addTo(sCompressorRecipes); // Centrifuge Byproducts // Ammonium Nitrate, Phosphates, Calcium, Copper, Carbon - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(20), - ItemUtils.getSimpleStack(aManureByprod, 4), - FluidUtils.getFluidStack("sulfuricacid", 250), // In Fluid - FluidUtils.getFluidStack("sulfuricapatite", 50), // Out Fluid - MaterialHelper.getDustSmall(Materials.Phosphorus, 2), - MaterialHelper.getDustSmall(Materials.Calcium, 2), - MaterialHelper.getDustTiny(Materials.Copper, 1), - MaterialHelper.getDust(Materials.Carbon, 1), - ItemUtils.getSimpleStack(dustDirt, 1), - ItemUtils.getItemStackOfAmountFromOreDict("dustTinyAmmoniumNitrate", 1), - new int[] { 2500, 2500, 750, 1000, 5000, 250 }, // Chances - 20 * 20, // Time - 60); // EU + GT_Values.RA.stdBuilder() + .itemInputs(ItemUtils.getSimpleStack(aManureByprod, 4), GT_Utility.getIntegratedCircuit(20)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Phosphorus, 2L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Calcium, 2L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Copper, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), + ItemUtils.getSimpleStack(dustDirt, 1), + ItemUtils.getItemStackOfAmountFromOreDict("dustTinyAmmoniumNitrate", 1)) + .outputChances(2500, 2500, 750, 1000, 5000, 250).fluidInputs(Materials.SulfuricAcid.getFluid(250)) + .fluidOutputs(FluidUtils.getFluidStack("sulfuricapatite", 50)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_MV / 2).addTo(sCentrifugeRecipes); // Add Fuel Usages CORE.RA.addSemifluidFuel(FluidUtils.getFluidStack(PoopJuice, 1000), 12); @@ -603,20 +581,18 @@ public class AgriculturalChem extends ItemPackage { CORE.RA.addSemifluidFuel(FluidUtils.getFluidStack(FertileManureSlurry, 1000), 32); // Red Slurry / Tailings Processing - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedBioCircuit(10), - GT_Values.NI, - FluidUtils.getFluidStack(AgriculturalChem.RedMud, 1000), - FluidUtils.getWater(500), - ELEMENT.getInstance().IRON.getSmallDust(1), - ELEMENT.getInstance().COPPER.getSmallDust(1), - ELEMENT.getInstance().TIN.getSmallDust(1), - ELEMENT.getInstance().SULFUR.getSmallDust(1), - ELEMENT.getInstance().NICKEL.getTinyDust(1), - ELEMENT.getInstance().LEAD.getTinyDust(1), - new int[] { 3000, 3000, 2000, 2000, 1000, 1000 }, - 30 * 20, - 30); + GT_Values.RA.stdBuilder().itemInputs(CI.getNumberedBioCircuit(10)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iron, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Copper, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Tin, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Sulfur, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Nickel, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Lead, 1L)) + .outputChances(3000, 3000, 2000, 2000, 1000, 1000) + .fluidInputs(FluidUtils.getFluidStack(AgriculturalChem.RedMud, 1000)) + .fluidOutputs(Materials.Water.getFluid(500)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sCentrifugeRecipes); } @Override diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java index 3249b2da0e..99229211ad 100644 --- a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java +++ b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java @@ -1,5 +1,13 @@ package gtPlusPlus.core.item.chemistry; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; +import static gregtech.api.util.GT_RecipeConstants.FUEL_TYPE; +import static gregtech.api.util.GT_RecipeConstants.FUEL_VALUE; + import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -12,7 +20,10 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TextureSet; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_RecipeConstants; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.minecraft.ItemPackage; import gtPlusPlus.core.item.chemistry.general.ItemGenericChemBase; @@ -36,23 +47,9 @@ import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; public class GenericChem extends ItemPackage { /** - * Switches - */ - private static boolean usingGregtechNitricOxide = false; - - private static boolean usingGregtechNitrogenDioxide = false; - - /** * Materials */ - // public static final Material BAKELITE = new Material("Bakelite", MaterialState.SOLID, TextureSet.SET_DULL, new - // short[]{90, 140, 140}, 120, 240, 23, 24, true, null, 0);//Not a GT Inherited Material - // public static final Material NYLON = new Material("Nylon", MaterialState.SOLID, TextureSet.SET_SHINY, new - // short[]{45, 45, 45}, 300, 600, 44, 48, true, null, 0);//Not a GT Inherited Material - // public static final Material CARBYNE = new Material("Carbyne", MaterialState.SOLID, TextureSet.SET_DULL, new - // short[]{25, 25, 25}, 2500, 5000, 63, 52, true, null, 0);//Not a GT Inherited Material - // Refined PTFE public static final Material TEFLON = new Material( "Teflon", @@ -91,8 +88,6 @@ public class GenericChem extends ItemPackage { public static Fluid Ethylanthrahydroquinone2; public static Fluid Hydrogen_Peroxide; public static Fluid Lithium_Peroxide; - public static Fluid Nitric_Oxide; - public static Fluid Nitrogen_Dioxide; public static Fluid Carbon_Disulfide; /** @@ -329,24 +324,6 @@ public class GenericChem extends ItemPackage { null, null); - if (FluidRegistry.isFluidRegistered("nitricoxide")) { - Nitric_Oxide = FluidRegistry.getFluid("nitricoxide"); - usingGregtechNitricOxide = true; - } else { - Nitric_Oxide = FluidUtils - .generateFluidNoPrefix("nitricoxide", "Nitric Oxide", 200, new short[] { 125, 200, 240, 100 }); - } - if (FluidRegistry.isFluidRegistered("nitrogendioxide")) { - Nitrogen_Dioxide = FluidRegistry.getFluid("nitrogendioxide"); - usingGregtechNitrogenDioxide = true; - } else { - Nitrogen_Dioxide = FluidUtils.generateFluidNoPrefix( - "nitrogendioxide", - "Nitrogen Dioxide", - 200, - new short[] { 100, 175, 255, 100 }); - } - // Lithium Hydroperoxide - LiOH + H2O2 → LiOOH + 2 H2O // ItemUtils.generateSpecialUseDusts("LithiumHydroperoxide", "Lithium Hydroperoxide", "HLiO2", // Utils.rgbtoHexValue(125, 125, 125)); @@ -398,18 +375,6 @@ public class GenericChem extends ItemPackage { recipeHydrogenPeroxide(); recipeLithiumHydroperoxide(); recipeLithiumPeroxide(); - // The follow is using alk science, ignore them - if (!usingGregtechNitricOxide) { - recipeNitricOxide(); - } - if (!usingGregtechNitrogenDioxide) { - recipeNitrogenDioxide(); - } - - // Add recipes if we are not using GT's fluid. - if (!FluidRegistry.isFluidRegistered("hydrochloricacid_gt5u")) { - recipeHydrochloricAcid(); - } recipeSodiumEthoxide(); recipeCarbonDisulfide(); @@ -475,15 +440,13 @@ public class GenericChem extends ItemPackage { private void recipeCarbonDisulfide() { - CORE.RA.addBlastRecipe( - new ItemStack[] { ItemUtils.getItemStackOfAmountFromOreDict("fuelCoke", 8), - ItemUtils.getItemStackOfAmountFromOreDict("dustSulfur", 16) }, - new FluidStack[] {}, - new ItemStack[] { ItemUtils.getItemStackOfAmountFromOreDict("dustDarkAsh", 1) }, - new FluidStack[] { FluidUtils.getFluidStack(Carbon_Disulfide, 4000) }, - 20 * 60 * 10, - 30, - 1500); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getItemStackOfAmountFromOreDict("fuelCoke", 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 16L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L)).noFluidInputs() + .fluidOutputs(FluidUtils.getFluidStack(Carbon_Disulfide, 4000)).duration(10 * MINUTES) + .eut(TierEU.RECIPE_LV).metadata(COIL_HEAT, 1500).addTo(sBlastRecipes); CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedCircuit(20), ItemUtils.getSimpleStack(mBrownCatalyst, 0), @@ -518,229 +481,29 @@ public class GenericChem extends ItemPackage { // Burnables // Gas Fuels - GT_Values.RA.addFuel(ItemUtils.getItemStackOfAmountFromOreDict("cellNitrobenzene", 1), null, 1600, 1); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("cellNitrobenzene", 1)) + .noItemOutputs().noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 1600).metadata(FUEL_TYPE, 1) + .duration(0).eut(0).addTo(GT_RecipeConstants.Fuel); } private void recipeGrindingBallAlumina() { - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.getNumberedCircuit(10), ItemUtils.getSimpleStack(AgriculturalChem.mAlumina, 64) }, - FluidUtils.getFluidStack(GenericChem.Aniline, 4000), - ItemUtils.getSimpleStack(mMillingBallAlumina, 8), - 180 * 20, - 480); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(AgriculturalChem.mAlumina, 64), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemUtils.getSimpleStack(mMillingBallAlumina, 8)) + .fluidInputs(FluidUtils.getFluidStack(GenericChem.Aniline, 4000)).noFluidOutputs().duration(3 * MINUTES) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } private void recipeGrindingBallSoapstone() { - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.getNumberedCircuit(10), - ItemUtils.getItemStackOfAmountFromOreDict("dustSoapstone", 32) }, - FluidUtils.getFluidStack(AgrichemFluids.mLiquidResin, 2500), - ItemUtils.getSimpleStack(mMillingBallSoapstone, 8), - 120 * 20, - 480); - } - - // The follow is using alk science, ignore them - private void recipeNitrogenDioxide() { - ItemStack aNitricOxideCell = ItemUtils.getItemStackOfAmountFromOreDict("cellNitricOxide", 1); - ItemStack aNitrogenDioxideCell = ItemUtils.getItemStackOfAmountFromOreDict("cellNitrogenDioxide", 1); - GT_Values.RA.addChemicalRecipe( - ItemUtils.getSimpleStack(aNitricOxideCell, 2), - GT_Utility.getIntegratedCircuit(1), - ELEMENT.getInstance().OXYGEN.getFluidStack(1000), - FluidUtils.getFluidStack(Nitrogen_Dioxide, 3000), - CI.emptyCells(2), - 160); - GT_Values.RA.addChemicalRecipe( - ELEMENT.getInstance().OXYGEN.getCell(1), - GT_Utility.getIntegratedCircuit(1), - FluidUtils.getFluidStack(Nitric_Oxide, 2000), - FluidUtils.getFluidStack(Nitrogen_Dioxide, 3000), - CI.emptyCells(1), - 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - ItemUtils.getSimpleStack(aNitricOxideCell, 2), - CI.emptyCells(1), - ELEMENT.getInstance().OXYGEN.getFluidStack(1000), - GT_Values.NF, - ItemUtils.getSimpleStack(aNitrogenDioxideCell, 3), - GT_Values.NI, - 160, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - ELEMENT.getInstance().OXYGEN.getCell(1), - CI.emptyCells(2), - FluidUtils.getFluidStack(Nitric_Oxide, 2000), - GT_Values.NF, - ItemUtils.getSimpleStack(aNitrogenDioxideCell, 3), - GT_Values.NI, - 160, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - ItemUtils.getSimpleStack(aNitricOxideCell, 2), - ELEMENT.getInstance().OXYGEN.getCell(1), - GT_Values.NF, - GT_Values.NF, - ItemUtils.getSimpleStack(aNitrogenDioxideCell, 3), - GT_Values.NI, - 160, - 30); - } - - // The follow is using alk science, ignore them - private void recipeNitricOxide() { - ItemStack aWaterCell = ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 1); - ItemStack aNitricOxideCell = ItemUtils.getItemStackOfAmountFromOreDict("cellNitricOxide", 1); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - MISC_MATERIALS.AMMONIA.getCell(8), - CI.emptyCells(1), - ELEMENT.getInstance().OXYGEN.getFluidStack(5000), - FluidUtils.getFluidStack(Nitric_Oxide, 4000), - ItemUtils.getSimpleStack(aWaterCell, 9), - GT_Values.NI, - 160, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - ELEMENT.getInstance().OXYGEN.getCell(5), - CI.emptyCells(4), - MISC_MATERIALS.AMMONIA.getFluidStack(8000), - FluidUtils.getFluidStack(Nitric_Oxide, 4000), - ItemUtils.getSimpleStack(aWaterCell, 9), - GT_Values.NI, - 160, - 30); - GT_Values.RA.addChemicalRecipe( - MISC_MATERIALS.AMMONIA.getCell(8), - GT_Utility.getIntegratedCircuit(11), - ELEMENT.getInstance().OXYGEN.getFluidStack(5000), - FluidUtils.getWater(9000), - ItemUtils.getSimpleStack(aNitricOxideCell, 4), - CI.emptyCells(4), - 160); - GT_Values.RA.addChemicalRecipe( - ELEMENT.getInstance().OXYGEN.getCell(5), - GT_Utility.getIntegratedCircuit(11), - MISC_MATERIALS.AMMONIA.getFluidStack(8000), - FluidUtils.getWater(9000), - ItemUtils.getSimpleStack(aNitricOxideCell, 4), - CI.emptyCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - MISC_MATERIALS.AMMONIA.getCell(8), - GT_Utility.getIntegratedCircuit(2), - ELEMENT.getInstance().OXYGEN.getFluidStack(5000), - FluidUtils.getFluidStack(Nitric_Oxide, 4000), - CI.emptyCells(8), - 320); - GT_Values.RA.addChemicalRecipe( - ELEMENT.getInstance().OXYGEN.getCell(5), - GT_Utility.getIntegratedCircuit(2), - MISC_MATERIALS.AMMONIA.getFluidStack(8000), - FluidUtils.getFluidStack(Nitric_Oxide, 4000), - CI.emptyCells(5), - 320); - GT_Values.RA.addChemicalRecipe( - MISC_MATERIALS.AMMONIA.getCell(8), - GT_Utility.getIntegratedCircuit(12), - ELEMENT.getInstance().OXYGEN.getFluidStack(5000), - GT_Values.NF, - ItemUtils.getSimpleStack(aNitricOxideCell, 4), - CI.emptyCells(4), - 160); - GT_Values.RA.addChemicalRecipe( - ELEMENT.getInstance().OXYGEN.getCell(5), - GT_Utility.getIntegratedCircuit(12), - MISC_MATERIALS.AMMONIA.getFluidStack(8000), - GT_Values.NF, - ItemUtils.getSimpleStack(aNitricOxideCell, 4), - CI.emptyCells(1), - 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - MISC_MATERIALS.AMMONIA.getCell(8), - ELEMENT.getInstance().OXYGEN.getCell(5), - GT_Values.NF, - GT_Values.NF, - ItemUtils.getSimpleStack(aNitricOxideCell, 4), - ItemUtils.getSimpleStack(aWaterCell, 9), - 160, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { MISC_MATERIALS.AMMONIA.getFluidStack(8000), - ELEMENT.getInstance().OXYGEN.getFluidStack(5000) }, - new FluidStack[] { FluidUtils.getFluidStack(Nitric_Oxide, 4000), FluidUtils.getWater(9000) }, - null, - 160, - 30); - } - - // The follow is using alk science, ignore them - private void recipeHydrochloricAcid() { - - ItemStack aAcidCell = ItemUtils.getItemStackOfAmountFromOreDict("cellHydrochloricAcid", 1); - - CORE.RA.addChemicalRecipe( - ELEMENT.getInstance().CHLORINE.getCell(1), - GT_Utility.getIntegratedCircuit(1), - ELEMENT.getInstance().HYDROGEN.getFluidStack(1000), - FluidUtils.getFluidStack(HydrochloricAcid, 2000), - CI.emptyCells(1), - 60, - 8); - - CORE.RA.addChemicalRecipe( - ELEMENT.getInstance().HYDROGEN.getCell(1), - GT_Utility.getIntegratedCircuit(1), - ELEMENT.getInstance().CHLORINE.getFluidStack(1000), - FluidUtils.getFluidStack(HydrochloricAcid, 2000), - CI.emptyCells(1), - 60, - 8); - - GT_Values.RA.addElectrolyzerRecipe( - CI.emptyCells(1), - GT_Utility.getIntegratedCircuit(1), - FluidUtils.getFluidStack(HydrochloricAcid, 2000), - ELEMENT.getInstance().CHLORINE.getFluidStack(1000), - ELEMENT.getInstance().HYDROGEN.getCell(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); - - GT_Values.RA.addElectrolyzerRecipe( - CI.emptyCells(1), - GT_Utility.getIntegratedCircuit(11), - FluidUtils.getFluidStack(HydrochloricAcid, 2000), - ELEMENT.getInstance().HYDROGEN.getFluidStack(1000), - ELEMENT.getInstance().CHLORINE.getCell(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); - - GT_Values.RA.addElectrolyzerRecipe( - ItemUtils.getSimpleStack(aAcidCell, 2), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - ELEMENT.getInstance().HYDROGEN.getCell(1), - ELEMENT.getInstance().CHLORINE.getCell(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 32L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemUtils.getSimpleStack(mMillingBallSoapstone, 8)) + .fluidInputs(FluidUtils.getFluidStack(AgrichemFluids.mLiquidResin, 2500)).noFluidOutputs() + .duration(2 * MINUTES).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } private void recipeCyclohexane() { @@ -781,113 +544,122 @@ public class GenericChem extends ItemPackage { } private void recipeCatalystRed() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierOneChip(), CI.getEmptyCatalyst(10), ELEMENT.getInstance().IRON.getDust(2), - ELEMENT.getInstance().COPPER.getDust(2), }, - GT_Values.NF, - ItemUtils.getSimpleStack(mRedCatalyst, 10), - 20 * 20, - 30); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierOneChip(), + CI.getEmptyCatalyst(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 2L)) + .itemOutputs(ItemUtils.getSimpleStack(mRedCatalyst, 10)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); } private void recipeCatalystYellow() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierThreeChip(), CI.getEmptyCatalyst(10), - ELEMENT.getInstance().TUNGSTEN.getDust(4), ELEMENT.getInstance().NICKEL.getDust(4), }, - GT_Values.NF, - ItemUtils.getSimpleStack(mYellowCatalyst, 10), - 60 * 20, - 2000); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierThreeChip(), + CI.getEmptyCatalyst(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 4L)) + .itemOutputs(ItemUtils.getSimpleStack(mYellowCatalyst, 10)).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); } private void recipeCatalystBlue() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierTwoChip(), CI.getEmptyCatalyst(10), ELEMENT.getInstance().COBALT.getDust(3), - ELEMENT.getInstance().TITANIUM.getDust(3), }, - GT_Values.NF, - ItemUtils.getSimpleStack(mBlueCatalyst, 10), - 40 * 20, - 500); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierTwoChip(), + CI.getEmptyCatalyst(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 3L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 3L)) + .itemOutputs(ItemUtils.getSimpleStack(mBlueCatalyst, 10)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } private void recipeCatalystOrange() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierTwoChip(), CI.getEmptyCatalyst(10), ELEMENT.getInstance().VANADIUM.getDust(5), - ELEMENT.getInstance().PALLADIUM.getDust(5), }, - GT_Values.NF, - ItemUtils.getSimpleStack(mOrangeCatalyst, 10), - 40 * 20, - 500); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierTwoChip(), + CI.getEmptyCatalyst(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 5L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 5L)) + .itemOutputs(ItemUtils.getSimpleStack(mOrangeCatalyst, 10)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } private void recipeCatalystPurple() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierFourChip(), CI.getEmptyCatalyst(10), ELEMENT.getInstance().IRIDIUM.getDust(6), - ELEMENT.getInstance().RUTHENIUM.getDust(6), }, - GT_Values.NF, - ItemUtils.getSimpleStack(mPurpleCatalyst, 10), - 120 * 20, - 8000); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierFourChip(), + CI.getEmptyCatalyst(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 6L), + ELEMENT.getInstance().RUTHENIUM.getDust(6)) + .itemOutputs(ItemUtils.getSimpleStack(mPurpleCatalyst, 10)).noFluidInputs().noFluidOutputs() + .duration(2 * MINUTES).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); } private void recipeCatalystBrown() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierOneChip(), CI.getEmptyCatalyst(10), ELEMENT.getInstance().NICKEL.getDust(4), - ELEMENT.getInstance().ALUMINIUM.getDust(4), }, - GT_Values.NF, - ItemUtils.getSimpleStack(mBrownCatalyst, 10), - 15 * 20, - 30); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierOneChip(), + CI.getEmptyCatalyst(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4L)) + .itemOutputs(ItemUtils.getSimpleStack(mBrownCatalyst, 10)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); } private void recipeCatalystPink() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierThreeChip(), CI.getEmptyCatalyst(10), - ELEMENT.getInstance().PLATINUM.getDust(4), ELEMENT.getInstance().RHODIUM.getDust(4), }, - GT_Values.NF, - ItemUtils.getSimpleStack(mPinkCatalyst, 10), - 30 * 20, - 2000); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierThreeChip(), + CI.getEmptyCatalyst(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 4L), + ELEMENT.getInstance().RHODIUM.getDust(4)) + .itemOutputs(ItemUtils.getSimpleStack(mFormaldehydeCatalyst, 4)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sAssemblerRecipes); } private void recipeCatalystFormaldehyde() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierThreeChip(), CI.getEmptyCatalyst(4), - ItemUtils.getSimpleStack(RocketFuels.Formaldehyde_Catalyst_Dust, 8) }, - GT_Values.NF, - ItemUtils.getSimpleStack(mFormaldehydeCatalyst, 4), - 30 * 20, - 240); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierThreeChip(), + CI.getEmptyCatalyst(4), + ItemUtils.getSimpleStack(RocketFuels.Formaldehyde_Catalyst_Dust, 8)) + .itemOutputs(ItemUtils.getSimpleStack(mBrownCatalyst, 10)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); } private void recipeCatalystSolidAcid() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierThreeChip(), CI.getEmptyCatalyst(5), - ItemUtils.getItemStackOfAmountFromOreDict("dustLapis", 2) }, - MISC_MATERIALS.SOLID_ACID_MIXTURE.getFluidStack(1000), - ItemUtils.getSimpleStack(GenericChem.mSolidAcidCatalyst, 5), - 30 * 20, - 2000); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierThreeChip(), + CI.getEmptyCatalyst(5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 2L)) + .itemOutputs(ItemUtils.getSimpleStack(GenericChem.mSolidAcidCatalyst, 5)) + .fluidInputs(MISC_MATERIALS.SOLID_ACID_MIXTURE.getFluidStack(1000)).noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); } private void recipeCatalystInfiniteMutation() { - // Assembly Recipe - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { getTierThreeChip(), CI.getEmptyCatalyst(5), Materials.Infinity.getDust(1), - Materials.Naquadria.getDust(10) }, - GT_Values.NF, - ItemUtils.getSimpleStack(GenericChem.mInfiniteMutationCatalyst, 5), - 5 * 20, - 1966080); + // Assembler Recipe + GT_Values.RA.stdBuilder() + .itemInputs( + getTierThreeChip(), + CI.getEmptyCatalyst(5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Infinity, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 10L)) + .itemOutputs(ItemUtils.getSimpleStack(GenericChem.mInfiniteMutationCatalyst, 5)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); } private void recipeCadaverineAndPutrescine() { diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/NuclearChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/NuclearChem.java index 0096f48148..1a2bc6bd24 100644 --- a/src/main/java/gtPlusPlus/core/item/chemistry/NuclearChem.java +++ b/src/main/java/gtPlusPlus/core/item/chemistry/NuclearChem.java @@ -1,13 +1,18 @@ package gtPlusPlus.core.item.chemistry; -import net.minecraft.init.Items; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; + import net.minecraftforge.fluids.Fluid; +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; import gtPlusPlus.api.objects.minecraft.ItemPackage; -import gtPlusPlus.core.lib.CORE; -import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.minecraft.FluidUtils; -import gtPlusPlus.core.util.minecraft.ItemUtils; public class NuclearChem extends ItemPackage { @@ -79,20 +84,18 @@ public class NuclearChem extends ItemPackage { @Override public boolean generateRecipes() { if (generateMutagenRecipe) { - chemReator_CreateMutagen(); + chemReactor_CreateMutagen(); } return true; } - private static void chemReator_CreateMutagen() { - CORE.RA.addChemicalRecipe( - CI.getNumberedCircuit(20), - ItemUtils.getSimpleStack(Items.nether_star, 2), - FluidUtils.getMobEssence(5000), - FluidUtils.getFluidStack(GeneticMutagen, 8000), - null, - 30 * 20, - 500); + private static void chemReactor_CreateMutagen() { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 2), + GT_Utility.getIntegratedCircuit(20)) + .noItemOutputs().fluidInputs(FluidUtils.getMobEssence(5000)) + .fluidOutputs(FluidUtils.getFluidStack(GeneticMutagen, 8000)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); } - } diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java index 57a2ed8345..2ecaa0fd17 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java +++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java @@ -3,6 +3,41 @@ package gtPlusPlus.core.recipe; import static gregtech.api.enums.Mods.Backpack; import static gregtech.api.enums.Mods.Baubles; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBrewingRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDistillationRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDistilleryRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; +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.sFluidHeaterRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFusionRecipes; +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.sMixerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.util.GT_RecipeBuilder.BUCKETS; +import static gregtech.api.util.GT_RecipeBuilder.HOURS; +import static gregtech.api.util.GT_RecipeBuilder.INGOTS; +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.AssemblyLine; +import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; +import static gregtech.api.util.GT_RecipeConstants.FUEL_TYPE; +import static gregtech.api.util.GT_RecipeConstants.FUEL_VALUE; +import static gregtech.api.util.GT_RecipeConstants.FUSION_THRESHOLD; +import static gregtech.api.util.GT_RecipeConstants.RESEARCH_ITEM; +import static gregtech.api.util.GT_RecipeConstants.RESEARCH_TIME; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -16,6 +51,8 @@ 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_RecipeConstants; +import gregtech.api.util.GT_Utility; import gregtech.api.util.HotFuel; import gregtech.api.util.ThermalFuel; import gtPlusPlus.api.objects.Logger; @@ -52,27 +89,21 @@ public class RECIPES_GREGTECH { private static void execute() { electrolyzerRecipes(); assemblerRecipes(); - fluidcannerRecipes(); + fluidCannerRecipes(); distilleryRecipes(); extractorRecipes(); fluidExtractorRecipes(); - chemicalBathRecipes(); chemicalReactorRecipes(); dehydratorRecipes(); blastFurnaceRecipes(); largeChemReactorRecipes(); fusionRecipes(); - fissionFuelRecipes(); - autoclaveRecipes(); compressorRecipes(); mixerRecipes(); macerationRecipes(); centrifugeRecipes(); - benderRecipes(); cyclotronRecipes(); blastSmelterRecipes(); - sifterRecipes(); - electroMagneticSeperatorRecipes(); extruderRecipes(); cuttingSawRecipes(); breweryRecipes(); @@ -80,12 +111,11 @@ public class RECIPES_GREGTECH { assemblyLineRecipes(); latheRecipes(); vacuumFreezerRecipes(); - fluidheaterRecipes(); + fluidHeaterRecipes(); chemplantRecipes(); - packagerRecipes(); alloySmelterRecipes(); - /** + /* * Special Recipe handlers */ RECIPES_SeleniumProcessing.init(); @@ -97,24 +127,9 @@ public class RECIPES_GREGTECH { private static void alloySmelterRecipes() { // Wood's Glass Laser Lens - GT_Values.RA.addAlloySmelterRecipe( - MISC_MATERIALS.WOODS_GLASS.getDust(5), - ItemList.Shape_Mold_Ball.get(0), - GregtechItemList.Laser_Lens_WoodsGlass.get(1), - 20 * 300, - MaterialUtils.getVoltageForTier(3)); - } - - private static void packagerRecipes() {} - - private static void implosionRecipes() { - - // GT_Values.RA.addImplosionRecipe( - // ItemUtils.getSimpleStack(ModItems.itemSunnariumBit, 9), - // 16, - // ItemUtils.getSimpleStack(AdvancedSolarPanel.itemSunnariumPart, 1), - // GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glowstone, 8)); - + GT_Values.RA.stdBuilder().itemInputs(MISC_MATERIALS.WOODS_GLASS.getDust(5), ItemList.Shape_Mold_Ball.get(0)) + .itemOutputs(GregtechItemList.Laser_Lens_WoodsGlass.get(1)).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES).eut(TierEU.RECIPE_HV).addTo(sAlloySmelterRecipes); } private static void chemplantRecipes() { @@ -127,8 +142,8 @@ public class RECIPES_GREGTECH { // Advanced method for Nitric Acid Production CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedAdvancedCircuit(17), CI.getPinkCatalyst(0), }, - new FluidStack[] { FluidUtils.getFluidStack(GenericChem.Nitrogen_Dioxide, 4000), - FluidUtils.getAir(4000), FluidUtils.getWater(2000), }, + new FluidStack[] { Materials.NitrogenDioxide.getFluid(4000L), FluidUtils.getAir(4000), + FluidUtils.getWater(2000), }, new ItemStack[] {}, new FluidStack[] { FluidUtils.getFluidStack("nitricacid", 4000), }, 10 * 20, @@ -165,11 +180,10 @@ public class RECIPES_GREGTECH { // 3NO2 + H2O = 2HNO3 + NO CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedAdvancedCircuit(16), CI.getPinkCatalyst(0), }, - new FluidStack[] { FluidUtils.getFluidStack(GenericChem.Nitrogen_Dioxide, 3000), - FluidUtils.getDistilledWater(1000) }, + new FluidStack[] { Materials.NitrogenDioxide.getFluid(3000L), FluidUtils.getDistilledWater(1000) }, new ItemStack[] {}, new FluidStack[] { FluidUtils.getFluidStack("nitricacid", 2000), - FluidUtils.getFluidStack(GenericChem.Nitric_Oxide, 1000), }, + Materials.NitricOxide.getFluid(1000L), }, 10 * 20, 480, 2); @@ -251,106 +265,113 @@ public class RECIPES_GREGTECH { } } - private static void fluidheaterRecipes() { - GT_Values.RA.addFluidHeaterRecipe( - CI.getNumberedCircuit(20), - FluidUtils.getWater(1000), - FluidUtils.getHotWater(1000), - 30, - 30); + private static void fluidHeaterRecipes() { + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(20)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(FluidUtils.getHotWater(1000)) + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sFluidHeaterRecipes); } private static void vacuumFreezerRecipes() { - GT_Values.RA.addVacuumFreezerRecipe( - GregtechItemList.Bomb_Cast_Molten.get(1), - GregtechItemList.Bomb_Cast_Set.get(1), - 20 * 30); + GT_Values.RA.stdBuilder().itemInputs(GregtechItemList.Bomb_Cast_Molten.get(1)) + .itemOutputs(GregtechItemList.Bomb_Cast_Set.get(1)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); } private static void latheRecipes() { - - GT_Values.RA.addLatheRecipe( - ALLOY.EGLIN_STEEL.getBlock(1), - GregtechItemList.Bomb_Cast_Mold.get(1), - null, - 20 * 60 * 15, - 120); - - GT_Values.RA.addLatheRecipe( - GregtechItemList.Bomb_Cast_Set.get(1), - GregtechItemList.Bomb_Cast_Broken.get(2), - ItemUtils.getSimpleStack(ModItems.itemBombCasing, 2), - 20 * 60 * 5, - 30); + GT_Values.RA.stdBuilder().itemInputs(ALLOY.EGLIN_STEEL.getBlock(1)) + .itemOutputs(GregtechItemList.Bomb_Cast_Mold.get(1)).noFluidInputs().noFluidOutputs() + .duration(15 * MINUTES).eut(TierEU.RECIPE_MV).addTo(sLatheRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GregtechItemList.Bomb_Cast_Set.get(1)) + .itemOutputs( + GregtechItemList.Bomb_Cast_Broken.get(2), + ItemUtils.getSimpleStack(ModItems.itemBombCasing, 2)) + .noFluidInputs().noFluidOutputs().duration(5 * MINUTES).eut(TierEU.RECIPE_LV).addTo(sLatheRecipes); } private static void fusionRecipes() { - // Hypogen Creation - GT_Values.RA.addFusionReactorRecipe( - ELEMENT.STANDALONE.DRAGON_METAL.getFluidStack(144), - ELEMENT.STANDALONE.RHUGNOR.getFluidStack(288), - ELEMENT.STANDALONE.HYPOGEN.getFluidStack(36), - 2048 * 4, - MaterialUtils.getVoltageForTier(9), - 600000000 * 2); + // Hypogen + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs( + ELEMENT.STANDALONE.DRAGON_METAL.getFluidStack(144), + ELEMENT.STANDALONE.RHUGNOR.getFluidStack(288)) + .fluidOutputs(ELEMENT.STANDALONE.HYPOGEN.getFluidStack(36)) + .duration(6 * MINUTES + 49 * SECONDS + 12 * TICKS).eut(TierEU.RECIPE_UHV) + .metadata(FUSION_THRESHOLD, 1_200_000_000).addTo(sFusionRecipes); // Rhugnor - GT_Values.RA.addFusionReactorRecipe( - MaterialUtils.getMaterial("Infinity", "Neutronium").getMolten(144), - ALLOY.QUANTUM.getFluidStack(288), - ELEMENT.STANDALONE.RHUGNOR.getFluidStack(144), - 512, - MaterialUtils.getVoltageForTier(8), - 2000000000); + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs( + MaterialUtils.getMaterial("Infinity", "Neutronium").getMolten(144), + ALLOY.QUANTUM.getFluidStack(288)) + .fluidOutputs(ELEMENT.STANDALONE.RHUGNOR.getFluidStack(144)).duration(25 * SECONDS + 12 * TICKS) + .eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 2_000_000_000).addTo(sFusionRecipes); } private static void assemblyLineRecipes() { - ItemStack[] aCoilWire = new ItemStack[] { ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 0, 64), - ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 1, 64), - ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 2, 64), - ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 3, 64), }; - // Containment Casings - CORE.RA.addAssemblylineRecipe( - ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_1_CONTAINMENT, 1), - 20 * 60 * 30, - new Object[] { ItemList.Field_Generator_IV.get(32), ItemList.Electric_Motor_EV.get(64), - ItemList.Energy_LapotronicOrb.get(32), CI.getTieredComponent(OrePrefixes.cableGt12, 7, 32), + GT_Values.RA.stdBuilder() + .metadata( + RESEARCH_ITEM, + ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_1_CONTAINMENT, 1)) + .metadata(RESEARCH_TIME, 30 * MINUTES) + .itemInputs( + ItemList.Field_Generator_IV.get(32), + ItemList.Electric_Motor_EV.get(64), + ItemList.Energy_LapotronicOrb.get(32), + CI.getTieredComponent(OrePrefixes.cableGt12, 7, 32), CI.getTieredComponent(OrePrefixes.wireGt16, 6, 64), - ItemUtils.getOrePrefixStack(OrePrefixes.plate, Materials.Naquadria, 64), - ELEMENT.getInstance().GADOLINIUM.getDust(32), ELEMENT.getInstance().SAMARIUM.getDust(16), - ALLOY.ARCANITE.getGear(8), new Object[] { CI.getTieredCircuitOreDictName(5), 64 }, + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Naquadria, 64L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gadolinium, 32L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Samarium, 16L), + ALLOY.ARCANITE.getGear(8), + new Object[] { CI.getTieredCircuitOreDictName(5), 64 }, new Object[] { CI.getTieredCircuitOreDictName(6), 32 }, new Object[] { CI.getTieredCircuitOreDictName(7), 16 }, - GregtechItemList.Laser_Lens_Special.get(1), aCoilWire[3] }, - new FluidStack[] { ALLOY.NITINOL_60.getFluidStack(144 * 9 * 4), - ALLOY.ENERGYCRYSTAL.getFluidStack(144 * 9 * 8), ALLOY.TUMBAGA.getFluidStack(144 * 9 * 32), - ALLOY.NICHROME.getFluidStack(144 * 1 * 16), }, - ItemUtils.getSimpleStack(ModBlocks.blockCasings3Misc, 15, 32), - 20 * 60 * 10 * 2, - (int) MaterialUtils.getVoltageForTier(6)); + GregtechItemList.Laser_Lens_Special.get(1), + ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 3, 64)) + .fluidInputs( + ALLOY.NITINOL_60.getFluidStack(144 * 9 * 4), + ALLOY.ENERGYCRYSTAL.getFluidStack(144 * 9 * 8), + ALLOY.TUMBAGA.getFluidStack(144 * 9 * 32), + Materials.Nichrome.getMolten(16 * INGOTS)) + .noFluidOutputs().itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockCasings3Misc, 15, 32)) + .eut(TierEU.RECIPE_LuV).duration(20 * MINUTES).addTo(AssemblyLine); // Turbine Automation Port - CORE.RA.addAssemblylineRecipe( - ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_8_TURBINE_AUTOMATION, 1), - 20 * 60 * 60 * 24, - new Object[] { CI.getTieredMachineHull(8, 4), CI.getConveyor(8, 24), CI.getElectricMotor(7, 32), - CI.getElectricPiston(7, 16), CI.getEnergyCore(6, 8), CI.getPlate(8, 24), - CI.getTieredComponent(OrePrefixes.screw, 8, 48), CI.getTieredComponent(OrePrefixes.bolt, 7, 32), + GT_Values.RA.stdBuilder() + .metadata( + RESEARCH_ITEM, + ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_8_TURBINE_AUTOMATION, 1)) + .metadata(RESEARCH_TIME, 24 * HOURS) + .itemInputs( + CI.getTieredMachineHull(8, 4), + CI.getConveyor(8, 24), + CI.getElectricMotor(7, 32), + CI.getElectricPiston(7, 16), + CI.getEnergyCore(6, 8), + CI.getPlate(8, 24), + CI.getTieredComponent(OrePrefixes.screw, 8, 48), + CI.getTieredComponent(OrePrefixes.bolt, 7, 32), CI.getTieredComponent(OrePrefixes.rod, 6, 12), new Object[] { CI.getTieredCircuitOreDictName(7), 20 }, - CI.getTieredComponent(OrePrefixes.rotor, 6, 16), }, - new FluidStack[] { CI.getTieredFluid(8, 144 * 32), CI.getAlternativeTieredFluid(7, 144 * 16), - CI.getTertiaryTieredFluid(7, 144 * 16), ALLOY.BABBIT_ALLOY.getFluidStack(128 * 144) }, - GregtechItemList.Hatch_Input_TurbineHousing.get(4), - 20 * 60 * 60 * 2, - (int) MaterialUtils.getVoltageForTier(8)); + CI.getTieredComponent(OrePrefixes.rotor, 6, 16)) + .fluidInputs( + CI.getTieredFluid(8, 144 * 32), + CI.getAlternativeTieredFluid(7, 144 * 16), + CI.getTertiaryTieredFluid(7, 144 * 16), + ALLOY.BABBIT_ALLOY.getFluidStack(128 * 144)) + .noFluidOutputs().itemOutputs(GregtechItemList.Hatch_Input_TurbineHousing.get(4)).eut(TierEU.RECIPE_UV) + .duration(2 * HOURS).addTo(AssemblyLine); /* - * Contianment casings + * Containment casings */ - + ItemStack[] aCoilWire = new ItemStack[] { ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 0, 64), + ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 1, 64), + ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 2, 64), + ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 3, 64), }; ItemStack[] aGemCasings = new ItemStack[] { GregtechItemList.Battery_Casing_Gem_1.get(1), GregtechItemList.Battery_Casing_Gem_2.get(1), GregtechItemList.Battery_Casing_Gem_3.get(1), GregtechItemList.Battery_Casing_Gem_4.get(1), }; @@ -360,17 +381,18 @@ public class RECIPES_GREGTECH { int aCasingSlot = 0; for (int j = 6; j < 10; j++) { - CORE.RA.addAssemblylineRecipe( - aResearch[aCasingSlot], - 20 * 60 * 60, - new ItemStack[] { CI.getTieredComponent(OrePrefixes.plate, j - 1, 16), + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, aResearch[aCasingSlot]).metadata(RESEARCH_TIME, 1 * HOURS) + .itemInputs( + CI.getTieredComponent(OrePrefixes.plate, j - 1, 16), CI.getTieredComponent(OrePrefixes.cableGt08, j + 1, 32), - CI.getTieredComponent(OrePrefixes.gearGt, j - 1, 4), aCoilWire[aCasingSlot] }, - new FluidStack[] { CI.getTieredFluid(j, 144 * 8), CI.getTertiaryTieredFluid(j - 2, 144 * 16), - CI.getAlternativeTieredFluid(j, 144 * 16), }, - aGemCasings[aCasingSlot++], - 20 * 60 * 1 * 2, - (int) MaterialUtils.getVoltageForTier(j)); + CI.getTieredComponent(OrePrefixes.gearGt, j - 1, 4), + aCoilWire[aCasingSlot]) + .fluidInputs( + CI.getTieredFluid(j, 144 * 8), + CI.getTertiaryTieredFluid(j - 2, 144 * 16), + CI.getAlternativeTieredFluid(j, 144 * 16)) + .noFluidOutputs().itemOutputs(aGemCasings[aCasingSlot++]).eut(GT_Values.V[j]).duration(2 * MINUTES) + .addTo(AssemblyLine); } /* @@ -386,42 +408,46 @@ public class RECIPES_GREGTECH { Particle.getBaseParticle(Particle.GRAVITON) }; aCasingSlot = 0; for (int j = 6; j < 10; j++) { - CORE.RA.addAssemblylineRecipe( - aExoticInputs[aCasingSlot], - 20 * 60 * 60 * 5, - new Object[] { aGemCasings[aCasingSlot], ItemUtils.getSimpleStack(aExoticInputs[aCasingSlot], 16), + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, aExoticInputs[aCasingSlot]) + .metadata(RESEARCH_TIME, 5 * HOURS) + .itemInputs( + aGemCasings[aCasingSlot], + ItemUtils.getSimpleStack(aExoticInputs[aCasingSlot], 16), CI.getTieredComponent(OrePrefixes.plate, j, 16), new Object[] { CI.getTieredCircuitOreDictName(j), 8 }, CI.getTieredComponent(OrePrefixes.wireGt16, j + 1, 32), CI.getTieredComponent(OrePrefixes.bolt, j, 8), - CI.getTieredComponent(OrePrefixes.screw, j - 1, 8), }, - new FluidStack[] { CI.getTieredFluid(j, 144 * 1 * 16), - CI.getTertiaryTieredFluid(j - 2, 144 * 2 * 16), CI.getAlternativeTieredFluid(j, 144 * 16), - CI.getTertiaryTieredFluid(j - 1, 144 * 16), }, - aGemBatteries[aCasingSlot++], - 20 * 60 * 1 * 2, - (int) MaterialUtils.getVoltageForTier(j)); + CI.getTieredComponent(OrePrefixes.screw, j - 1, 8)) + .fluidInputs( + CI.getTieredFluid(j, 144 * 1 * 16), + CI.getTertiaryTieredFluid(j - 2, 144 * 2 * 16), + CI.getAlternativeTieredFluid(j, 144 * 16), + CI.getTertiaryTieredFluid(j - 1, 144 * 16)) + .noFluidOutputs().itemOutputs(aGemBatteries[aCasingSlot++]).eut(GT_Values.V[j]) + .duration(2 * MINUTES).addTo(AssemblyLine); } if (Baubles.isModLoaded()) { // Nano Healer - CORE.RA.addAssemblylineRecipe( - ItemUtils.simpleMetaStack(Items.golden_apple, 1, 1), - 20 * 60 * 10, - new Object[] { ItemUtils.getSimpleStack(aGemCasings[2], 4), + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemUtils.simpleMetaStack(Items.golden_apple, 1, 1)) + .metadata(RESEARCH_TIME, 10 * MINUTES) + .itemInputs( + ItemUtils.getSimpleStack(aGemCasings[2], 4), CI.getTieredComponent(OrePrefixes.plate, 8, 32), new Object[] { CI.getTieredCircuitOreDictName(7), 16 }, CI.getTieredComponent(OrePrefixes.cableGt02, 7, 16), CI.getTieredComponent(OrePrefixes.gearGt, 6, 6), CI.getTieredComponent(OrePrefixes.screw, 7, 16), CI.getTieredComponent(OrePrefixes.bolt, 5, 24), - CI.getTieredComponent(OrePrefixes.frameGt, 4, 12), aCoilWire[3] }, - new FluidStack[] { CI.getTieredFluid(7, 144 * 18 * 16), CI.getTertiaryTieredFluid(7, 144 * 18 * 16), + CI.getTieredComponent(OrePrefixes.frameGt, 4, 12), + ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 3, 64)) + .fluidInputs( + CI.getTieredFluid(7, 144 * 18 * 16), + CI.getTertiaryTieredFluid(7, 144 * 18 * 16), CI.getAlternativeTieredFluid(6, 144 * 18 * 16), - CI.getAlternativeTieredFluid(7, 144 * 18 * 16), }, - ItemUtils.getItemStackFromFQRN("miscutils:personalHealingDevice", 1), - 20 * 60 * 30 * 2, - (int) MaterialUtils.getVoltageForTier(7)); + CI.getAlternativeTieredFluid(7, 144 * 18 * 16)) + .noFluidOutputs().itemOutputs(ItemUtils.getItemStackFromFQRN("miscutils:personalHealingDevice", 1)) + .eut(TierEU.RECIPE_ZPM).duration(1 * HOURS).addTo(AssemblyLine); // Charge Pack LuV-UV @@ -438,49 +464,58 @@ public class RECIPES_GREGTECH { int aCurrSlot = 0; for (int h = 6; h < 10; h++) { - CORE.RA.addAssemblylineRecipe( - aChargeResearch[aCurrSlot], - 20 * 60 * 10 * (aCurrSlot + 1), - new Object[] { ItemUtils.getSimpleStack(aGemBatteries[aCurrSlot], 2), aCoilWire[aCurrSlot], + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, aChargeResearch[aCurrSlot]) + .metadata(RESEARCH_TIME, 10 * (aCurrSlot + 1) * MINUTES) + .itemInputs( + ItemUtils.getSimpleStack(aGemBatteries[aCurrSlot], 2), + aCoilWire[aCurrSlot], CI.getTieredComponent(OrePrefixes.plate, h, 8), new Object[] { CI.getTieredCircuitOreDictName(h), 4 }, new Object[] { CI.getTieredCircuitOreDictName(h - 1), 8 }, CI.getTieredComponent(OrePrefixes.cableGt12, h - 1, 16), CI.getTieredComponent(OrePrefixes.screw, h, 16), - CI.getTieredComponent(OrePrefixes.bolt, h - 2, 32), CI.getFieldGenerator(h, 1), }, - new FluidStack[] { CI.getTieredFluid(h, 144 * 4 * 8), + CI.getTieredComponent(OrePrefixes.bolt, h - 2, 32), + CI.getFieldGenerator(h, 1)) + .fluidInputs( + CI.getTieredFluid(h, 144 * 4 * 8), CI.getTertiaryTieredFluid(h - 1, 144 * 4 * 8), CI.getAlternativeTieredFluid(h - 1, 144 * 4 * 8), - CI.getAlternativeTieredFluid(h - 2, 144 * 4 * 8), }, - aChargeOutputs[aCurrSlot], - 20 * 60 * 30 * 2 * (aCurrSlot + 1), - (int) MaterialUtils.getVoltageForTier(h)); + CI.getAlternativeTieredFluid(h - 2, 144 * 4 * 8)) + .noFluidOutputs().itemOutputs(aChargeOutputs[aCurrSlot]).eut(GT_Values.V[h]) + .duration((aCurrSlot + 1) * HOURS).addTo(AssemblyLine); aCurrSlot++; } // Cloaking device - CORE.RA.addAssemblylineRecipe( - ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1), - 20 * 60 * 10, - new Object[] { ItemUtils.getSimpleStack(aGemCasings[3], 4), + GT_Values.RA.stdBuilder() + .metadata( + RESEARCH_ITEM, + ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1)) + .metadata(RESEARCH_TIME, 10 * MINUTES) + .itemInputs( + ItemUtils.getSimpleStack(aGemCasings[3], 4), CI.getTieredComponent(OrePrefixes.plate, 8, 32), new Object[] { CI.getTieredCircuitOreDictName(7), 16 }, CI.getTieredComponent(OrePrefixes.cableGt04, 8, 16), CI.getTieredComponent(OrePrefixes.gearGt, 7, 6), CI.getTieredComponent(OrePrefixes.screw, 8, 16), CI.getTieredComponent(OrePrefixes.bolt, 7, 24), - CI.getTieredComponent(OrePrefixes.frameGt, 5, 12), aCoilWire[3] }, - new FluidStack[] { CI.getTieredFluid(8, 144 * 18 * 16), CI.getTertiaryTieredFluid(8, 144 * 18 * 16), + CI.getTieredComponent(OrePrefixes.frameGt, 5, 12), + ItemUtils.simpleMetaStack("miscutils:itemDehydratorCoilWire", 3, 64)) + .fluidInputs( + CI.getTieredFluid(8, 144 * 18 * 16), + CI.getTertiaryTieredFluid(8, 144 * 18 * 16), CI.getAlternativeTieredFluid(7, 144 * 18 * 16), - CI.getAlternativeTieredFluid(8, 144 * 18 * 16), }, - ItemUtils.getItemStackFromFQRN("miscutils:personalCloakingDevice", 1), - 20 * 60 * 30 * 2, - (int) MaterialUtils.getVoltageForTier(8)); + CI.getAlternativeTieredFluid(8, 144 * 18 * 16)) + .noFluidOutputs().itemOutputs(ItemUtils.getItemStackFromFQRN("miscutils:personalCloakingDevice", 1)) + .eut(TierEU.RECIPE_UV).duration(1 * HOURS).addTo(AssemblyLine); } - GT_Values.RA.addAssemblylineRecipe( - GregtechItemList.Industrial_AlloyBlastSmelter.get(1, new Object() {}), - 20 * 60 * 30, - new Object[] { GregtechItemList.Industrial_AlloyBlastSmelter.get(64L, new Object() {}), + + GT_Values.RA.stdBuilder() + .metadata(RESEARCH_ITEM, GregtechItemList.Industrial_AlloyBlastSmelter.get(1, new Object() {})) + .metadata(RESEARCH_TIME, 30 * MINUTES) + .itemInputs( + GregtechItemList.Industrial_AlloyBlastSmelter.get(64L, new Object() {}), GregtechItemList.Industrial_AlloyBlastSmelter.get(64L, new Object() {}), GregtechItemList.Industrial_AlloyBlastSmelter.get(64L, new Object() {}), GregtechItemList.Industrial_AlloyBlastSmelter.get(64L, new Object() {}), @@ -488,13 +523,15 @@ public class RECIPES_GREGTECH { ItemList.Conveyor_Module_UV.get(4L, new Object() {}), new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 8 }, new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 16 }, - ItemList.Circuit_Chip_PPIC.get(16, new Object() {}), ALLOY.PIKYONIUM.getPlate(16), - ALLOY.CINOBITE.getScrew(32) }, - new FluidStack[] { ALLOY.PIKYONIUM.getFluidStack(144 * 8), ALLOY.INDALLOY_140.getFluidStack(144 * 9), - Materials.SolderingAlloy.getMolten(144 * 10) }, - GregtechItemList.Mega_AlloyBlastSmelter.get(1L), - 60 * 20, - 1000000); + ItemList.Circuit_Chip_PPIC.get(16, new Object() {}), + ALLOY.PIKYONIUM.getPlate(16), + ALLOY.CINOBITE.getScrew(32)) + .fluidInputs( + ALLOY.PIKYONIUM.getFluidStack(144 * 8), + ALLOY.INDALLOY_140.getFluidStack(144 * 9), + Materials.SolderingAlloy.getMolten(144 * 10)) + .noFluidOutputs().itemOutputs(GregtechItemList.Mega_AlloyBlastSmelter.get(1L)) + .eut(TierEU.RECIPE_UHV / 2).duration(1 * MINUTES).addTo(AssemblyLine); } private static void laserEngraverRecipes() { @@ -507,142 +544,92 @@ public class RECIPES_GREGTECH { GregtechItemList.TransmissionComponent_ZPM, GregtechItemList.TransmissionComponent_UV, GregtechItemList.TransmissionComponent_MAX, }; for (int i = 0; i < 10; i++) { - GT_Values.RA.addLaserEngraverRecipe( - CI.getEmitter(i, 2), - CI.getSensor(i, 2), - aTransParts[i].get(1), - 20 * 5, - MaterialUtils.getVoltageForTier(i)); + GT_Values.RA.stdBuilder().itemInputs(CI.getEmitter(i, 2), CI.getSensor(i, 2)) + .itemOutputs(aTransParts[i].get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(GT_Values.VP[i]).addTo(sLaserEngraverRecipes); } - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 6L), - GregtechItemList.Laser_Lens_Special.get(0), - ELEMENT.STANDALONE.CELESTIAL_TUNGSTEN.getDust(1), - 20 * 60 * 3, - MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.CELESTIAL_TUNGSTEN.vTier)); - - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 8L), - GregtechItemList.Laser_Lens_Special.get(0), - ELEMENT.STANDALONE.ASTRAL_TITANIUM.getDust(1), - 20 * 60 * 2, - MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.ASTRAL_TITANIUM.vTier)); - - GT_Values.RA.addLaserEngraverRecipe( - ALLOY.NITINOL_60.getBlock(2), - GregtechItemList.Laser_Lens_Special.get(0), - ELEMENT.STANDALONE.ADVANCED_NITINOL.getBlock(1), - 20 * 60 * 1, - MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.ADVANCED_NITINOL.vTier)); - - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 64L), - GregtechItemList.Laser_Lens_Special.get(0), - ELEMENT.STANDALONE.CHRONOMATIC_GLASS.getDust(1), - 20 * 60 * 5, - MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.CHRONOMATIC_GLASS.vTier)); - - GT_Values.RA.addLaserEngraverRecipe( - CI.getFieldGenerator(6, 1), - CI.getEmitter(7, 2), - ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_1_CONTAINMENT, 1), - 20 * 60 * 5, - MaterialUtils.getVoltageForTier(5)); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 6L), + GregtechItemList.Laser_Lens_Special.get(0)) + .itemOutputs(ELEMENT.STANDALONE.CELESTIAL_TUNGSTEN.getDust(1)).noFluidInputs().noFluidOutputs() + .duration(3 * MINUTES).eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.CELESTIAL_TUNGSTEN.vTier)) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 8L), + GregtechItemList.Laser_Lens_Special.get(0)) + .itemOutputs(ELEMENT.STANDALONE.ASTRAL_TITANIUM.getDust(1)).noFluidInputs().noFluidOutputs() + .duration(2 * MINUTES).eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.ASTRAL_TITANIUM.vTier)) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ALLOY.NITINOL_60.getBlock(2), GregtechItemList.Laser_Lens_Special.get(0)) + .itemOutputs(ELEMENT.STANDALONE.ADVANCED_NITINOL.getBlock(1)).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES).eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.ADVANCED_NITINOL.vTier)) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 64L), + GregtechItemList.Laser_Lens_Special.get(0)) + .itemOutputs(ELEMENT.STANDALONE.CHRONOMATIC_GLASS.getDust(1)).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES).eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.CHRONOMATIC_GLASS.vTier)) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().itemInputs(CI.getFieldGenerator(6, 1), CI.getEmitter(7, 2)) + .itemOutputs(ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_1_CONTAINMENT, 1)) + .noFluidInputs().noFluidOutputs().duration(5 * MINUTES).eut(TierEU.RECIPE_IV) + .addTo(sLaserEngraverRecipes); // Distillus Upgrade Chip - GT_Values.RA.addLaserEngraverRecipe( - GregtechItemList.Laser_Lens_WoodsGlass.get(0), - ItemUtils.simpleMetaStack(AgriculturalChem.mBioCircuit, 20, 1), - GregtechItemList.Distillus_Upgrade_Chip.get(1), - 20 * 60 * 5, - MaterialUtils.getVoltageForTier(5)); - - // GT_Values.RA.addLaserEngraverRecipe( - // GregtechItemList.Laser_Lens_WoodsGlass.get(0), - // ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 8, 1), - // ItemUtils.getSimpleStack(ModItems.itemSunnariumBit, 3), - // 20 * 60 * 5, - // MaterialUtils.getVoltageForTier(3)); - + GT_Values.RA.stdBuilder() + .itemInputs( + GregtechItemList.Laser_Lens_WoodsGlass.get(0), + ItemUtils.simpleMetaStack(AgriculturalChem.mBioCircuit, 20, 1)) + .itemOutputs(GregtechItemList.Distillus_Upgrade_Chip.get(1)).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES).eut(TierEU.RECIPE_IV).addTo(sLaserEngraverRecipes); } private static void breweryRecipes() { - CORE.RA.addBrewingRecipe( - 14, - EnchantingUtils.getMobEssence(100), - EnchantingUtils.getLiquidXP(1332), - 100, - 120, - false); - CORE.RA.addBrewingRecipe( - 14, - EnchantingUtils.getLiquidXP(1332), - EnchantingUtils.getMobEssence(100), - 100, - 120, - false); - CORE.RA.addBrewingRecipe( - ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest), - FluidUtils.getFluidStack("water", 100), - FluidUtils.getFluidStack("biomass", 100), - 1200, - 3, - false); - CORE.RA.addBrewingRecipe( - ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest), - FluidUtils.getFluidStack("honey", 100), - FluidUtils.getFluidStack("biomass", 150), - 1200, - 3, - false); - CORE.RA.addBrewingRecipe( - ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest), - FluidUtils.getFluidStack("juice", 100), - FluidUtils.getFluidStack("biomass", 150), - 1200, - 3, - false); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(14)).noItemOutputs() + .fluidInputs(EnchantingUtils.getMobEssence(100)).fluidOutputs(EnchantingUtils.getLiquidXP(1332)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sBrewingRecipes); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(14)).noItemOutputs() + .fluidInputs(EnchantingUtils.getLiquidXP(1332)).fluidOutputs(EnchantingUtils.getMobEssence(100)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sBrewingRecipes); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest)) + .noItemOutputs().fluidInputs(Materials.Water.getFluid(100L)) + .fluidOutputs(Materials.Biomass.getFluid(100L)).duration(1 * MINUTES).eut(3).addTo(sBrewingRecipes); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest)) + .noItemOutputs().fluidInputs(Materials.Honey.getFluid(100L)) + .fluidOutputs(Materials.Biomass.getFluid(100L)).duration(1 * MINUTES).eut(3).addTo(sBrewingRecipes); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest)) + .noItemOutputs().fluidInputs(FluidUtils.getFluidStack("juice", 100)) + .fluidOutputs(Materials.Biomass.getFluid(100L)).duration(1 * MINUTES).eut(3).addTo(sBrewingRecipes); } private static void cuttingSawRecipes() { - GT_Values.RA.addCutterRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("blockMeatRaw", 1), // Input - ItemUtils.getItemStackOfAmountFromOreDict("plateMeatRaw", 9), // Output - null, - 16, // Time - 8); // EU + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("blockMeatRaw", 1)) + .itemOutputs(ItemUtils.getItemStackOfAmountFromOreDict("plateMeatRaw", 9)).noFluidInputs() + .noFluidOutputs().duration(16 * TICKS).eut(TierEU.RECIPE_ULV).addTo(sCutterRecipes); } private static void electrolyzerRecipes() { - GT_Values.RA.addElectrolyzerRecipe( - ItemUtils.getSimpleStack(ModItems.dustDecayedRadium226, 1), - null, - null, - FluidUtils.getFluidStack("radon", 144), - null, - null, - null, - null, - null, - null, - new int[] {}, - 20 * 90, - 240); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(ModItems.dustDecayedRadium226, 1)).noItemOutputs() + .noFluidInputs().fluidOutputs(FluidUtils.getFluidStack("radon", 144)) + .duration(1 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sElectrolyzerRecipes); } private static void extruderRecipes() { // Osmium Credits - if (GT_Values.RA.addExtruderRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("blockOsmium", 1), - ItemList.Shape_Mold_Credit.get(0), - ItemList.Credit_Greg_Osmium.get(1), - (int) Math.max(Materials.Osmium.getMass() * 2L * 20, 1), - 1024)) { - Logger.WARNING("Extruder Recipe: Osmium Credit - Success"); - } else { - Logger.WARNING("Extruder Recipe: Osmium Credit - Failed"); - } + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getItemStackOfAmountFromOreDict("blockOsmium", 1), + ItemList.Shape_Mold_Credit.get(0)) + .itemOutputs(ItemList.Credit_Greg_Osmium.get(1)).noFluidInputs().noFluidOutputs() + .duration(6 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_EV / 2).addTo(sExtruderRecipes); } private static void blastSmelterRecipes() { @@ -807,68 +794,24 @@ public class RECIPES_GREGTECH { 491520); } - private static void fluidcannerRecipes() { + private static void fluidCannerRecipes() { // Sulfuric Acid - CORE.RA.addFluidCannerRecipe( - ItemUtils.getSimpleStack(Items.glass_bottle), - ItemUtils.getSimpleStack(ModItems.itemSulfuricPotion), - FluidUtils.getFluidStack("sulfuricacid", 250), - null); - CORE.RA.addFluidCannerRecipe( - ItemUtils.getSimpleStack(ModItems.itemSulfuricPotion), - ItemUtils.getSimpleStack(Items.glass_bottle), - null, - FluidUtils.getFluidStack("sulfuricacid", 250)); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(Items.glass_bottle)) + .itemOutputs(ItemUtils.getSimpleStack(ModItems.itemSulfuricPotion)) + .fluidInputs(Materials.SulfuricAcid.getFluid(250)).noFluidOutputs().duration(4).eut(1) + .addTo(sFluidCannerRecipes); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(ModItems.itemSulfuricPotion)) + .itemOutputs(ItemUtils.getSimpleStack(Items.glass_bottle)).noFluidInputs() + .fluidOutputs(Materials.SulfuricAcid.getFluid(250)).duration(4).eut(1).addTo(sFluidCannerRecipes); // Hydrofluoric Acid - boolean addedGtExtraction = false; - // Try use Internal GT Fluid first - // Hydrofluoric Acid - CORE.RA.addFluidCannerRecipe( - ItemUtils.getSimpleStack(Items.glass_bottle), - ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion), - FluidUtils.getFluidStack("hydrofluoricacid_gt5u", 250), - null); - addedGtExtraction = CORE.RA.addFluidCannerRecipe( - ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion), - ItemUtils.getSimpleStack(Items.glass_bottle), - null, - FluidUtils.getFluidStack("hydrofluoricacid_gt5u", 250)); - // Add a Fill recipe for GT++ Acid - CORE.RA.addFluidCannerRecipe( - ItemUtils.getSimpleStack(Items.glass_bottle), - ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion), - FluidUtils.getFluidStack("hydrofluoricacid", 125), - null); - // Add an empty recipe, but only if we didn't for the standard GT HF. Prevents Fluid transformation exploits. - if (!addedGtExtraction) { - CORE.RA.addFluidCannerRecipe( - ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion), - ItemUtils.getSimpleStack(Items.glass_bottle), - null, - FluidUtils.getFluidStack("hydrofluoricacid", 125)); - } - - // Gelid Cryotheum - CORE.RA.addFluidExtractionRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("dustCryotheum", 1), - FluidUtils.getFluidStack("cryotheum", 250), - 200, - 240); - - // Ender Fluid - CORE.RA.addFluidExtractionRecipe( - ItemUtils.getSimpleStack(Items.ender_pearl), - FluidUtils.getFluidStack("ender", 250), - 100, - 30); - - // Blazing Pyrotheum - CORE.RA.addFluidExtractionRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("dustPyrotheum", 1), - FluidUtils.getFluidStack("pyrotheum", 250), - 200, - 240); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(Items.glass_bottle)) + .itemOutputs(ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion)) + .fluidInputs(Materials.HydrofluoricAcid.getFluid(250)).noFluidOutputs().duration(4).eut(1) + .addTo(sFluidCannerRecipes); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion)) + .itemOutputs(ItemUtils.getSimpleStack(Items.glass_bottle)).noFluidInputs() + .fluidOutputs(Materials.HydrofluoricAcid.getFluid(250)).duration(4).eut(1).addTo(sFluidCannerRecipes); } private static void dehydratorRecipes() { @@ -954,228 +897,192 @@ public class RECIPES_GREGTECH { private static void largeChemReactorRecipes() { // Styrene // C8H10 = C8H8 + 2H - CORE.RA.addMultiblockChemicalRecipe( - new ItemStack[] { CI.getNumberedCircuit(24) }, - new FluidStack[] { FluidUtils.getFluidStack("fluid.ethylbenzene", 1000) }, - new FluidStack[] { MaterialUtils.getMaterial("Styrene").getFluid(1000), - Materials.Hydrogen.getGas(2000) }, - null, - 30, - 30); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).itemOutputs() + .fluidInputs(FluidUtils.getFluidStack("fluid.ethylbenzene", 1000)) + .fluidOutputs(Materials.Styrene.getFluid(1000L), Materials.Hydrogen.getGas(2000)) + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sMultiblockChemicalRecipes); + // Short-cut Styrene // C6H6 + C2H4 = C8H8 + 2H - CORE.RA.addMultiblockChemicalRecipe( - new ItemStack[] { CI.getNumberedCircuit(24) }, - new FluidStack[] { MaterialUtils.getMaterial("Ethylene").getGas(500), - MaterialUtils.getMaterial("Benzene").getFluid(500) }, - new FluidStack[] { MaterialUtils.getMaterial("Styrene").getFluid(500), - Materials.Hydrogen.getGas(1000) }, - null, - 240, - 120); - } - - private static void fissionFuelRecipes() { - try { - - } catch (final NullPointerException e) { - Logger.INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE"); - } + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).itemOutputs() + .fluidInputs(Materials.Ethylene.getGas(500L), Materials.Benzene.getFluid(500L)) + .fluidOutputs(Materials.Styrene.getFluid(500L), Materials.Hydrogen.getGas(1000)).duration(12 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); } private static void assemblerRecipes() { - // ItemUtils.getSimpleStack(GregtechItemList.Casing_Vanadium_Redox.get(1) - addAR( - ItemUtils.getItemStackOfAmountFromOreDict("plateVanadium", 32), - ItemUtils.getItemStackOfAmountFromOreDict("frameGtVanadiumSteel", 8), - FluidUtils.getFluidStack("oxygen", 8000), - ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 0, 4), - 16, - 60); - addAR( - ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 0, 2), - ItemUtils.getItemStackOfAmountFromOreDict("plateVanadiumGallium", 8), - FluidUtils.getFluidStack("molten.tantalum", 144 * 4), - ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 1, 8), - 32, - 120); - /* - * addAR(ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 1, 1), - * ItemUtils.getItemStackOfAmountFromOreDict("plateDenseLead", 4), FluidUtils.getFluidStack("oxygen", 16000), - * ItemUtils.getSimpleStack(GregtechItemList.Casing_Vanadium_Redox.get(1), 1), 64, 240); - */ - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 1, 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateDenseLead", 4), + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Vanadium, 32L), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.VanadiumSteel, 8L)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 0, 4)) + .fluidInputs(Materials.Oxygen.getGas(8000L)).noFluidOutputs().duration(16 * SECONDS) + .eut(TierEU.RECIPE_MV / 2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 0, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VanadiumGallium, 8L)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 0, 4)) + .fluidInputs(Materials.Tantalum.getMolten(4 * INGOTS)).noFluidOutputs().duration(32 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 1, 1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Lead, 4L), ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(3), 4), - ItemUtils.getItemStackOfAmountFromOreDict("wireGt01SuperconductorHV", 2) }, - FluidUtils.getFluidStack("oxygen", 16000), - ItemUtils.getSimpleStack(GregtechItemList.Casing_Vanadium_Redox.get(1), 1), - 64, - 240); - - // Tier 2-6 - ItemStack T1 = GregtechItemList.Casing_Vanadium_Redox.get(1); - ItemStack T2 = GregtechItemList.Casing_Vanadium_Redox_IV.get(1); - ItemStack T3 = GregtechItemList.Casing_Vanadium_Redox_LuV.get(1); - ItemStack T4 = GregtechItemList.Casing_Vanadium_Redox_ZPM.get(1); - ItemStack T5 = GregtechItemList.Casing_Vanadium_Redox_UV.get(1); - ItemStack T6 = GregtechItemList.Casing_Vanadium_Redox_MAX.get(1); - - /* - * addAR(T1, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseTitanium", 4), - * FluidUtils.getFluidStack("nitrogen", 16000), T2, 120, 2000); - */ - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { T1, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseTitanium", 4), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 2L)) + .itemOutputs(ItemUtils.getSimpleStack(GregtechItemList.Casing_Vanadium_Redox.get(1), 1)) + .fluidInputs(Materials.Oxygen.getGas(16 * BUCKETS)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(TierEU.RECIPE_HV / 2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GregtechItemList.Casing_Vanadium_Redox.get(1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Titanium, 4L), ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(4), 4), - ItemUtils.getItemStackOfAmountFromOreDict("wireGt01SuperconductorEV", 2) }, - FluidUtils.getFluidStack("nitrogen", 16000), - T2, - 120, - 2000); - - /* - * addAR(T2, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseTungstenSteel", 4), - * FluidUtils.getFluidStack("helium", 8000), T3, 250, 8000); - */ - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { T2, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseTungstenSteel", 4), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 2L)) + .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_IV.get(1)) + .fluidInputs(Materials.Nitrogen.getGas(16 * BUCKETS)).noFluidOutputs().duration(6 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GregtechItemList.Casing_Vanadium_Redox_IV.get(1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TungstenSteel, 4L), ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(5), 4), - ItemUtils.getItemStackOfAmountFromOreDict("wireGt01SuperconductorIV", 2) }, - FluidUtils.getFluidStack("helium", 8000), - T3, - 250, - 8000); - /* - * addAR(T3, ItemUtils.getItemStackOfAmountFromOreDict("plateAlloyIridium", 16), - * FluidUtils.getFluidStack("argon", 4000), T4, 500, 32000); - */ - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { T3, ItemUtils.getItemStackOfAmountFromOreDict("plateAlloyIridium", 16), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 2L)) + .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_LuV.get(1)) + .fluidInputs(Materials.Helium.getGas(8 * BUCKETS)).noFluidOutputs().duration(12 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GregtechItemList.Casing_Vanadium_Redox_LuV.get(1), + ItemUtils.getItemStackOfAmountFromOreDict("plateAlloyIridium", 16), ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(6), 4), - ItemUtils.getItemStackOfAmountFromOreDict("wireGt01SuperconductorLuV", 2) }, - FluidUtils.getFluidStack("argon", 4000), - T4, - 500, - 32000); - /* - * addAR(T4, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseNaquadah", 4), - * FluidUtils.getFluidStack("radon", 4000), T5, 1000, 128000); - */ - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { T4, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseNaquadah", 4), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 2L)) + .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_ZPM.get(1)) + .fluidInputs(Materials.Argon.getGas(4 * BUCKETS)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GregtechItemList.Casing_Vanadium_Redox_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Naquadah, 4L), ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(7), 4), - ItemUtils.getItemStackOfAmountFromOreDict("wireGt01SuperconductorZPM", 2) }, - FluidUtils.getFluidStack("radon", 4000), - T5, - 1000, - 128000); - /* - * addAR(T5, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseAmericium", 4), - * FluidUtils.getFluidStack("krypton", 500), T6, 2000, 512000); - */ - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { T5, ItemUtils.getItemStackOfAmountFromOreDict("plateDenseAmericium", 4), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 2L)) + .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_UV.get(1)) + .fluidInputs(Materials.Radon.getGas(4 * BUCKETS)).noFluidOutputs().duration(50 * SECONDS) + .eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GregtechItemList.Casing_Vanadium_Redox_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Americium, 4L), ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(8), 4), - ItemUtils.getItemStackOfAmountFromOreDict("wireGt01SuperconductorUV", 2) }, - FluidUtils.getFluidStack("krypton", 500), - T6, - 2000, - 512000); - - addAR( - ItemUtils.getItemStackOfAmountFromOreDict("dustClay", 32), - GregtechItemList.Bomb_Cast_Mold.get(0), - FluidUtils.getWater(4000), - GregtechItemList.Bomb_Cast.get(4), - 30, - 120); - - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { ItemUtils.getSimpleStack(CI.explosiveITNT, 2), - ItemUtils.getSimpleStack(CI.explosiveTNT, 4), ELEMENT.getInstance().SULFUR.getDust(2), - ELEMENT.getInstance().IRON.getFrameBox(1) }, - null, - ItemUtils.getSimpleStack(ModBlocks.blockMiningExplosive, 3), - 5 * 20, - 60); - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { ItemUtils.getSimpleStack(Items.nether_star), - ItemUtils.getItemStackOfAmountFromOreDict("plateTungstenSteel", 8), - ItemUtils.getItemStackOfAmountFromOreDict("stickBlackSteel", 8) }, - null, - ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard, 64), - 30 * 20, - 500); - - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.fluidRegulator_LV, CI.electricMotor_LV, + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 2L)) + .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_MAX.get(1)) + .fluidInputs(FluidUtils.getFluidStack("krypton", 500)).noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 32L), + GregtechItemList.Bomb_Cast_Mold.get(0)) + .itemOutputs(GregtechItemList.Bomb_Cast.get(4)).fluidInputs(Materials.Water.getFluid(4000L)) + .noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(CI.explosiveITNT, 2), + ItemUtils.getSimpleStack(CI.explosiveTNT, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 2L), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iron, 1L)) + .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockMiningExplosive, 3)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV / 2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 8L), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.BlackSteel, 8L)) + .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard, 64)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + CI.fluidRegulator_LV, + CI.electricMotor_LV, CI.getTieredComponent(OrePrefixes.bolt, 1, 8), - ItemUtils.getItemStackOfAmountFromOreDict("ringBrass", 1), - ItemUtils.getItemStackOfAmountFromOreDict("stickBrass", 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateSteel", 2) }, - null, - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1), - 10 * 20, - 30); - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.fluidRegulator_MV, CI.electricMotor_MV, + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Brass, 1L), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Brass, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2L)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + CI.fluidRegulator_MV, + CI.electricMotor_MV, CI.getTieredComponent(OrePrefixes.bolt, 2, 8), - ItemUtils.getItemStackOfAmountFromOreDict("ringInvar", 1), - ItemUtils.getItemStackOfAmountFromOreDict("stickInvar", 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateAluminium", 2) }, - null, - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1), - 10 * 20 * 2, - 120); - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.fluidRegulator_HV, CI.electricMotor_HV, + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Invar, 1L), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Invar, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2L)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + CI.fluidRegulator_HV, + CI.electricMotor_HV, CI.getTieredComponent(OrePrefixes.bolt, 3, 8), - ItemUtils.getItemStackOfAmountFromOreDict("ringChrome", 1), - ItemUtils.getItemStackOfAmountFromOreDict("stickChrome", 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateStainlessSteel", 2) }, - null, - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1), - 10 * 20 * 3, - 480); - - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.fluidRegulator_EV, CI.electricMotor_EV, + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Chrome, 1L), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Chrome, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1)).noFluidInputs() + .noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + CI.fluidRegulator_EV, + CI.electricMotor_EV, CI.getTieredComponent(OrePrefixes.bolt, 4, 8), - ItemUtils.getItemStackOfAmountFromOreDict("ringTitanium", 1), - ItemUtils.getItemStackOfAmountFromOreDict("stickTitanium", 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateTungstenSteel", 2) }, - null, - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1), - 10 * 20 * 4, - 1960); - - GT_Values.RA.addAssemblerRecipe( - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1), - CI.getNumberedCircuit(20), - ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1000, 1), - 30, - 30); - GT_Values.RA.addAssemblerRecipe( - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1), - CI.getNumberedCircuit(20), - ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1001, 1), - 120, - 120); - GT_Values.RA.addAssemblerRecipe( - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1), - CI.getNumberedCircuit(20), - ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1002, 1), - 480, - 480); - GT_Values.RA.addAssemblerRecipe( - ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1), - CI.getNumberedCircuit(20), - ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1003, 1), - 1820, - 1820); + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Titanium, 1L), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2L)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1)).noFluidInputs() + .noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1000, 1)).noFluidInputs() + .noFluidOutputs().duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1001, 1)).noFluidInputs() + .noFluidOutputs().duration(6 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1002, 1)).noFluidInputs() + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1003, 1)).noFluidInputs() + .noFluidOutputs().duration(1 * MINUTES + 36 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); // Low tier Charge Packs @@ -1203,85 +1110,75 @@ public class RECIPES_GREGTECH { int aAS = i - 1; - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { aPackPlates[aAS], aPackRing[aAS], aPackWire[aAS], aPackCircuit[aAS], - aPackBatteries[aAS], CI.getSensor(i, 4), }, - CI.getTieredFluid(i, (144 * 4)), - aPackOutput[aAS], - 30 * 20 * i, - (int) GT_Values.V[i]); + GT_Values.RA.stdBuilder() + .itemInputs( + aPackPlates[aAS], + aPackRing[aAS], + aPackWire[aAS], + aPackCircuit[aAS], + aPackBatteries[aAS], + CI.getSensor(i, 4)) + .itemOutputs(aPackOutput[aAS]).fluidInputs(CI.getTieredFluid(i, (144 * 4))).noFluidOutputs() + .duration(30 * i * SECONDS).eut(GT_Values.V[i]).addTo(sAssemblerRecipes); } if (Baubles.isModLoaded()) { // Turbine Housing Research Page - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { ItemUtils.getGregtechCircuit(17), - ItemUtils.getItemStackOfAmountFromOreDict("plateTrinium", 64), CI.getSensor(6, 6), - CI.getBolt(7, 64), ItemUtils.getItemStackOfAmountFromOreDict("wireFinePlatinum", 64), - ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(7), 12) }, - CI.getAlternativeTieredFluid(7, 144 * 32), - ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_8_TURBINE_AUTOMATION, 1), - 20 * 60 * 5, - (int) GT_Values.V[6]); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(17), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Trinium, 64L), + CI.getSensor(6, 6), + CI.getBolt(7, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 64L), + ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(7), 12)) + .itemOutputs( + ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_8_TURBINE_AUTOMATION, 1)) + .fluidInputs(CI.getAlternativeTieredFluid(7, 144 * 32)).noFluidOutputs().duration(5 * MINUTES) + .eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); // Cloaking Device Research Page - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { ItemUtils.getGregtechCircuit(17), - ItemUtils.getSimpleStack(ModItems.itemCircuitLFTR, 4), CI.getFieldGenerator(6, 16), - ItemUtils.getItemStackOfAmountFromOreDict("wireFinePalladium", 32), - ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(6), 12) }, - CI.getAlternativeTieredFluid(7, 144 * 32), - ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1), - 20 * 60 * 10, - (int) GT_Values.V[7]); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(17), + ItemUtils.getSimpleStack(ModItems.itemCircuitLFTR, 4), + CI.getFieldGenerator(6, 16), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Palladium, 32L), + ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(6), 12)) + .itemOutputs(ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1)) + .fluidInputs(CI.getAlternativeTieredFluid(7, 144 * 32)).noFluidOutputs().duration(10 * MINUTES) + .eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); } } - private static boolean addAR(final ItemStack inputA, final ItemStack inputB, final FluidStack inputFluidA, - final ItemStack outputA, final int seconds, final int voltage) { - // return GT_Values.RA.addAssemblerRecipe(inputA, inputB, outputA, - // seconds*20, voltage); - return GT_Values.RA.addAssemblerRecipe(inputA, inputB, inputFluidA, outputA, seconds * 20, voltage); - } - private static void distilleryRecipes() { Logger.INFO("Registering Distillery/Distillation Tower Recipes."); - GT_Values.RA.addDistilleryRecipe( - ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), - FluidUtils.getFluidStack("air", 1000), - FluidUtils.getFluidStack("helium", 1), - 400, - 30, - false); - GT_Values.RA.addDistillationTowerRecipe( - FluidUtils.getFluidStack("air", 20000), - FluidUtils.getFluidStackArray("helium", 25), - ItemUtils.getSimpleStack(ModItems.itemHydrogenBlob, 1), - 200, - 60); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)).noItemOutputs() + .fluidInputs(Materials.Air.getGas(1000L)).fluidOutputs(Materials.Helium.getGas(1L)) + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemUtils.getSimpleStack(ModItems.itemHydrogenBlob, 1)) + .fluidInputs(Materials.Air.getGas(20000L)).fluidOutputs(Materials.Helium.getGas(25L)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV / 2).addTo(sDistillationRecipes); // Apatite Distillation /* * so if you dissolve aparite in sulphuric acid you'll get a mixture of SO2, H2O, HF and HCl */ - final FluidStack[] apatiteOutput = { FluidUtils.getFluidStack("sulfurousacid", 3800), - FluidUtils.getFluidStack("hydrogenchloride", 1000), FluidUtils.getFluidStack("hydrofluoricacid", 400) }; - GT_Values.RA.addDistillationTowerRecipe( - FluidUtils.getFluidStack("sulfuricapatite", 5200), - apatiteOutput, - null, - 45 * 20, - 120); - final FluidStack[] sulfurousacidOutput = { FluidUtils.getFluidStack("sulfurdioxide", 500), - FluidUtils.getFluidStack("water", 500) }; - GT_Values.RA.addDistillationTowerRecipe( - FluidUtils.getFluidStack("sulfurousacid", 1000), - sulfurousacidOutput, - null, - 10 * 20, - 60); + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(FluidUtils.getFluidStack("sulfuricapatite", 5200)) + .fluidOutputs( + FluidUtils.getFluidStack("sulfurousacid", 3800), + FluidUtils.getFluidStack("hydrogenchloride", 1000), + FluidUtils.getFluidStack("hydrofluoricacid", 400)) + .duration(45 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(FluidUtils.getFluidStack("sulfurousacid", 1000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(500), Materials.Water.getFluid(500)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV / 2).addTo(sDistillationRecipes); } private static void addFuels() { @@ -1317,16 +1214,15 @@ public class RECIPES_GREGTECH { FluidUtils.getSuperHeatedSteam(100000), 0); - /* - * HotFuel.addNewHotFuel( FluidUtils.getFluidStack("ic2hotcoolant", 100), GT_Values.NF, new ItemStack[]{}, new - * int[]{}, 0); - */ - ThermalFuel.addSteamTurbineFuel(FluidUtils.getFluidStack("steam", 1024)); - GT_Values.RA.addFuel(ItemUtils.getSimpleStack(Items.lava_bucket), null, 32, 2); - GT_Values.RA.addFuel(ItemUtils.getIC2Cell(2), null, 32, 2); - GT_Values.RA.addFuel(ItemUtils.getIC2Cell(11), null, 24, 2); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(Items.lava_bucket)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 32).metadata(FUEL_TYPE, 2).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getIC2Cell(2)).noItemOutputs().noFluidInputs().noFluidOutputs() + .metadata(FUEL_VALUE, 32).metadata(FUEL_TYPE, 2).duration(0).eut(0).addTo(GT_RecipeConstants.Fuel); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getIC2Cell(11)).noItemOutputs().noFluidInputs().noFluidOutputs() + .metadata(FUEL_VALUE, 24).metadata(FUEL_TYPE, 2).duration(0).eut(0).addTo(GT_RecipeConstants.Fuel); } private static void extractorRecipes() { @@ -1342,204 +1238,162 @@ public class RECIPES_GREGTECH { ItemList.Battery_Hull_HV.get(4L, new Object[0])); } - private static void fluidExtractorRecipes() {} + private static void fluidExtractorRecipes() { + // Gelid Cryotheum + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cryotheum, 1L)) + .noItemOutputs().noFluidInputs().fluidOutputs(FluidUtils.getFluidStack("cryotheum", 250)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sFluidExtractionRecipes); + + // Ender Fluid + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(Items.ender_pearl)).noItemOutputs() + .noFluidInputs().fluidOutputs(FluidUtils.getFluidStack("ender", 250)).duration(5 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sFluidExtractionRecipes); - private static void chemicalBathRecipes() {} + // Blazing Pyrotheum + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Pyrotheum, 1L)) + .noItemOutputs().noFluidInputs().fluidOutputs(FluidUtils.getFluidStack("pyrotheum", 250)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sFluidExtractionRecipes); + } private static void centrifugeRecipes() { - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedAdvancedCircuit(2), - MISC_MATERIALS.SOLAR_SALT_COLD.getCell(5), - null, - null, - MISC_MATERIALS.SODIUM_NITRATE.getDust(15), - MISC_MATERIALS.POTASSIUM_NITRATE.getDust(10), - CI.emptyCells(5), - null, - null, - null, - null, - 20 * 30, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(CI.getNumberedAdvancedCircuit(2), MISC_MATERIALS.SOLAR_SALT_COLD.getCell(1)) + .itemOutputs( + MISC_MATERIALS.SODIUM_NITRATE.getDust(3), + MISC_MATERIALS.POTASSIUM_NITRATE.getDust(2), + CI.emptyCells(1)) + .noFluidInputs().noFluidOutputs().duration(6 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); } private static void mixerRecipes() { - GT_Values.RA.addMixerRecipe( - CI.getNumberedAdvancedCircuit(2), - CI.emptyCells(5), - MISC_MATERIALS.SODIUM_NITRATE.getDust(15), - MISC_MATERIALS.POTASSIUM_NITRATE.getDust(10), - null, - null, - MISC_MATERIALS.SOLAR_SALT_COLD.getCell(5), - 20 * 10, - 120); - GT_Values.RA.addMixerRecipe( - CI.getNumberedAdvancedCircuit(2), - Materials.Titanium.getDust(9), - Materials.Carbon.getDust(9), - Materials.Potassium.getDust(9), - Materials.Lithium.getDust(9), - Materials.Sulfur.getDust(9), - Materials.Hydrogen.getGas(5000), - null, - ALLOY.LEAGRISIUM.getDust(50), - 20 * 60, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addMixerRecipe( - CI.getNumberedAdvancedCircuit(2), - Materials.Steel.getDust(16), - Materials.Molybdenum.getDust(1), - Materials.Titanium.getDust(1), - Materials.Nickel.getDust(4), - Materials.Cobalt.getDust(2), - GT_Values.NF, - null, - ALLOY.MARAGING250.getDust(24), - 20 * 60, - (int) TierEU.RECIPE_EV); + GT_Values.RA.stdBuilder() + .itemInputs( + CI.getNumberedAdvancedCircuit(2), + CI.emptyCells(1), + MISC_MATERIALS.SODIUM_NITRATE.getDust(3), + MISC_MATERIALS.POTASSIUM_NITRATE.getDust(2)) + .itemOutputs(MISC_MATERIALS.SOLAR_SALT_COLD.getCell(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + CI.getNumberedAdvancedCircuit(2), + Materials.Titanium.getDust(9), + Materials.Carbon.getDust(9), + Materials.Potassium.getDust(9), + Materials.Lithium.getDust(9), + Materials.Sulfur.getDust(9)) + .itemOutputs(ALLOY.LEAGRISIUM.getDust(50)).fluidInputs(Materials.Hydrogen.getGas(5000)).noFluidOutputs() + .duration(1 * MINUTES).eut(TierEU.RECIPE_EV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + CI.getNumberedAdvancedCircuit(2), + Materials.Steel.getDust(16), + Materials.Molybdenum.getDust(1), + Materials.Titanium.getDust(1), + Materials.Nickel.getDust(4), + Materials.Cobalt.getDust(2)) + .itemOutputs(ALLOY.MARAGING250.getDust(24)).noFluidInputs().noFluidOutputs().duration(1 * MINUTES) + .eut(TierEU.RECIPE_EV).addTo(sMixerRecipes); } private static void chemicalReactorRecipes() { // Bombs - GT_Values.RA.addChemicalRecipe( - ItemUtils.getSimpleStack(ModItems.itemBombCasing, 4), - ItemUtils.getSimpleStack(RocketFuels.Ammonium_Nitrate_Dust, 8), - Materials.Fuel.getFluid(1000), - null, - ItemUtils.getSimpleStack(ModItems.itemBombUnf, 4), - 300 * 20); - - GT_Values.RA.addChemicalRecipe( - ItemUtils.getSimpleStack(ModItems.itemBombUnf, 4), - ItemUtils.getSimpleStack(ModItems.itemDetCable, 4), - FluidUtils.getFluidStack(RocketFuels.Kerosene, 100), - null, - ItemUtils.getSimpleStack(ModItems.itemBomb, 4), - 10 * 20); - - GT_Values.RA.addChemicalRecipe( - CI.getNumberedAdvancedCircuit(21), - ItemUtils.getItemStackOfAmountFromOreDict("dustApatite", 32), - FluidUtils.getFluidStack("sulfuricacid", 4000), - FluidUtils.getFluidStack("sulfuricapatite", 8000), - ItemUtils.getItemStackOfAmountFromOreDict("dustSmallSulfur", 8), - 20 * 20); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(ModItems.itemBombCasing, 4), + ItemUtils.getSimpleStack(RocketFuels.Ammonium_Nitrate_Dust, 8)) + .itemOutputs(ItemUtils.getSimpleStack(ModItems.itemBombUnf, 4)) + .fluidInputs(Materials.Fuel.getFluid(1000)).noFluidOutputs().duration(5 * MINUTES).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(ModItems.itemBombUnf, 4), + ItemUtils.getSimpleStack(ModItems.itemDetCable, 4)) + .itemOutputs(ItemUtils.getSimpleStack(ModItems.itemBomb, 4)) + .fluidInputs(FluidUtils.getFluidStack(RocketFuels.Kerosene, 100)).noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + CI.getNumberedAdvancedCircuit(21), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 32L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Sulfur, 8L)) + .fluidInputs(FluidUtils.getFluidStack("sulfuricacid", 4000)) + .fluidOutputs(FluidUtils.getFluidStack("sulfuricapatite", 8000)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // KOH + HNO3 = KNO3 + H2O - GT_Values.RA.addChemicalRecipe( - ItemUtils.getSimpleStack(GenericChem.mPotassiumHydroxide, 3), - CI.getNumberedAdvancedCircuit(1), - Materials.NitricAcid.getFluid(1000), - Materials.Water.getFluid(1000), - MISC_MATERIALS.POTASSIUM_NITRATE.getDust(5), - 100, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(GenericChem.mPotassiumHydroxide, 3), + CI.getNumberedAdvancedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PotassiumNitrade, 5L)) + .fluidInputs(Materials.NitricAcid.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(1000)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // Na2CO3 + 2HNO3 = 2NaNO3 + CO2 + H2O - GT_Values.RA.addChemicalRecipe( - ItemUtils.getSimpleStack(AgriculturalChem.mSodiumCarbonate, 6), - CI.getNumberedAdvancedCircuit(1), - Materials.NitricAcid.getFluid(2000), - Materials.CarbonDioxide.getGas(1000), - MISC_MATERIALS.SODIUM_NITRATE.getDust(10), - 100, - 30); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(AgriculturalChem.mSodiumCarbonate, 6), + CI.getNumberedAdvancedCircuit(1)) + .itemOutputs(MISC_MATERIALS.SODIUM_NITRATE.getDust(10)).fluidInputs(Materials.NitricAcid.getFluid(2000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); } private static void blastFurnaceRecipes() { - // public boolean addBlastRecipe( - // ItemStack aInput1, ItemStack aInput2, - // FluidStack aFluidInput, FluidStack aFluidOutput, - // ItemStack aOutput1, ItemStack aOutput2, - // int aDuration, int aEUt, int aLevel) - // Synthetic Graphite - GT_Values.RA.addBlastRecipe( - CI.getNumberedCircuit(22), - ALLOY.SILICON_CARBIDE.getDust(16), - ELEMENT.getInstance().NITROGEN.getFluidStack(4000), - GT_Values.NF, - ItemUtils.getItemStackOfAmountFromOreDict("dustGraphite", 8), - ItemUtils.getItemStackOfAmountFromOreDict("dustSmallSilicon", 8), - 60 * 20, - MaterialUtils.getVoltageForTier(5), - 4500); - - // Bomb Casings - GT_Values.RA.addBlastRecipe( - GregtechItemList.Bomb_Cast.get(4), - ALLOY.STEEL.getDust(16), - ELEMENT.getInstance().OXYGEN.getFluidStack(2000), - GT_Values.NF, - GregtechItemList.Bomb_Cast_Molten.get(4), - null, - 4 * 60 * 20, - MaterialUtils.getVoltageForTier(3), - 2800); - - // Krypton Processing - if (ModItems.itemHotTitaniumIngot != null) { - GT_Values.RA.addBlastRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("ingotTitanium", 1), - CI.getNumberedCircuit(16), - GT_Values.NF, - GT_Values.NF, - ItemUtils.getItemStackOfAmountFromOreDict("ingotHotTitanium", 1), - null, - 10 * 20, - 500, - Materials.Titanium.mBlastFurnaceTemp); - } - } - - private static void autoclaveRecipes() {} - - private static void benderRecipes() { - if (CORE.ConfigSwitches.enableMultiblock_PowerSubstation) { - GT_Values.RA.addBenderRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("ingotVanadium", 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateVanadium", 1), - 8, - 16); - } + GT_Values.RA.stdBuilder().itemInputs(ALLOY.SILICON_CARBIDE.getDust(16), GT_Utility.getIntegratedCircuit(22)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 8L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Silicon, 8L)) + .fluidInputs(Materials.Nitrogen.getGas(4000)).fluidOutputs().duration(1 * MINUTES).eut(TierEU.RECIPE_IV) + .metadata(COIL_HEAT, 4500).addTo(sBlastRecipes); + + // Bomb Cast (Hot) + GT_Values.RA.stdBuilder() + .itemInputs( + GregtechItemList.Bomb_Cast.get(4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 16L)) + .itemOutputs(GregtechItemList.Bomb_Cast_Molten.get(4)).fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs().duration(4 * MINUTES).eut(TierEU.RECIPE_HV).metadata(COIL_HEAT, 2800) + .addTo(sBlastRecipes); } private static void compressorRecipes() { - GT_ModHandler.addCompressionRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("dustClay", 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateClay", 1)); - GT_ModHandler.addCompressionRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("dustMeatRaw", 1), - ItemUtils.getItemStackOfAmountFromOreDict("plateMeatRaw", 1)); - GT_ModHandler.addCompressionRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("dustMeatRaw", 9), - ItemUtils.getItemStackOfAmountFromOreDict("blockMeatRaw", 1)); - CORE.RA.addCompressorRecipe( - ItemList.FusionComputer_UV.get(9), - GregtechItemList.Compressed_Fusion_Reactor.get(1), - (int) GT_Values.V[7], - (int) GT_Values.V[8]); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Clay, 1L)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 9L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, Materials.MeatRaw, 1L)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.FusionComputer_UV.get(9)) + .itemOutputs(GregtechItemList.Compressed_Fusion_Reactor.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * HOURS + 50 * MINUTES).eut(TierEU.RECIPE_UV).addTo(sCompressorRecipes); } private static void macerationRecipes() { - GT_ModHandler.addPulverisationRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("blockMeatRaw", 1), - ItemUtils.getItemStackOfAmountFromOreDict("dustMeatRaw", 9)); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.block, Materials.MeatRaw, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 9L)).noFluidInputs() + .noFluidOutputs().duration(44 * SECONDS).eut(4).addTo(sMaceratorRecipes); - GT_ModHandler.addPulverisationRecipe( - GregtechItemList.Bomb_Cast_Broken.get(1), - ItemUtils.getItemStackOfAmountFromOreDict("dustClay", 3)); + GT_Values.RA.stdBuilder().itemInputs(GregtechItemList.Bomb_Cast_Broken.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 3L)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); if (ItemUtils.simpleMetaStack("chisel:limestone", 0, 1) != null) { - GT_ModHandler.addPulverisationRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("limestone", 1), - ItemUtils.getItemStackOfAmountFromOreDict("dustCalcite", 4)); + GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("limestone", 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 4L)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); } } @@ -1622,7 +1476,7 @@ public class RECIPES_GREGTECH { 500 * 4, 500 * 20); // PO Special Value - /** + /* * Particle Science */ @@ -1852,10 +1706,4 @@ public class RECIPES_GREGTECH { (int) MaterialUtils.getVoltageForTier(7), 250); } - - private static void sifterRecipes() {} - - private static void electroMagneticSeperatorRecipes() {} - - private static void advancedMixerRecipes() {} } diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java index 154ec9b940..387bd16539 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java +++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java @@ -2,6 +2,9 @@ package gtPlusPlus.core.recipe; import static gregtech.api.enums.Mods.EnderIO; import static gregtech.api.enums.Mods.Thaumcraft; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gtPlusPlus.core.recipe.common.CI.bitsd; import static gtPlusPlus.core.util.minecraft.ItemUtils.getSimpleStack; import static gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechConduits.generatePipeRecipes; @@ -11,8 +14,10 @@ import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; +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 gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.block.ModBlocks; @@ -23,7 +28,6 @@ import gtPlusPlus.core.material.ELEMENT; import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; -import gtPlusPlus.core.util.minecraft.MaterialUtils; import gtPlusPlus.core.util.minecraft.RecipeUtils; import gtPlusPlus.core.util.minecraft.gregtech.PollutionUtils; import gtPlusPlus.xmod.bop.blocks.BOP_Block_Registrator; @@ -193,22 +197,25 @@ public class RECIPES_General { ItemUtils.simpleMetaStack(ModItems.itemBasicTurbine, 2, 1)); } - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.getNumberedAdvancedCircuit(4), ItemUtils.getSimpleStack(Blocks.glass, 16), - ItemUtils.getSimpleStack(Blocks.glowstone, 16), ItemList.Large_Fluid_Cell_Steel.get(1) }, - FluidUtils.getFluidStack("molten.borosilicateglass", 2000), - VolumetricFlaskHelper.getLargeVolumetricFlask(2), - 20 * 15, - MaterialUtils.getVoltageForTier(3)); - - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.getNumberedAdvancedCircuit(5), ItemUtils.getSimpleStack(Blocks.glass, 64), + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(Blocks.glass, 16), + ItemUtils.getSimpleStack(Blocks.glowstone, 16), + ItemList.Large_Fluid_Cell_Steel.get(1), + CI.getNumberedAdvancedCircuit(4)) + .itemOutputs(VolumetricFlaskHelper.getLargeVolumetricFlask(2)) + .fluidInputs(FluidUtils.getFluidStack("molten.borosilicateglass", 2000)).noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(Blocks.glass, 64), ItemUtils.getSimpleStack(Blocks.glowstone, 64), - ItemList.Large_Fluid_Cell_TungstenSteel.get(1) }, - FluidUtils.getFluidStack("molten.borosilicateglass", 8000), - VolumetricFlaskHelper.getGiganticVolumetricFlask(2), - 20 * 15, - MaterialUtils.getVoltageForTier(5)); + ItemList.Large_Fluid_Cell_TungstenSteel.get(1), + CI.getNumberedAdvancedCircuit(5)) + .itemOutputs(VolumetricFlaskHelper.getGiganticVolumetricFlask(2)) + .fluidInputs(FluidUtils.getFluidStack("molten.borosilicateglass", 8000)).noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); // Mining Explosive Logger.RECIPE("[Inspection] Explosives"); @@ -267,25 +274,29 @@ public class RECIPES_General { } // Magic Feather - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { ItemUtils.getSimpleStack(Items.feather, 64), + GT_Values.RA.stdBuilder() + .itemInputs( + ItemUtils.getSimpleStack(Items.feather, 64), ItemUtils.getSimpleStack(Blocks.emerald_block, 32), - ItemUtils.getSimpleStack(Blocks.diamond_block, 32), Materials.Ruby.getBlocks(32), - Materials.Sapphire.getBlocks(32), ItemUtils.getSimpleStack(Blocks.gold_block, 32), }, - Materials.Silver.getMolten(32 * 144), // Fluid - ItemUtils.getSimpleStack(ModItems.itemMagicFeather, 1), // Output - 20 * 120, // Dur - MaterialUtils.getVoltageForTier(4)); // Eu + ItemUtils.getSimpleStack(Blocks.diamond_block, 32), + Materials.Ruby.getBlocks(32), + Materials.Sapphire.getBlocks(32), + ItemUtils.getSimpleStack(Blocks.gold_block, 32)) + .itemOutputs(ItemUtils.getSimpleStack(ModItems.itemMagicFeather, 1)) + .fluidInputs(Materials.Silver.getMolten(32 * 144)).noFluidOutputs().duration(2 * MINUTES) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); // Pest Killer - CORE.RA.addSixSlotAssemblingRecipe( - new ItemStack[] { CI.getNumberedCircuit(16), CI.getTieredMachineCasing(1), CI.getElectricPump(2, 1), + GT_Values.RA.stdBuilder() + .itemInputs( + CI.getTieredMachineCasing(1), + CI.getElectricPump(2, 1), CI.getPlate(2, 4), - ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(0), 2), }, - FluidUtils.getHotWater(500), // Fluid - ItemUtils.getSimpleStack(ModBlocks.blockPestKiller), // Output - 20 * 60, // Dur - 16); // Eu + ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(0), 2), + CI.getNumberedCircuit(16)) + .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockPestKiller)) + .fluidInputs(FluidUtils.getHotWater(500)).noFluidOutputs().duration(1 * MINUTES) + .eut(TierEU.RECIPE_LV / 2).addTo(sAssemblerRecipes); } private static boolean addCompressedObsidian() { diff --git a/src/main/java/gtPlusPlus/core/util/reflect/AddGregtechRecipe.java b/src/main/java/gtPlusPlus/core/util/reflect/AddGregtechRecipe.java index d08f98259d..ebb99735c6 100644 --- a/src/main/java/gtPlusPlus/core/util/reflect/AddGregtechRecipe.java +++ b/src/main/java/gtPlusPlus/core/util/reflect/AddGregtechRecipe.java @@ -62,6 +62,7 @@ public final class AddGregtechRecipe { aRecipe.mEUt); } + @Deprecated public static boolean addCokeAndPyrolyseRecipes(ItemStack input1, int circuitNumber, FluidStack inputFluid1, ItemStack output1, FluidStack outputFluid1, int timeInSeconds, int euTick) { // Seconds Conversion diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java index 64b744aaf8..e8ede0a64f 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java @@ -1,6 +1,9 @@ package gtPlusPlus.xmod.forestry.bees.custom; import static gregtech.api.enums.Mods.Forestry; +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 java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; @@ -13,12 +16,12 @@ import net.minecraftforge.fluids.FluidStack; import org.apache.commons.lang3.reflect.FieldUtils; import gregtech.GT_Mod; +import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.item.base.ingots.BaseItemIngot_OLD; import gtPlusPlus.core.item.base.misc.BaseItemMisc; import gtPlusPlus.core.item.base.misc.BaseItemMisc.MiscTypes; -import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; @@ -88,7 +91,8 @@ public class GTPP_Bees { } private void addExtractorRecipe(ItemStack input, FluidStack output) { - CORE.RA.addFluidExtractionRecipe(input, output, 30, 8); + GT_Values.RA.stdBuilder().itemInputs(input).noItemOutputs().noFluidInputs().fluidOutputs(output) + .duration(1 * SECONDS + 10 * TICKS).eut(8).addTo(sFluidExtractionRecipes); } private static boolean tryGetBeesBoolean() { diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java index a7896ab662..f50eb1533c 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java @@ -1,6 +1,9 @@ package gtPlusPlus.xmod.forestry.bees.custom; import static gregtech.api.enums.Mods.GTPlusPlus; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -14,13 +17,11 @@ import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import forestry.api.core.Tabs; -import gregtech.GT_Mod; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Utility; import gtPlusPlus.core.util.minecraft.ItemUtils; public class ItemCustomComb extends Item { @@ -130,134 +131,8 @@ public class ItemCustomComb extends Item { } public void addSpecialCent(ItemStack tComb, ItemStack aOutput, int chance) { - GT_Values.RA.addCentrifugeRecipe( - tComb, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - aOutput, - ItemList.FR_Wax.get(1, new Object[0]), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { chance * 100, 3000 }, - 128, - 5); - // RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of(aOutput, chance * 0.01f, - // ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); - } - - public void addSpecialCent(ItemStack tComb, ItemStack aOutput, int chance, ItemStack aOutput2, int chance2) { - GT_Values.RA.addCentrifugeRecipe( - tComb, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - aOutput, - ItemList.FR_Wax.get(1, new Object[0]), - aOutput2, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { chance * 100, 3000, chance2 * 100 }, - 128, - 5); - // RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of(aOutput, chance * 0.01f, - // ItemList.FR_Wax.get(1, new Object[0]), 0.3f,aOutput2,chance2 * 0.01f)); - } - - public void addSpecialCent(ItemStack tComb, ItemStack aOutput, int chance, ItemStack aOutput2, int chance2, - ItemStack aOutput3, int chance3) { - GT_Values.RA.addCentrifugeRecipe( - tComb, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - aOutput, - ItemList.FR_Wax.get(1, new Object[0]), - aOutput2, - aOutput3, - GT_Values.NI, - GT_Values.NI, - new int[] { chance * 100, 3000, chance2 * 100, chance3 * 100 }, - 128, - 5); - // RecipeManagers.centrifugeManager.addRecipe(40, tComb, ImmutableMap.of(aOutput, chance * 0.01f, - // ItemList.FR_Wax.get(1, new Object[0]), 0.3f,aOutput2,chance2 * 0.01f,aOutput3,chance3*0.01f)); - } - - public void addProcess(ItemStack tComb, Materials aMaterial, int chance) { - if (GT_Mod.gregtechproxy.mNerfedCombs) { - GT_Values.RA.addChemicalRecipe( - GT_Utility.copyAmount(9, tComb), - GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1), - Materials.Water.getFluid(1000), - aMaterial.mOreByProducts.isEmpty() ? null : aMaterial.mOreByProducts.get(0).getMolten(144), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterial, 4), - 96); - GT_Values.RA.addAutoclaveRecipe( - GT_Utility.copyAmount(16, tComb), - Materials.UUMatter.getFluid(Math.max(1, ((aMaterial.getMass() + 9) / 10))), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterial, 1), - 10000, - (int) (aMaterial.getMass() * 128), - 384); - } else { - GT_Values.RA.addCentrifugeRecipe( - tComb, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, 1), - ItemList.FR_Wax.get(1, new Object[0]), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { chance * 100, 3000 }, - 128, - 5); - // RecipeManagers.centrifugeManager.addRecipe(40, tComb, - // ImmutableMap.of(GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, 1), chance * 0.01f, - // ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); - } - } - - public void addProcess(ItemStack tComb, Materials aInMaterial, Materials aOutMaterial, int chance) { - if (GT_Mod.gregtechproxy.mNerfedCombs) { - GT_Values.RA.addChemicalRecipe( - GT_Utility.copyAmount(9, tComb), - GT_OreDictUnificator.get(OrePrefixes.crushed, aInMaterial, 1), - Materials.Water.getFluid(1000), - aInMaterial.mOreByProducts.isEmpty() ? null : aInMaterial.mOreByProducts.get(0).getMolten(144), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aOutMaterial, 4), - 96); - GT_Values.RA.addAutoclaveRecipe( - GT_Utility.copyAmount(16, tComb), - Materials.UUMatter.getFluid(Math.max(1, ((aOutMaterial.getMass() + 9) / 10))), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aOutMaterial, 1), - 10000, - (int) (aOutMaterial.getMass() * 128), - 384); - } else { - GT_Values.RA.addCentrifugeRecipe( - tComb, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dustTiny, aOutMaterial, 1), - ItemList.FR_Wax.get(1, new Object[0]), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { chance * 100, 3000 }, - 128, - 5); - // RecipeManagers.centrifugeManager.addRecipe(40, tComb, - // ImmutableMap.of(GT_OreDictUnificator.get(OrePrefixes.dustTiny, aOutMaterial, 1), chance * 0.01f, - // ItemList.FR_Wax.get(1, new Object[0]), 0.3f)); - } + GT_Values.RA.stdBuilder().itemInputs(tComb).itemOutputs(aOutput, ItemList.FR_Wax.get(1)) + .outputChances(chance * 100, 3000).noFluidInputs().noFluidOutputs().duration(6 * SECONDS + 8 * TICKS) + .eut(5).addTo(sCentrifugeRecipes); } } diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java index f9fef391e8..ddc2033012 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java @@ -1,6 +1,8 @@ package gtPlusPlus.xmod.forestry.bees.items.output; import static gregtech.api.enums.Mods.GTPlusPlus; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -112,6 +114,11 @@ public class GTPP_Drop extends Item { } public static boolean addProcess(ItemStack tDrop, FluidStack aOutput, int aDuration, int aEUt) { - return GT_Values.RA.addFluidExtractionRecipe(tDrop, null, aOutput, 10000, aDuration, aEUt); + if (aOutput == null) { + return false; + } + GT_Values.RA.stdBuilder().itemInputs(tDrop).noItemOutputs().noFluidInputs().fluidOutputs(aOutput) + .duration(aDuration * TICKS).eut(aEUt).addTo(sFluidExtractionRecipes); + return true; } } diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java index d2ce94ce54..8158f08e73 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java @@ -1,6 +1,8 @@ package gtPlusPlus.xmod.forestry.bees.items.output; import static gregtech.api.enums.Mods.GTPlusPlus; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtractorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -14,8 +16,8 @@ import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import forestry.api.core.Tabs; +import gregtech.api.enums.GT_Values; import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.forestry.bees.handler.GTPP_PropolisType; import gtPlusPlus.xmod.forestry.bees.registry.GTPP_Bees; @@ -91,6 +93,11 @@ public class GTPP_Propolis extends Item { } public static boolean addProcess(ItemStack tDrop, ItemStack aOutput, int aChance, int aDuration, int aEUt) { - return CORE.RA.addExtractorRecipe(tDrop, aOutput, aChance, aDuration, aEUt); + if (aOutput == null) { + return false; + } + GT_Values.RA.stdBuilder().itemInputs(tDrop).itemOutputs(aOutput).outputChances(aChance).noFluidInputs() + .noFluidOutputs().duration(aDuration * TICKS).eut(aEUt).addTo(sExtractorRecipes); + return true; } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java index d03bd2bcf2..6754828db2 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java @@ -67,7 +67,7 @@ public interface IGregtech_RecipeAdder { * @param aEUt = EU per tick needed for heating up (must be >= 0) * @return true if the Recipe got added, otherwise false. */ - @Deprecated + boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack aOutput, int aChance, int aDuration, int aEUt); /** @@ -81,7 +81,7 @@ public interface IGregtech_RecipeAdder { * @param aEUt = EU per tick needed for heating up (must be >= 0) * @return true if the Recipe got added, otherwise false. */ - @Deprecated + boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack aInputFluid, FluidStack aOutput, int aChance, int aDuration, int aEUt); @@ -96,7 +96,7 @@ public interface IGregtech_RecipeAdder { * @param aEUt = EU per tick needed for heating up (must be >= 0) * @return true if the Recipe got added, otherwise false. */ - @Deprecated + boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack[] aInputFluid, FluidStack aOutput, int aChance, int aDuration, int aEUt); @@ -112,15 +112,13 @@ public interface IGregtech_RecipeAdder { * @param aEUt = EU per tick needed for heating up (must be >= 0) * @return true if the Recipe got added, otherwise false. */ - @Deprecated + boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack aInputFluid, FluidStack aOutput, ItemStack[] aOutputStack, int[] aChance, int aDuration, int aEUt); - @Deprecated boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack aInputFluid, FluidStack aOutput, int aChance, int aDuration, int aEUt, int aSpecialValue); - @Deprecated boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack aInputFluid, FluidStack aOutput, ItemStack[] aOutputStack, int[] aChance, int aDuration, int aEUt, int aSpecialValue, boolean aOptimizeRecipe); @@ -137,15 +135,13 @@ public interface IGregtech_RecipeAdder { * @param aEUt = EU per tick needed for heating up (must be >= 0) * @return true if the Recipe got added, otherwise false. */ - @Deprecated + boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack[] aInputFluid, FluidStack aOutput, ItemStack[] aOutputStack, int[] aChance, int aDuration, int aEUt); - @Deprecated boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack[] aInputFluid, FluidStack aOutput, int aChance, int aDuration, int aEUt, int aSpecialValue); - @Deprecated boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack[] aInputFluid, FluidStack aOutput, ItemStack[] aOutputStack, int[] aChance, int aDuration, int aEUt, int aSpecialValue, boolean aOptimizeRecipe); @@ -163,7 +159,7 @@ public interface IGregtech_RecipeAdder { * @param aSpecialValue = Power produced in EU/t per dynamo * @return true if the Recipe got added, otherwise false. */ - @Deprecated + boolean addBlastSmelterRecipe(ItemStack[] aInput, FluidStack aInputFluid, FluidStack aOutput, ItemStack[] aOutputStack, int[] aChance, int aDuration, int aEUt, int aSpecialValue); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java index a74d3b36ba..9fb011810f 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java @@ -1,11 +1,15 @@ package gtPlusPlus.xmod.gregtech.registration.gregtech; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.item.ItemStack; 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 gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.lib.CORE; @@ -114,10 +118,14 @@ public class GregtechDehydrator { ItemStack spoolT4 = ItemUtils.getItemStackOfAmountFromOreDict("pipeMediumTitanium", 1); // Make some coils by wrapping wire around a spool. - GT_Values.RA.addAssemblerRecipe(coilWire1, spoolT1, coilT1, 8 * 20, 120); - GT_Values.RA.addAssemblerRecipe(coilWire2, spoolT2, coilT2, 8 * 20, 240); - GT_Values.RA.addAssemblerRecipe(coilWire3, spoolT3, coilT3, 8 * 20, 480); - GT_Values.RA.addAssemblerRecipe(coilWire4, spoolT4, coilT4, 8 * 20, 960); + GT_Values.RA.stdBuilder().itemInputs(coilWire1, spoolT1).itemOutputs(coilT1).noFluidInputs().noFluidOutputs() + .duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + GT_Values.RA.stdBuilder().itemInputs(coilWire2, spoolT2).itemOutputs(coilT2).noFluidInputs().noFluidOutputs() + .duration(8 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sAssemblerRecipes); + GT_Values.RA.stdBuilder().itemInputs(coilWire3, spoolT3).itemOutputs(coilT3).noFluidInputs().noFluidOutputs() + .duration(8 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + GT_Values.RA.stdBuilder().itemInputs(coilWire4, spoolT4).itemOutputs(coilT4).noFluidInputs().noFluidOutputs() + .duration(8 * SECONDS).eut(TierEU.RECIPE_EV / 2).addTo(sAssemblerRecipes); // Add recipes for the Dehydrators. diff --git a/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java b/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java index 1b8dcf4583..11e9ea1f25 100644 --- a/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java +++ b/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java @@ -3,6 +3,10 @@ package gtPlusPlus.xmod.railcraft; import static gregtech.api.enums.Mods.GTPlusPlus; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; import static gregtech.api.enums.Mods.Railcraft; +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.UniversalChemical; import static gtPlusPlus.core.creative.AddToCreativeTab.tabMisc; import net.minecraft.init.Blocks; @@ -151,33 +155,22 @@ public class HANDLER_Railcraft { 240); // Fluid Extracting the Charcoals for Wood Tar - GT_Values.RA.addFluidExtractionRecipe( - aInputs2[i], - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L), - Materials.WoodTar.getFluid(50L), - 1000, - 30, - 16); + GT_Values.RA.stdBuilder().itemInputs(aInputs2[i]) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L)).outputChances(1000) + .noFluidInputs().fluidOutputs(Materials.WoodTar.getFluid(50L)).duration(1 * SECONDS + 10 * TICKS) + .eut(16).addTo(sFluidExtractionRecipes); // Processing the Charcoals with Oxygen to get CO and CO2 // C + O = CO - GT_Values.RA.addChemicalRecipe( - aInputs2[i], - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(500), - Materials.CarbonMonoxide.getGas(500), - Materials.Ash.getDustTiny(1), - 80, - 8); + GT_Values.RA.stdBuilder().itemInputs(aInputs2[i], GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ash.getDustTiny(1)).fluidInputs(Materials.Oxygen.getGas(500)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(500)).duration(4 * SECONDS).eut(8) + .addTo(UniversalChemical); // C + 2O = CO2 - GT_Values.RA.addChemicalRecipe( - aInputs2[i], - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(2000), - Materials.CarbonDioxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 40, - 8); + GT_Values.RA.stdBuilder().itemInputs(aInputs2[i], GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Ash.getDustTiny(1)).fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(2 * SECONDS).eut(8) + .addTo(UniversalChemical); } if (Railcraft.isModLoaded()) { for (int i = 0; i < aOutputs.length; i++) { diff --git a/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java b/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java index 7f3d4a636b..a19d990252 100644 --- a/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java +++ b/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java @@ -1,17 +1,21 @@ package gtPlusPlus.xmod.thermalfoundation.recipe; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +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_RecipeBuilder.TICKS; + import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; -import cofh.lib.util.helpers.ItemHelper; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; -import gregtech.api.util.GT_ModHandler; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_OreDictUnificator; import gtPlusPlus.core.util.minecraft.FluidUtils; -import gtPlusPlus.core.util.minecraft.ItemUtils; public class TF_Gregtech_Recipes { @@ -20,91 +24,52 @@ public class TF_Gregtech_Recipes { } private static void start() { - // Get Items to work with - final ItemStack dust_Cryotheum = ItemUtils.getItemStackOfAmountFromOreDict("dustCryotheum", 1); - final ItemStack dust_Pyrotheum = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Pyrotheum, 1L); - final ItemStack dust_Blizz = ItemUtils.getItemStackOfAmountFromOreDict("dustBlizz", 1); - final ItemStack dust_Blizz3 = ItemUtils.getItemStackOfAmountFromOreDict("dustBlizz", 3); - final ItemStack rod_Blizz = ItemUtils.getItemStackOfAmountFromOreDict("stickBlizz", 1); final FluidStack moltenBlaze = getFluidStack("molten.blaze", 1440); // Gelid Cryotheum - GT_Values.RA.addChemicalBathRecipe( - (GT_OreDictUnificator.get(OrePrefixes.ore, Materials.Cinnabar, 1L)), - getFluidStack("cryotheum", 144), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cinnabar, 3L), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 30); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.ore, Materials.Cinnabar, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cinnabar, 3L)) + .fluidInputs(getFluidStack("cryotheum", 144)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sChemicalBathRecipes); // Blizz Powder - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Items.snowball, 4), - moltenBlaze, - dust_Blizz, - GT_Values.NI, - GT_Values.NI, - null, - 400, - 240); + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.snowball, 4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blizz, 1L)).fluidInputs(moltenBlaze) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sChemicalBathRecipes); // Blizz Rod - GT_Values.RA.addVacuumFreezerRecipe( - new ItemStack(Items.blaze_rod), - rod_Blizz, - (int) Math.max((Materials.Blaze.getMass() * 4) * 3L, 1L)); - GT_ModHandler.addPulverisationRecipe(rod_Blizz, dust_Blizz3, new ItemStack(Items.snowball, 1), 50, false); - - ItemStack dustCoal = ItemUtils.getItemStackOfAmountFromOreDict("dustCoal", 1); - ItemStack dustSulfur = ItemUtils.getItemStackOfAmountFromOreDict("dustSulfur", 1); - ItemStack dustRedstone = ItemUtils.getItemStackOfAmountFromOreDict("dustRedstone", 1); - ItemStack dustBlaze = ItemUtils.getItemStackOfAmountFromOreDict("dustBlaze", 1); - ItemStack dustSaltpeter = ItemUtils.getItemStackOfAmountFromOreDict("dustSaltpeter", 1); - ItemStack dustSnow = ItemUtils.getItemStackOfAmountFromOreDict("dustSnow", 1); - ItemStack dustBlizz = ItemUtils.getItemStackOfAmountFromOreDict("dustBlizz", 1); - ItemStack dustNiter = ItemUtils.getItemStackOfAmountFromOreDict("dustNiter", 1); + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.blaze_rod)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Blizz, 1L)).noFluidInputs() + .noFluidOutputs().duration(((int) Math.max((Materials.Blaze.getMass() * 4) * 3L, 1L)) * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); - if (ItemUtils.checkForInvalidItems(new ItemStack[] { dustCoal, dustSulfur, dustRedstone, dustBlaze })) { - GT_Values.RA.addMixerRecipe( - dustCoal, - dustSulfur, - dustRedstone, - dustBlaze, // Input - null, // F in - null, // F out - ItemHelper.cloneStack(dust_Pyrotheum, 1), // Output - 20 * 8, - 120); - } + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Pyrotheum, 1L)).noFluidInputs() + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); - if (ItemUtils.checkForInvalidItems(new ItemStack[] { dustSaltpeter, dustSnow, dustRedstone, dustBlizz })) { - GT_Values.RA.addMixerRecipe( - dustSaltpeter, - dustSnow, - dustRedstone, - dustBlizz, // Input - null, // F in - null, // F out - ItemHelper.cloneStack(dust_Cryotheum, 1), // Output - 20 * 8, - 120); - } + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Snow, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blizz, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cryotheum, 1L)).noFluidInputs() + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); - if (ItemUtils.checkForInvalidItems(new ItemStack[] { dustNiter, dustSnow, dustRedstone, dustBlizz })) { - GT_Values.RA.addMixerRecipe( - dustNiter, - dustSnow, - dustRedstone, - dustBlizz, // Input - null, // F in - null, // F out - ItemHelper.cloneStack(dust_Cryotheum, 1), // Output - 20 * 8, - 120); - } + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Niter, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Snow, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blizz, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cryotheum, 1L)).noFluidInputs() + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); } private static FluidStack getFluidStack(final String fluidName, final int amount) { |