From 6b77557e0e87cf5afd9ebd3985323ff1249e615c Mon Sep 17 00:00:00 2001 From: Glease <4586901+Glease@users.noreply.github.com> Date: Sun, 2 Apr 2023 00:02:47 +0800 Subject: Recipe Adder v2 (#1770) * add everything * fixes * migrate plasma forge recipes * syntax update * make chances array length differ a fatal error * time constants + long eut overload * migrate extruder recipes * migrate electromagnetic separator recipes * migrate wiremill recipes * migrate forming press recipes * migrate bender recipes * add doc to clarify the three itemInputs * migrate alloy smelter recipes * migrate arc furnace recipes * added ModIDs enum * sort ModIDs * migrate autoclave recipes * migrated some assembler recipes * split a bit more assembler recipes * migrate canner recipes * migrate brewing recipes * ic2 mod check in canner recipes * use some loops to reduce the amount of recipes to migrate * add requested helper methods * migrate vacuum freezer recipes * migrate thermal centrifuge recipes * format smelter recipes only, doesn't go through normal GT recipe * migrated slicer recipes * migrated sifter recipes * Use proper enum now * remove more constants * cleaning cutting recipes before migration * remove tons of dead commented recipes * migrate pyrolyse recipes * use ModIDs enum more * migrate printer recipes * add a less confusing way to specify value of specialItem * migrate pulverizer recipes * less confusing special item specification * even more ModIDs enum usage * fix auto * import confusing Minecraft enum value with Minecraft client object * migrated blast furnace recipes * migrated Centrifuge recipes * migrated assembler recipes * migrated implosion compressor recipes * migrated extractor recipes * migrated mixer recipes * remove useless code * mgrate universal chemical recipes * refactor chemical recipes * migrate single block only chem reactor recipes * migrate chem reactor recipes * reworked circuit assembler recipes before migrating them * migrated circuit assembler recipes * fix merge conflict for assembler recipes * remove leftover of the merge conflicts * fix weird translation glitch * example of assembly line recipe using RA2 * bugfixes for assline * remove specialValue usage in blast furnace recipes * fix more bugs * add nooptimize to where it make sense * add recipe descriptions * Materials.Superconductor -> Materials.SuperconductorUHV * remove useless Object creations * remove explicit long casts * migrate assemblyline recipes * migrate chemical bath recipes * migrate compressor recipes * move smelting recipe where it belongs * migrated cutting machine recipes * migrated fermenter recipes (unhide alcohol) * remove explicit long casts * migrate fluid canner recipes * migrate fluid heater recipes * migrated fusion recipes * migrated lathe recipes * migrated laser engraver recipes * migrated packager recipes * migrated forge hammer recipes * migrated TPM recipes * exit early and reduced indents * migrated fluid extractor recipes * migrated fluid solidifier recipes * migrated electrolyzer recipes * migrated crop processing recipes * migrated default polymerization recipes * migrate distillery recipes * migrate matter amplifier recipes * add metadata identifier for fusion ignition threshold * migrate fuel recipes * update bs (cherry picked from commit c2d931c9b6caa0376e9d50591894cd849021104d) * spotless (cherry picked from commit 1060f5357fb95e28bfae1f052025f55dabc21a0f) * guard against null itemstacks * wrong translation * fix empty arrays being accessed * add 0 duration and 0 EU/t for fuel recipes * fix typo in matter amplifier recipes * spotless apply --------- Co-authored-by: boubou19 Co-authored-by: Martin Robertz --- src/main/java/gregtech/GT_Mod.java | 17 +- src/main/java/gregtech/api/GregTech_API.java | 4 +- src/main/java/gregtech/api/enums/GT_Values.java | 4 +- src/main/java/gregtech/api/enums/Materials.java | 8 +- src/main/java/gregtech/api/enums/ModIDs.java | 84 + .../java/gregtech/api/enums/SoundResource.java | 48 +- .../gregtech/api/interfaces/IGT_RecipeMap.java | 64 + .../api/interfaces/internal/IGT_RecipeAdder.java | 3 + .../gregtech/api/items/GT_MetaGenerated_Item.java | 4 +- .../implementations/GT_MetaPipeEntity_Cable.java | 9 +- .../GT_MetaTileEntity_BasicMachine_GT_Recipe.java | 6 +- src/main/java/gregtech/api/util/GT_BaseCrop.java | 4 +- .../java/gregtech/api/util/GT_ModReference.java | 29 + src/main/java/gregtech/api/util/GT_Recipe.java | 601 +- .../java/gregtech/api/util/GT_RecipeBuilder.java | 713 ++ .../java/gregtech/api/util/GT_RecipeConstants.java | 258 + .../java/gregtech/api/util/GT_RecipeMapUtil.java | 196 + src/main/java/gregtech/api/util/GT_Utility.java | 83 + src/main/java/gregtech/common/GT_Client.java | 4 +- src/main/java/gregtech/common/GT_Proxy.java | 121 +- src/main/java/gregtech/common/GT_RecipeAdder.java | 27 +- .../gregtech/common/blocks/GT_Block_Metal.java | 5 +- .../common/blocks/GT_Block_Ores_Abstract.java | 5 +- .../common/items/GT_MetaGenerated_Item_01.java | 4 +- src/main/java/gregtech/common/items/ItemComb.java | 93 +- src/main/java/gregtech/common/items/ItemDrop.java | 8 +- .../java/gregtech/common/items/ItemPropolis.java | 6 +- .../GT_MetaTileEntity_MagicalEnergyAbsorber.java | 5 +- .../basic/GT_MetaTileEntity_Disassembler.java | 10 +- .../machines/basic/GT_MetaTileEntity_Scanner.java | 28 +- .../multi/GT_MetaTileEntity_PyrolyseOven.java | 7 +- .../java/gregtech/common/tools/GT_Tool_Scoop.java | 6 +- .../materialprocessing/ProcessingModSupport.java | 30 +- .../gregtech/loaders/misc/GT_Achievements.java | 5 +- .../gregtech/loaders/misc/GT_BeeDefinition.java | 506 +- src/main/java/gregtech/loaders/misc/GT_Bees.java | 30 +- .../loaders/oreprocessing/ProcessingCrafting.java | 4 +- .../loaders/oreprocessing/ProcessingSlab.java | 5 +- .../loaders/postload/GT_CraftingRecipeLoader.java | 310 +- .../loaders/postload/GT_MachineRecipeLoader.java | 33 +- .../gregtech/loaders/postload/GT_PostLoad.java | 63 +- .../loaders/postload/chains/GT_NaniteChain.java | 40 +- .../postload/chains/GT_PCBFactoryRecipes.java | 9 +- .../postload/recipes/AlloySmelterRecipes.java | 80 +- .../postload/recipes/ArcFurnaceRecipes.java | 623 +- .../loaders/postload/recipes/AssemblerRecipes.java | 9241 +++++++++++--------- .../postload/recipes/AssemblyLineRecipes.java | 1307 +-- .../loaders/postload/recipes/AutoclaveRecipes.java | 299 +- .../loaders/postload/recipes/BenderRecipes.java | 418 +- .../postload/recipes/BlastFurnaceRecipes.java | 1133 ++- .../loaders/postload/recipes/BreweryRecipes.java | 719 +- .../loaders/postload/recipes/CannerRecipes.java | 89 +- .../postload/recipes/CentrifugeRecipes.java | 1740 ++-- .../postload/recipes/ChemicalBathRecipes.java | 974 +-- .../loaders/postload/recipes/ChemicalRecipes.java | 8436 ++++++++---------- .../postload/recipes/CircuitAssemblerRecipes.java | 538 +- .../postload/recipes/CompressorRecipes.java | 174 +- .../postload/recipes/CropProcessingRecipes.java | 135 +- .../loaders/postload/recipes/CuttingRecipes.java | 432 +- .../postload/recipes/DistilleryRecipes.java | 1009 +-- .../postload/recipes/ElectrolyzerRecipes.java | 587 +- .../recipes/ElectromagneticSeparatorRecipes.java | 16 +- .../loaders/postload/recipes/ExtractorRecipes.java | 138 +- .../loaders/postload/recipes/ExtruderRecipes.java | 23 +- .../loaders/postload/recipes/FermenterRecipes.java | 401 +- .../postload/recipes/FluidCannerRecipes.java | 79 +- .../postload/recipes/FluidExtractorRecipes.java | 775 +- .../postload/recipes/FluidHeaterRecipes.java | 91 +- .../postload/recipes/FluidSolidifierRecipes.java | 751 +- .../postload/recipes/ForgeHammerRecipes.java | 161 +- .../postload/recipes/FormingPressRecipes.java | 258 +- .../loaders/postload/recipes/FuelRecipes.java | 91 +- .../postload/recipes/FusionReactorRecipes.java | 433 +- .../recipes/ImplosionCompressorRecipes.java | 72 +- .../postload/recipes/LaserEngraverRecipes.java | 62 +- .../loaders/postload/recipes/LatheRecipes.java | 34 +- .../postload/recipes/MatterAmplifierRecipes.java | 14 +- .../loaders/postload/recipes/MixerRecipes.java | 2953 +++---- .../loaders/postload/recipes/NEIHiding.java | 30 +- .../postload/recipes/OreDictUnification.java | 6 +- .../loaders/postload/recipes/PackagerRecipes.java | 52 +- .../postload/recipes/PlasmaForgeRecipes.java | 46 +- .../loaders/postload/recipes/PrinterRecipes.java | 60 +- .../loaders/postload/recipes/Pulverizer.java | 801 +- .../loaders/postload/recipes/PyrolyseRecipes.java | 181 +- .../loaders/postload/recipes/SifterRecipes.java | 39 +- .../loaders/postload/recipes/SlicerRecipes.java | 43 +- .../loaders/postload/recipes/SmelterRecipes.java | 20 +- .../postload/recipes/ThaumcraftRecipes.java | 1887 ++-- .../postload/recipes/ThermalCentrifugeRecipes.java | 21 +- .../recipes/TranscendentPlasmaMixerRecipes.java | 108 +- .../postload/recipes/VacuumFreezerRecipes.java | 503 +- .../loaders/postload/recipes/WiremillRecipes.java | 183 +- .../loaders/preload/GT_Loader_ItemData.java | 4 +- .../preload/GT_Loader_MetaTileEntities.java | 60 +- .../loaders/preload/GT_Loader_OreDictionary.java | 52 +- .../java/gregtech/loaders/preload/GT_PreLoad.java | 25 +- src/main/java/gregtech/nei/IMCForNEI.java | 5 +- .../java/gregtech/nei/dumper/GregTechIDDumper.java | 5 +- 99 files changed, 20355 insertions(+), 21561 deletions(-) create mode 100644 src/main/java/gregtech/api/enums/ModIDs.java create mode 100644 src/main/java/gregtech/api/interfaces/IGT_RecipeMap.java create mode 100644 src/main/java/gregtech/api/util/GT_ModReference.java create mode 100644 src/main/java/gregtech/api/util/GT_RecipeBuilder.java create mode 100644 src/main/java/gregtech/api/util/GT_RecipeConstants.java create mode 100644 src/main/java/gregtech/api/util/GT_RecipeMapUtil.java (limited to 'src/main/java/gregtech') diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index 9d6aa21d3f..fabc76d581 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -1,7 +1,7 @@ package gregtech; import static gregtech.api.GregTech_API.registerCircuitProgrammer; -import static gregtech.api.enums.GT_Values.MOD_ID_FR; +import static gregtech.api.enums.ModIDs.Forestry; import java.io.PrintWriter; import java.io.StringWriter; @@ -32,7 +32,6 @@ import appeng.api.AEApi; import com.google.common.base.Stopwatch; import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; @@ -48,13 +47,7 @@ import gregtech.api.GregTech_API; import gregtech.api.enchants.Enchantment_EnderDamage; import gregtech.api.enchants.Enchantment_Hazmat; import gregtech.api.enchants.Enchantment_Radioactivity; -import gregtech.api.enums.ConfigCategories; -import gregtech.api.enums.Element; -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.Textures; +import gregtech.api.enums.*; import gregtech.api.interfaces.internal.IGT_Mod; import gregtech.api.metatileentity.BaseMetaPipeEntity; import gregtech.api.objects.GT_ItemStack; @@ -303,7 +296,7 @@ public class GT_Mod implements IGT_Mod { } } - if (Loader.isModLoaded(MOD_ID_FR)) + if (Forestry.isModLoaded()) // noinspection InstantiationOfUtilityClass//TODO: Refactor GT_Bees with proper state handling new GT_Bees(); @@ -330,7 +323,7 @@ public class GT_Mod implements IGT_Mod { gregtechproxy.registerUnificationEntries(); new GT_FuelLoader().run(); } - if (Loader.isModLoaded("Waila")) { + if (ModIDs.Waila.isModLoaded()) { Waila.init(); } IMCForNEI.IMCSender(); @@ -464,7 +457,7 @@ public class GT_Mod implements IGT_Mod { GT_PostLoad.registerFluidCannerRecipes(); - if (Loader.isModLoaded(MOD_ID_FR)) { + if (Forestry.isModLoaded()) { GT_Forestry_Compat.transferCentrifugeRecipes(); GT_Forestry_Compat.transferSqueezerRecipes(); } diff --git a/src/main/java/gregtech/api/GregTech_API.java b/src/main/java/gregtech/api/GregTech_API.java index 68d1afdebd..d8ad1ca07b 100644 --- a/src/main/java/gregtech/api/GregTech_API.java +++ b/src/main/java/gregtech/api/GregTech_API.java @@ -3,7 +3,7 @@ package gregtech.api; import static gregtech.api.enums.GT_Values.B; import static gregtech.api.enums.GT_Values.L; import static gregtech.api.enums.GT_Values.M; -import static gregtech.api.enums.GT_Values.MOD_ID_IC2; +import static gregtech.api.enums.ModIDs.IndustrialCraft2; import java.util.*; import java.util.concurrent.ConcurrentHashMap; @@ -284,7 +284,7 @@ public class GregTech_API { public static boolean mUseOnlyGoodSolderingMaterials = false; - private static final String aTextIC2Lower = MOD_ID_IC2.toLowerCase(Locale.ENGLISH); + private static final String aTextIC2Lower = IndustrialCraft2.modID.toLowerCase(Locale.ENGLISH); /** * Getting assigned by the Mod loading */ diff --git a/src/main/java/gregtech/api/enums/GT_Values.java b/src/main/java/gregtech/api/enums/GT_Values.java index d06e70b0b5..6ccf092461 100644 --- a/src/main/java/gregtech/api/enums/GT_Values.java +++ b/src/main/java/gregtech/api/enums/GT_Values.java @@ -1,5 +1,7 @@ package gregtech.api.enums; +import static gregtech.api.enums.ModIDs.IndustrialCraft2; + import java.math.BigInteger; import java.util.*; @@ -206,7 +208,7 @@ public class GT_Values { TEX_DIR_ASPECTS = TEX_DIR + "aspects/", RES_PATH = MOD_ID + ":" + TEX_DIR, RES_PATH_GUI = MOD_ID + ":" + TEX_DIR_GUI, RES_PATH_ITEM = MOD_ID + ":", RES_PATH_BLOCK = MOD_ID + ":", RES_PATH_ENTITY = MOD_ID + ":" + TEX_DIR_ENTITY, RES_PATH_ASPECTS = MOD_ID + ":" + TEX_DIR_ASPECTS, - RES_PATH_IC2 = MOD_ID_IC2.toLowerCase(Locale.ENGLISH) + ":", + RES_PATH_IC2 = IndustrialCraft2.modID.toLowerCase(Locale.ENGLISH) + ":", RES_PATH_MODEL = MOD_ID + ":" + TEX_DIR + "models/"; /** diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index 9932cf3b09..3ff4d70920 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -2,7 +2,8 @@ package gregtech.api.enums; import static gregtech.api.enums.FluidState.GAS; import static gregtech.api.enums.GT_Values.M; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; +import static gregtech.api.enums.ModIDs.Thaumcraft; import java.util.*; import java.util.stream.Collectors; @@ -13,7 +14,6 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; -import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.TC_Aspects.TC_AspectStack; @@ -2316,7 +2316,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { MATERIALS_ARRAY = MATERIALS_MAP.values().toArray(new Materials[0]); // Generate standard object array. This is a // lot faster to loop over. VALUES = Arrays.asList(MATERIALS_ARRAY); - if (!Loader.isModLoaded(MOD_ID_DC) && !GT_Mod.gregtechproxy.mEnableAllComponents) + if (!NewHorizonsCoreMod.isModLoaded() && !GT_Mod.gregtechproxy.mEnableAllComponents) OrePrefixes.initMaterialComponents(); else { OrePrefixes.ingotHot.mDisabledItems.addAll( @@ -2442,7 +2442,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { : aMaterial == Diamond || aMaterial == Thaumium ? Wood : aMaterial.contains(SubTag.BURNING) ? Blaze : aMaterial.contains(SubTag.MAGICAL) && aMaterial.contains(SubTag.CRYSTAL) - && Loader.isModLoaded(GT_Values.MOD_ID_TC) ? Thaumium + && Thaumcraft.isModLoaded() ? Thaumium : aMaterial.getMass() > Element.Tc.getMass() * 2 ? TungstenSteel : aMaterial.getMass() > Element.Tc.getMass() ? Steel : Wood); diff --git a/src/main/java/gregtech/api/enums/ModIDs.java b/src/main/java/gregtech/api/enums/ModIDs.java new file mode 100644 index 0000000000..16c03e3ae5 --- /dev/null +++ b/src/main/java/gregtech/api/enums/ModIDs.java @@ -0,0 +1,84 @@ +package gregtech.api.enums; + +import cpw.mods.fml.common.Loader; + +public enum ModIDs { + + AdvancedSolarPanel("AdvancedSolarPanel"), + AE2FluidCraft("ae2fc"), + AppleCore("AppleCore"), + AppliedEnergistics2("appliedenergistics2"), + Avaritia("Avaritia"), + AvaritiaAddons("avaritiaddons"), + BartWorks("bartworks"), + BetterLoadingScreen("betterloadingscreen"), + BiomesOPlanty("BiomesOPlenty"), + BuildCraftFactory("BuildCraft|Factory"), + BuildCraftSilicon("BuildCraft|Silicon"), + BuildCraftTransport("BuildCraft|Transport"), + Computronics("computronics"), + CraftTweaker("MineTweaker3"), + EnderIO("EnderIO"), + EnderStorage("EnderStorage"), + EternalSingularity("eternalsingularity"), + ExtraCells2("extracells"), + ExtraUtilities("ExtraUtilities"), + ForbiddenMagic("ForbiddenMagic"), + Forestry("Forestry"), + GalacticraftCore("GalacticraftCore"), + GalacticraftMars("GalacticraftMars"), + GalaxySpace("GalaxySpace"), + Gendustry("gendustry"), + GoodGenerator("GoodGenerator"), + GregTech("gregtech"), + GraviSuite("GraviSuite"), + GTNHLanthanides("gtnhlanth"), + GTPlusPlus("miscutils"), + PamsHarvestCraft("harvestcraft"), + HardcoreEnderExpansion("HardcoreEnderExpansion"), + HodgePodge("hodgepodge"), + IC2CropPlugin("Ic2Nei"), + IC2NuclearControl("IC2NuclearControl"), + IguanaTweaksTinkerConstruct("IguanaTweaksTConstruct"), + IndustrialCraft2("IC2"), + IronChests("IronChest"), + IronTanks("irontank"), + Minecraft("minecraft"), + Natura("Natura"), + NEICustomDiagrams("neicustomdiagram"), + NewHorizonsCoreMod("dreamcraft"), + NotEnoughItems("NotEnoughItems"), + OpenComputers("OpenComputers"), + ProjectRedCore("ProjRed|Core"), + Railcraft("Railcraft"), + TaintedMagic("TaintedMagic"), + Thaumcraft("Thaumcraft"), + ThaumicBases("thaumicbases"), + ThaumicTinkerer("ThaumicTinkerer"), + TinkerConstruct("TConstruct"), + TinkersGregworks("TGregworks"), + Translocator("Translocator"), + TwilightForest("TwilightForest"), + Waila("Waila"), + // Do we keep compat of those? + IndustrialCraft2Classic("IC2-Classic-Spmod"), + Metallurgy("Metallurgy"), + RotaryCraft("RotaryCraft"), + ThermalExpansion("ThermalExpansion"), + ThermalFondation("ThermalFoundation"), + UndergroundBiomes("UndergroundBiomes"); + + public final String modID; + private Boolean modLoaded; + + ModIDs(String modID) { + this.modID = modID; + } + + public boolean isModLoaded() { + if (this.modLoaded == null) { + this.modLoaded = Loader.isModLoaded(modID); + } + return this.modLoaded; + } +} diff --git a/src/main/java/gregtech/api/enums/SoundResource.java b/src/main/java/gregtech/api/enums/SoundResource.java index f1dffb3884..63a8331496 100644 --- a/src/main/java/gregtech/api/enums/SoundResource.java +++ b/src/main/java/gregtech/api/enums/SoundResource.java @@ -1,7 +1,7 @@ package gregtech.api.enums; import static gregtech.api.enums.GT_Values.MOD_ID; -import static gregtech.api.enums.GT_Values.MOD_ID_IC2; +import static gregtech.api.enums.ModIDs.IndustrialCraft2; import java.util.EnumSet; import java.util.Locale; @@ -30,31 +30,31 @@ public enum SoundResource { RANDOM_EXPLODE(5, "random.explode"), FIRE_IGNITE(6, "fire.ignite"), - IC2_TOOLS_WRENCH(100, MOD_ID_IC2, "tools.Wrench"), - IC2_TOOLS_RUBBER_TRAMPOLINE(101, MOD_ID_IC2, "tools.RubberTrampoline"), - IC2_TOOLS_PAINTER(102, MOD_ID_IC2, "tools.Painter"), - IC2_TOOLS_BATTERY_USE(103, MOD_ID_IC2, "tools.BatteryUse"), - IC2_TOOLS_CHAINSAW_CHAINSAW_USE_ONE(104, MOD_ID_IC2, "tools.chainsaw.ChainsawUseOne"), - IC2_TOOLS_CHAINSAW_CHAINSAW_USE_TWO(105, MOD_ID_IC2, "tools.chainsaw.ChainsawUseTwo"), - IC2_TOOLS_DRILL_DRILL_SOFT(106, MOD_ID_IC2, "tools.drill.DrillSoft"), - IC2_TOOLS_DRILL_DRILL_HARD(107, MOD_ID_IC2, "tools.drill.DrillHard"), - IC2_TOOLS_OD_SCANNER(108, MOD_ID_IC2, "tools.ODScanner"), - IC2_TOOLS_INSULATION_CUTTERS(109, MOD_ID_IC2, "tools.InsulationCutters"), + IC2_TOOLS_WRENCH(100, IndustrialCraft2.modID, "tools.Wrench"), + IC2_TOOLS_RUBBER_TRAMPOLINE(101, IndustrialCraft2.modID, "tools.RubberTrampoline"), + IC2_TOOLS_PAINTER(102, IndustrialCraft2.modID, "tools.Painter"), + IC2_TOOLS_BATTERY_USE(103, IndustrialCraft2.modID, "tools.BatteryUse"), + IC2_TOOLS_CHAINSAW_CHAINSAW_USE_ONE(104, IndustrialCraft2.modID, "tools.chainsaw.ChainsawUseOne"), + IC2_TOOLS_CHAINSAW_CHAINSAW_USE_TWO(105, IndustrialCraft2.modID, "tools.chainsaw.ChainsawUseTwo"), + IC2_TOOLS_DRILL_DRILL_SOFT(106, IndustrialCraft2.modID, "tools.drill.DrillSoft"), + IC2_TOOLS_DRILL_DRILL_HARD(107, IndustrialCraft2.modID, "tools.drill.DrillHard"), + IC2_TOOLS_OD_SCANNER(108, IndustrialCraft2.modID, "tools.ODScanner"), + IC2_TOOLS_INSULATION_CUTTERS(109, IndustrialCraft2.modID, "tools.InsulationCutters"), - IC2_MACHINES_EXTRACTOR_OP(200, MOD_ID_IC2, "machines.ExtractorOp"), - IC2_MACHINES_MACERATOR_OP(201, MOD_ID_IC2, "machines.MaceratorOp"), - IC2_MACHINES_INDUCTION_LOOP(202, MOD_ID_IC2, "machines.InductionLoop"), - IC2_MACHINES_COMPRESSOR_OP(203, MOD_ID_IC2, "machines.CompressorOp"), - IC2_MACHINES_RECYCLER_OP(204, MOD_ID_IC2, "machines.RecyclerOp"), - IC2_MACHINES_MINER_OP(205, MOD_ID_IC2, "machines.MinerOp"), - IC2_MACHINES_PUMP_OP(206, MOD_ID_IC2, "machines.PumpOp"), - IC2_MACHINES_ELECTROFURNACE_LOOP(207, MOD_ID_IC2, "machines.ElectroFurnaceLoop"), + IC2_MACHINES_EXTRACTOR_OP(200, IndustrialCraft2.modID, "machines.ExtractorOp"), + IC2_MACHINES_MACERATOR_OP(201, IndustrialCraft2.modID, "machines.MaceratorOp"), + IC2_MACHINES_INDUCTION_LOOP(202, IndustrialCraft2.modID, "machines.InductionLoop"), + IC2_MACHINES_COMPRESSOR_OP(203, IndustrialCraft2.modID, "machines.CompressorOp"), + IC2_MACHINES_RECYCLER_OP(204, IndustrialCraft2.modID, "machines.RecyclerOp"), + IC2_MACHINES_MINER_OP(205, IndustrialCraft2.modID, "machines.MinerOp"), + IC2_MACHINES_PUMP_OP(206, IndustrialCraft2.modID, "machines.PumpOp"), + IC2_MACHINES_ELECTROFURNACE_LOOP(207, IndustrialCraft2.modID, "machines.ElectroFurnaceLoop"), @Deprecated - DEPRECATED_DUPE_OF_IC2_MACHINES_INDUCTION_LOOP(208, MOD_ID_IC2, "machines.InductionLoop"), - IC2_MACHINES_MACHINE_OVERLOAD(209, MOD_ID_IC2, "machines.MachineOverload"), - IC2_MACHINES_INTERRUPT_ONE(210, MOD_ID_IC2, "machines.InterruptOne"), - IC2_MACHINES_KA_CHING(211, MOD_ID_IC2, "machines.KaChing"), - IC2_MACHINES_MAGNETIZER_LOOP(212, MOD_ID_IC2, "machines.MagnetizerLoop"), + DEPRECATED_DUPE_OF_IC2_MACHINES_INDUCTION_LOOP(208, IndustrialCraft2.modID, "machines.InductionLoop"), + IC2_MACHINES_MACHINE_OVERLOAD(209, IndustrialCraft2.modID, "machines.MachineOverload"), + IC2_MACHINES_INTERRUPT_ONE(210, IndustrialCraft2.modID, "machines.InterruptOne"), + IC2_MACHINES_KA_CHING(211, IndustrialCraft2.modID, "machines.KaChing"), + IC2_MACHINES_MAGNETIZER_LOOP(212, IndustrialCraft2.modID, "machines.MagnetizerLoop"), GT_MACHINES_FUSION_LOOP(230, MOD_ID, "machines.FusionLoop"), GT_MACHINES_DISTILLERY_LOOP(231, MOD_ID, "machines.DistilleryLoop"), diff --git a/src/main/java/gregtech/api/interfaces/IGT_RecipeMap.java b/src/main/java/gregtech/api/interfaces/IGT_RecipeMap.java new file mode 100644 index 0000000000..69f87161d1 --- /dev/null +++ b/src/main/java/gregtech/api/interfaces/IGT_RecipeMap.java @@ -0,0 +1,64 @@ +package gregtech.api.interfaces; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.function.Function; + +import javax.annotation.Nonnull; + +import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_RecipeBuilder; +import gregtech.api.util.GT_Utility; + +/** + * Represents the target of a recipe adding action, usually, but not necessarily, is a recipe map itself. + */ +public interface IGT_RecipeMap { + + /** + * Add a downstream recipe map that will get to handle the original builder. + * + * @param downstream + */ + void addDownstream(IGT_RecipeMap downstream); + + /** + * Actually add the recipe represented by the builder. CAN modify the builder's internal states!!! + */ + @Nonnull + Collection doAdd(GT_RecipeBuilder builder); + + /** + * Return a variant of this recipe map that will perform a deep copy on input recipe builder before doing anything + * to it. + * + * The returned recipe map will not have any downstreams, but can accept new downstreams. + */ + default IGT_RecipeMap deepCopyInput() { + return newRecipeMap(b -> doAdd(b.copy())); + } + + static IGT_RecipeMap newRecipeMap(Function> func) { + return new IGT_RecipeMap() { + + private final Collection downstreams = new ArrayList<>(); + + @Override + public void addDownstream(IGT_RecipeMap downstream) { + downstreams.add(downstream); + } + + @Nonnull + @Override + public Collection doAdd(GT_RecipeBuilder builder) { + List> ret = new ArrayList<>(); + ret.add(func.apply(builder)); + for (IGT_RecipeMap downstream : downstreams) { + ret.add(downstream.doAdd(builder)); + } + return GT_Utility.concat(ret); + } + }; + } +} diff --git a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java index bda2523811..149600b426 100644 --- a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java +++ b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java @@ -5,6 +5,7 @@ import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_RecipeBuilder; public interface IGT_RecipeAdder { @@ -960,4 +961,6 @@ public interface IGT_RecipeAdder { */ GT_Recipe addIC2ReactorFuelCell(ItemStack input, ItemStack output, boolean aMox, float aHeat, float aEnergy, int aCells); + + GT_RecipeBuilder stdBuilder(); } diff --git a/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java b/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java index 32a46c8641..b6ea08213b 100644 --- a/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java +++ b/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java @@ -1,6 +1,7 @@ package gregtech.api.items; import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.ModIDs.AppleCore; import java.util.ArrayList; import java.util.Arrays; @@ -20,7 +21,6 @@ import net.minecraft.world.World; import squeek.applecore.api.food.FoodValues; import squeek.applecore.api.food.IEdible; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.Optional; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -321,7 +321,7 @@ public abstract class GT_MetaGenerated_Item extends GT_MetaBase_Item implements public final ItemStack onEaten(ItemStack aStack, World aWorld, EntityPlayer aPlayer) { IFoodStat tStat = mFoodStats.get((short) getDamage(aStack)); if (tStat != null) { - if (Loader.isModLoaded(MOD_ID_APC)) { + if (AppleCore.isModLoaded()) { aPlayer.getFoodStats().func_151686_a( (ItemFood) GT_Utility.callConstructor( "squeek.applecore.api.food.ItemFoodProxy.ItemFoodProxy", diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java index 1ea2e3e756..e2e0b13f12 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java @@ -1,6 +1,7 @@ package gregtech.api.metatileentity.implementations; import static gregtech.api.enums.GT_Values.ALL_VALID_SIDES; +import static gregtech.api.enums.ModIDs.GalacticraftCore; import java.util.ArrayList; import java.util.HashSet; @@ -19,13 +20,9 @@ import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import cofh.api.energy.IEnergyReceiver; -import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; -import gregtech.api.enums.Dyes; -import gregtech.api.enums.Materials; -import gregtech.api.enums.TextureSet; -import gregtech.api.enums.Textures; +import gregtech.api.enums.*; import gregtech.api.graphs.Node; import gregtech.api.graphs.NodeList; import gregtech.api.graphs.PowerNode; @@ -348,7 +345,7 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile // ((tIsGregTechTileEntity && tIsTileEntityCable) && (tAlwaysLookConnected || tLetEnergyIn || tLetEnergyOut) ) // --> Not needed - if (Loader.isModLoaded("GalacticraftCore") && GT_GC_Compat.canConnect(tTileEntity, tDir)) return true; + if (GalacticraftCore.isModLoaded() && GT_GC_Compat.canConnect(tTileEntity, tDir)) return true; // AE2-p2p Compat if (GT_Mod.gregtechproxy.mAE2Integration) { diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java index 7976ea94c6..e51da3bbdc 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java @@ -4,6 +4,7 @@ import static gregtech.api.enums.GT_Values.V; import static gregtech.api.enums.GT_Values.VN; import static gregtech.api.enums.GT_Values.W; import static gregtech.api.enums.GT_Values.ticksBetweenSounds; +import static gregtech.api.enums.ModIDs.BartWorks; import static gregtech.api.objects.XSTR.XSTR_INSTANCE; import java.util.Locale; @@ -23,7 +24,6 @@ import com.gtnewhorizons.modularui.api.math.Pos2d; import com.gtnewhorizons.modularui.api.math.Size; import com.gtnewhorizons.modularui.common.widget.ProgressBar; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.*; @@ -206,12 +206,12 @@ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_ case 6: case 7: case 8: - if (Loader.isModLoaded("bartworks")) { // todo remove via provider pattern on all enums? + if (BartWorks.isModLoaded()) { // todo remove via provider pattern on all enums? aRecipe[i] = "blockGlass" + VN[aTier]; break; } default: - if (Loader.isModLoaded("bartworks")) { // todo remove via provider pattern on all enums? + if (BartWorks.isModLoaded()) { // todo remove via provider pattern on all enums? aRecipe[i] = "blockGlass" + VN[8]; } else { aRecipe[i] = Ic2Items.reinforcedGlass; diff --git a/src/main/java/gregtech/api/util/GT_BaseCrop.java b/src/main/java/gregtech/api/util/GT_BaseCrop.java index 65d2900176..bfffbe8572 100644 --- a/src/main/java/gregtech/api/util/GT_BaseCrop.java +++ b/src/main/java/gregtech/api/util/GT_BaseCrop.java @@ -1,6 +1,7 @@ package gregtech.api.util; import static gregtech.api.enums.GT_Values.E; +import static gregtech.api.enums.ModIDs.IC2CropPlugin; import java.util.ArrayList; import java.util.List; @@ -12,7 +13,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import speiger.src.crops.api.ICropCardInfo; -import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.ConfigCategories; @@ -33,7 +33,7 @@ public class GT_BaseCrop extends CropCard implements ICropCardInfo { mGrowthSpeed = 0; private ItemStack mDrop = null, mSpecialDrops[] = null; private Materials mBlock = null; - private static boolean bIc2NeiLoaded = Loader.isModLoaded("Ic2Nei"); + private static boolean bIc2NeiLoaded = IC2CropPlugin.isModLoaded(); /** * To create new Crops diff --git a/src/main/java/gregtech/api/util/GT_ModReference.java b/src/main/java/gregtech/api/util/GT_ModReference.java new file mode 100644 index 0000000000..02a1116f68 --- /dev/null +++ b/src/main/java/gregtech/api/util/GT_ModReference.java @@ -0,0 +1,29 @@ +package gregtech.api.util; + +import static gregtech.api.enums.ModIDs.GTPlusPlus; +import static gregtech.api.enums.ModIDs.Railcraft; + +import cpw.mods.fml.common.Loader; + +@Deprecated // use gregtech.api.enums.ModIDs instead +public enum GT_ModReference { + + RAILCRAFT(Railcraft.modID), + GTPP(GTPlusPlus.modID),; + + private final boolean loaded; + private final String modID; + + GT_ModReference(String modID) { + loaded = Loader.isModLoaded(modID); + this.modID = modID; + } + + public boolean isLoaded() { + return loaded; + } + + public String getModID() { + return modID; + } +} diff --git a/src/main/java/gregtech/api/util/GT_Recipe.java b/src/main/java/gregtech/api/util/GT_Recipe.java index 3b7f64aae8..e7443a63b5 100644 --- a/src/main/java/gregtech/api/util/GT_Recipe.java +++ b/src/main/java/gregtech/api/util/GT_Recipe.java @@ -1,7 +1,14 @@ package gregtech.api.util; import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.ModIDs.GTPlusPlus; +import static gregtech.api.enums.ModIDs.NEICustomDiagrams; +import static gregtech.api.enums.ModIDs.Railcraft; +import static gregtech.api.util.GT_RecipeConstants.ADDITIVE_AMOUNT; +import static gregtech.api.util.GT_RecipeMapUtil.*; import static gregtech.api.util.GT_Utility.formatNumbers; +import static gregtech.api.util.GT_Utility.isArrayEmptyOrNull; +import static gregtech.api.util.GT_Utility.isArrayOfLength; import static net.minecraft.util.EnumChatFormatting.GRAY; import static net.minecraft.util.StatCollector.translateToLocal; @@ -9,10 +16,15 @@ import java.awt.*; import java.util.*; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; +import java.util.function.Consumer; +import java.util.function.Function; import java.util.function.Supplier; import javax.annotation.Nullable; +import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; +import mods.railcraft.common.items.RailcraftToolItems; + import net.minecraft.client.Minecraft; import net.minecraft.client.gui.FontRenderer; import net.minecraft.init.Blocks; @@ -27,6 +39,8 @@ import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.IFluidContainerItem; +import org.apache.commons.lang3.ArrayUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.tuple.ImmutablePair; import org.apache.commons.lang3.tuple.Pair; @@ -34,6 +48,7 @@ import appeng.util.ReadableNumberConverter; import codechicken.lib.gui.GuiDraw; import codechicken.nei.PositionedStack; +import com.google.common.collect.Iterables; import com.gtnewhorizons.modularui.api.GlStateManager; import com.gtnewhorizons.modularui.api.ModularUITextures; import com.gtnewhorizons.modularui.api.drawable.FallbackableUITexture; @@ -60,6 +75,7 @@ import gregtech.api.gui.GT_GUIColorOverride; import gregtech.api.gui.modularui.FallbackableSteamTexture; import gregtech.api.gui.modularui.GT_UITextures; import gregtech.api.gui.modularui.SteamTexture; +import gregtech.api.interfaces.IGT_RecipeMap; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; import gregtech.api.objects.GT_FluidStack; @@ -155,13 +171,13 @@ public class GT_Recipe implements Comparable { */ public List> stackTraces = new ArrayList<>(); - private GT_Recipe(GT_Recipe aRecipe) { - mInputs = GT_Utility.copyStackArray((Object[]) aRecipe.mInputs); - mOutputs = GT_Utility.copyStackArray((Object[]) aRecipe.mOutputs); + private GT_Recipe(GT_Recipe aRecipe, boolean shallow) { + mInputs = shallow ? aRecipe.mInputs : GT_Utility.copyStackArray((Object[]) aRecipe.mInputs); + mOutputs = shallow ? aRecipe.mOutputs : GT_Utility.copyStackArray((Object[]) aRecipe.mOutputs); mSpecialItems = aRecipe.mSpecialItems; mChances = aRecipe.mChances; - mFluidInputs = GT_Utility.copyFluidArray(aRecipe.mFluidInputs); - mFluidOutputs = GT_Utility.copyFluidArray(aRecipe.mFluidOutputs); + mFluidInputs = shallow ? aRecipe.mFluidInputs : GT_Utility.copyFluidArray(aRecipe.mFluidInputs); + mFluidOutputs = shallow ? aRecipe.mFluidOutputs : GT_Utility.copyFluidArray(aRecipe.mFluidOutputs); mDuration = aRecipe.mDuration; mSpecialValue = aRecipe.mSpecialValue; mEUt = aRecipe.mEUt; @@ -174,6 +190,29 @@ public class GT_Recipe implements Comparable { reloadOwner(); } + // only used for GT_RecipeBuilder. Should not be called otherwise + GT_Recipe(ItemStack[] mInputs, ItemStack[] mOutputs, FluidStack[] mFluidInputs, FluidStack[] mFluidOutputs, + int[] mChances, Object mSpecialItems, int mDuration, int mEUt, int mSpecialValue, boolean mEnabled, + boolean mHidden, boolean mFakeRecipe, boolean mCanBeBuffered, boolean mNeedsEmptyOutput, String[] neiDesc) { + this.mInputs = mInputs; + this.mOutputs = mOutputs; + this.mFluidInputs = mFluidInputs; + this.mFluidOutputs = mFluidOutputs; + this.mChances = mChances; + this.mSpecialItems = mSpecialItems; + this.mDuration = mDuration; + this.mEUt = mEUt; + this.mSpecialValue = mSpecialValue; + this.mEnabled = mEnabled; + this.mHidden = mHidden; + this.mFakeRecipe = mFakeRecipe; + this.mCanBeBuffered = mCanBeBuffered; + this.mNeedsEmptyOutput = mNeedsEmptyOutput; + this.neiDesc = neiDesc; + + reloadOwner(); + } + public GT_Recipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { if (aInputs == null) aInputs = new ItemStack[0]; @@ -556,7 +595,11 @@ public class GT_Recipe implements Comparable { } public GT_Recipe copy() { - return new GT_Recipe(this); + return new GT_Recipe(this, false); + } + + public GT_Recipe copyShallow() { + return new GT_Recipe(this, true); } public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, FluidStack[] aFluidInputs, @@ -768,6 +811,7 @@ public class GT_Recipe implements Comparable { final List excludedClasses = Arrays.asList( "java.lang.Thread", "gregtech.api.util.GT_Recipe", + "gregtech.api.util.GT_RecipeBuilder", "gregtech.api.util.GT_Recipe$GT_Recipe_Map", "gregtech.common.GT_RecipeAdder"); if (GT_Mod.gregtechproxy.mNEIRecipeOwnerStackTrace) { @@ -800,6 +844,37 @@ public class GT_Recipe implements Comparable { } } + public GT_Recipe setInputs(ItemStack... aInputs) { + // TODO determine if we need this without trailing nulls call + this.mInputs = ArrayExt.withoutTrailingNulls(aInputs, ItemStack[]::new); + return this; + } + + public GT_Recipe setOutputs(ItemStack... aOutputs) { + this.mOutputs = ArrayExt.withoutTrailingNulls(aOutputs, ItemStack[]::new); + return this; + } + + public GT_Recipe setFluidInputs(FluidStack... aInputs) { + this.mFluidInputs = ArrayExt.withoutTrailingNulls(aInputs, FluidStack[]::new); + return this; + } + + public GT_Recipe setFluidOutputs(FluidStack... aOutputs) { + this.mFluidOutputs = ArrayExt.withoutTrailingNulls(aOutputs, FluidStack[]::new); + return this; + } + + public GT_Recipe setDuration(int aDuration) { + this.mDuration = aDuration; + return this; + } + + public GT_Recipe setEUt(int aEUt) { + this.mEUt = aEUt; + return this; + } + public static class GT_Recipe_AssemblyLine { public static final ArrayList sAssemblylineRecipes = new ArrayList(); @@ -992,7 +1067,7 @@ public class GT_Recipe implements Comparable { } @SuppressWarnings("StaticInitializerReferencesSubClass") - public static class GT_Recipe_Map { + public static class GT_Recipe_Map implements IGT_RecipeMap { /** * Contains all Recipe Maps @@ -1020,6 +1095,7 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CRUSHED_ORE) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_DUST) + .setRecipeConfigFile("orewasher", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_BATH, ProgressBar.Direction.CIRCULAR_CW); public static final GT_Recipe_Map sThermalCentrifugeRecipes = new GT_Recipe_Map( new HashSet<>(1000), @@ -1038,6 +1114,7 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CRUSHED_ORE) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_DUST) + .setRecipeConfigFile("thermalcentrifuge", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sCompressorRecipes = new GT_Recipe_Map( new HashSet<>(750), @@ -1055,6 +1132,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_COMPRESSOR) + .setRecipeConfigFile("compressor", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_COMPRESS, ProgressBar.Direction.RIGHT) .setSlotOverlaySteam(false, GT_UITextures.OVERLAY_SLOT_COMPRESSOR_STEAM) .setProgressBarSteam(GT_UITextures.PROGRESSBAR_COMPRESS_STEAM); @@ -1074,6 +1152,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CENTRIFUGE) + .setRecipeConfigFile("extractor", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT, ProgressBar.Direction.RIGHT) .setSlotOverlaySteam(false, GT_UITextures.OVERLAY_SLOT_CENTRIFUGE_STEAM) .setProgressBarSteam(GT_UITextures.PROGRESSBAR_EXTRACT_STEAM); @@ -1257,7 +1336,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, true, true, GT_UITextures.OVERLAY_SLOT_DATA_ORB) - .setUsualFluidInputCount(4); + .setUsualFluidInputCount(4).setDisableOptimize(true); public static final GT_Recipe_Map sPlasmaArcFurnaceRecipes = new GT_Recipe_Map( new HashSet<>(20000), "gt.recipe.plasmaarcfurnace", @@ -1273,7 +1352,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); + true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) + .setRecipeConfigFile("arcfurnace", FIRST_ITEM_INPUT); public static final GT_Recipe_Map sArcFurnaceRecipes = new GT_Recipe_Map( new HashSet<>(20000), "gt.recipe.arcfurnace", @@ -1289,7 +1369,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); + true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) + .setRecipeConfigFile("arcfurnace", FIRST_ITEM_INPUT); public static final GT_Recipe_Map sPrinterRecipes = new GT_Recipe_Map_Printer( new HashSet<>(5), "gt.recipe.printer", @@ -1308,6 +1389,7 @@ public class GT_Recipe implements Comparable { true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_PAGE_BLANK) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_PAGE_PRINTED) .setSlotOverlay(false, false, true, true, GT_UITextures.OVERLAY_SLOT_DATA_STICK) + .setRecipeConfigFile("printer", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sSifterRecipes = new GT_Recipe_Map( new HashSet<>(105), @@ -1324,7 +1406,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN); + true).setProgressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN) + .setRecipeConfigFile("sifter", FIRST_ITEM_INPUT); public static final GT_Recipe_Map sPressRecipes = new GT_Recipe_Map_FormingPress( new HashSet<>(300), "gt.recipe.press", @@ -1343,6 +1426,7 @@ public class GT_Recipe implements Comparable { true).setSlotOverlay(false, false, true, GT_UITextures.OVERLAY_SLOT_PRESS_1) .setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_PRESS_2) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_PRESS_3) + .setRecipeConfigFile("press", FIRST_ITEM_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_COMPRESS, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sLaserEngraverRecipes = new GT_Recipe_Map( new HashSet<>(810), @@ -1361,7 +1445,8 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_LENS) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) - .setUsualFluidInputCount(2).setUsualFluidOutputCount(2); + .setRecipeConfigFile("laserengraving", FIRST_ITEM_OUTPUT).setUsualFluidInputCount(2) + .setUsualFluidOutputCount(2); public static final GT_Recipe_Map sMixerRecipes = new GT_Recipe_Map( new HashSet<>(900), "gt.recipe.mixer", @@ -1379,6 +1464,7 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_DUST) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_DUST) + .setRecipeConfigFile("mixer", FIRST_ITEM_OR_FLUID_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_MIXER, ProgressBar.Direction.CIRCULAR_CW); public static final GT_Recipe_Map sAutoclaveRecipes = new GT_Recipe_Map( new HashSet<>(300), @@ -1398,6 +1484,7 @@ public class GT_Recipe implements Comparable { true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_DUST) .setSlotOverlay(false, true, true, GT_UITextures.OVERLAY_SLOT_GEM) .setSlotOverlay(false, true, false, GT_UITextures.OVERLAY_SLOT_DUST) + .setRecipeConfigFile("autoclave", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sElectroMagneticSeparatorRecipes = new GT_Recipe_Map( new HashSet<>(50), @@ -1416,6 +1503,7 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CRUSHED_ORE) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_DUST) + .setRecipeConfigFile("electromagneticseparator", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_MAGNET, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sPolarizerRecipes = new GT_Recipe_Map( new HashSet<>(300), @@ -1432,7 +1520,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_MAGNET, ProgressBar.Direction.RIGHT); + true).setProgressBar(GT_UITextures.PROGRESSBAR_MAGNET, ProgressBar.Direction.RIGHT) + .setRecipeConfigFile("polarizer", FIRST_ITEM_INPUT); public static final GT_Recipe_Map sMaceratorRecipes = new GT_Recipe_Map_Macerator( new HashSet<>(16600), "gt.recipe.macerator", @@ -1451,6 +1540,7 @@ public class GT_Recipe implements Comparable { true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CRUSHED_ORE) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_DUST) .setProgressBar(GT_UITextures.PROGRESSBAR_MACERATE, ProgressBar.Direction.RIGHT) + .setRecipeConfigFile("pulveriser", FIRST_ITEM_INPUT) .setSlotOverlaySteam(false, GT_UITextures.OVERLAY_SLOT_CRUSHED_ORE_STEAM) .setSlotOverlaySteam(true, GT_UITextures.OVERLAY_SLOT_DUST_STEAM) .setProgressBarSteam(GT_UITextures.PROGRESSBAR_MACERATE_STEAM); @@ -1469,7 +1559,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_BATH, ProgressBar.Direction.CIRCULAR_CW); + true).setProgressBar(GT_UITextures.PROGRESSBAR_BATH, ProgressBar.Direction.CIRCULAR_CW) + .setRecipeConfigFile("chemicalbath", FIRST_ITEM_INPUT); public static final GT_Recipe_Map sFluidCannerRecipes = new GT_Recipe_Map_FluidCanner( new HashSet<>(2100), "gt.recipe.fluidcanner", @@ -1487,6 +1578,7 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CANISTER) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_CANISTER) + .setRecipeConfigFile("canning", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_CANNER, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sBrewingRecipes = new GT_Recipe_Map( new HashSet<>(450), @@ -1504,6 +1596,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CAULDRON) + .setRecipeConfigFile("brewing", FIRST_FLUIDSTACK_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sFluidHeaterRecipes = new GT_Recipe_Map( new HashSet<>(10), @@ -1522,6 +1615,7 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(true, false, GT_UITextures.OVERLAY_SLOT_HEATER_1) .setSlotOverlay(true, true, GT_UITextures.OVERLAY_SLOT_HEATER_2) + .setRecipeConfigFile("fluidheater", FIRST_FLUIDSTACK_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sDistilleryRecipes = new GT_Recipe_Map( new HashSet<>(400), @@ -1540,7 +1634,48 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(true, false, GT_UITextures.OVERLAY_SLOT_BEAKER_1) .setSlotOverlay(true, true, GT_UITextures.OVERLAY_SLOT_BEAKER_2) - .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT); + .setRecipeConfigFile("distillery", FIRST_FLUIDSTACK_OUTPUT).setRecipeSpecialHandler(r -> { + int aInput = r.mFluidInputs[0].amount, aOutput = r.mFluidOutputs[0].amount, + aDuration = r.mDuration; + + // reduce the batch size if fluid amount is exceeding + int tScale = (Math.max(aInput, aOutput) + 999) / 1000; + if (tScale <= 0) tScale = 1; + if (tScale > 1) { + // trying to find whether there is a better factor + for (int i = tScale; i <= 5; i++) { + if (aInput % i == 0 && aDuration % i == 0) { + tScale = i; + break; + } + } + for (int i = tScale; i <= 5; i++) { + if (aInput % i == 0 && aDuration % i == 0 && aOutput % i == 0) { + tScale = i; + break; + } + } + aInput = (aInput + tScale - 1) / tScale; + aOutput = aOutput / tScale; + if (!isArrayEmptyOrNull(r.mOutputs)) { + ItemData tData = GT_OreDictUnificator.getItemData(r.mOutputs[0]); + if (tData != null && (tData.mPrefix == OrePrefixes.dust + || OrePrefixes.dust.mFamiliarPrefixes.contains(tData.mPrefix))) { + r.mOutputs[0] = GT_OreDictUnificator.getDust( + tData.mMaterial.mMaterial, + tData.mMaterial.mAmount * r.mOutputs[0].stackSize / tScale); + } else { + if (r.mOutputs[0].stackSize / tScale == 0) r.mOutputs[0] = GT_Values.NI; + else r.mOutputs[0] = GT_Utility + .copyAmount(r.mOutputs[0].stackSize / tScale, r.mOutputs[0]); + } + } + aDuration = (aDuration + tScale - 1) / tScale; + r.mFluidInputs[0] = GT_Utility.copyAmount(aInput, r.mFluidInputs[0]); + r.mFluidOutputs[0] = GT_Utility.copyAmount(aOutput, r.mFluidOutputs[0]); + r.mDuration = aDuration; + } + }).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sFermentingRecipes = new GT_Recipe_Map( new HashSet<>(50), "gt.recipe.fermenter", @@ -1556,7 +1691,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT); + true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT) + .setRecipeConfigFile("fermenting", FIRST_FLUIDSTACK_OUTPUT); public static final GT_Recipe_Map sFluidSolidficationRecipes = new GT_Recipe_Map( new HashSet<>(35000), "gt.recipe.fluidsolidifier", @@ -1573,7 +1709,16 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_MOLD) - .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); + .setRecipeConfigFile("fluidsolidifier", FIRST_ITEM_OUTPUT).setRecipeSpecialHandler(r -> { + if (ArrayUtils.isNotEmpty(r.mFluidInputs)) { + if (Materials.PhasedGold.getMolten(1).isFluidEqual(r.mFluidInputs[0])) + r.mFluidInputs = new FluidStack[] { + Materials.VibrantAlloy.getMolten(r.mFluidInputs[0].amount) }; + else if (Materials.PhasedIron.getMolten(1).isFluidEqual(r.mFluidInputs[0])) + r.mFluidInputs = new FluidStack[] { + Materials.PulsatingIron.getMolten(r.mFluidInputs[0].amount) }; + } + }).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sFluidExtractionRecipes = new GT_Recipe_Map( new HashSet<>(15000), "gt.recipe.fluidextractor", @@ -1590,7 +1735,16 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CENTRIFUGE) - .setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT, ProgressBar.Direction.RIGHT); + .setRecipeConfigFile("fluidextractor", FIRST_ITEM_INPUT).setRecipeSpecialHandler(r -> { + if (ArrayUtils.isNotEmpty(r.mFluidInputs)) { + if (Materials.PhasedGold.getMolten(1).isFluidEqual(r.mFluidInputs[0])) + r.mFluidInputs = new FluidStack[] { + Materials.VibrantAlloy.getMolten(r.mFluidInputs[0].amount) }; + else if (Materials.PhasedIron.getMolten(1).isFluidEqual(r.mFluidInputs[0])) + r.mFluidInputs = new FluidStack[] { + Materials.PulsatingIron.getMolten(r.mFluidInputs[0].amount) }; + } + }).setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sBoxinatorRecipes = new GT_Recipe_Map( new HashSet<>(2500), "gt.recipe.packager", @@ -1607,6 +1761,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_BOX) + .setRecipeConfigFile("boxing", FIRST_ITEM_OUTPUT) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_BOXED) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sUnboxinatorRecipes = new GT_Recipe_Map_Unboxinator( @@ -1625,6 +1780,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_BOXED) + .setRecipeConfigFile("unboxing", FIRST_ITEM_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sFusionRecipes = new GT_Recipe_Map_FluidOnly( new HashSet<>(50), @@ -1643,6 +1799,7 @@ public class GT_Recipe implements Comparable { true, true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) .useComparatorForNEI(true).setUsualFluidInputCount(2) + .setRecipeConfigFile("fusion", FIRST_FLUID_OUTPUT).setDisableOptimize(true) .setNEISpecialInfoFormatter(FusionSpecialValueFormatter.INSTANCE); public static final GT_Recipe_Map sComplexFusionRecipes = new GT_Recipe_Map_ComplexFusion( new HashSet<>(50), @@ -1662,7 +1819,7 @@ public class GT_Recipe implements Comparable { true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) .setUsualFluidInputCount(16).setUsualFluidOutputCount(16) .setNEITransferRect(new Rectangle(79, 34, 18, 18)).setLogoPos(80, 61) - .setNEISpecialInfoFormatter(FusionSpecialValueFormatter.INSTANCE); + .setNEISpecialInfoFormatter(FusionSpecialValueFormatter.INSTANCE).setDisableOptimize(true); public static final GT_Recipe_Map sCentrifugeRecipes = new GT_Recipe_Map( new HashSet<>(1200), "gt.recipe.centrifuge", @@ -1679,6 +1836,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, true, GT_UITextures.OVERLAY_SLOT_CENTRIFUGE) + .setRecipeConfigFile("centrifuge", FIRST_ITEM_OR_FLUID_INPUT) .setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_CANISTER) .setSlotOverlay(true, false, GT_UITextures.OVERLAY_SLOT_CENTRIFUGE_FLUID) .setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT, ProgressBar.Direction.RIGHT); @@ -1698,9 +1856,13 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, true, GT_UITextures.OVERLAY_SLOT_CHARGER) + .setRecipeConfigFile("electrolyzer", FIRST_ITEM_OR_FLUID_INPUT) .setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_CANISTER) .setSlotOverlay(true, false, GT_UITextures.OVERLAY_SLOT_CHARGER_FLUID) .setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT, ProgressBar.Direction.RIGHT); + /** + * Use special value as coil heat level. + */ public static final GT_Recipe_Map sBlastRecipes = new GT_Recipe_Map( new HashSet<>(800), "gt.recipe.blastfurnace", @@ -1717,7 +1879,11 @@ public class GT_Recipe implements Comparable { " K", false, true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) + .setRecipeConfigFile("blastfurnace", FIRST_ITEM_INPUT) .setNEISpecialInfoFormatter(HeatingCoilSpecialValueFormatter.INSTANCE); + /** + * Use special value as coil heat level. + */ public static final GT_Recipe_Map sPlasmaForgeRecipes = new GT_Recipe_Map_LargeNEI( new HashSet<>(20), "gt.recipe.plasmaforge", @@ -1734,7 +1900,7 @@ public class GT_Recipe implements Comparable { " K", false, true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) - .setUsualFluidInputCount(9).setUsualFluidOutputCount(9) + .setUsualFluidInputCount(9).setUsualFluidOutputCount(9).setDisableOptimize(true) .setNEISpecialInfoFormatter(HeatingCoilSpecialValueFormatter.INSTANCE); public static final GT_Recipe_Map sTranscendentPlasmaMixerRecipes = new TranscendentPlasmaMixerRecipeMap( @@ -1752,7 +1918,7 @@ public class GT_Recipe implements Comparable { 0, "", false, - true); + true).setDisableOptimize(true); public static class GT_FakeSpaceProjectRecipe extends GT_Recipe { @@ -1877,7 +2043,7 @@ public class GT_Recipe implements Comparable { .setSize(bar2Width, 72)); } }.useModularUI(true).setRenderRealStackSizes(false).setUsualFluidInputCount(4).setNEIBackgroundOffset(2, 23) - .setLogoPos(152, 83); + .setLogoPos(152, 83).setDisableOptimize(true); public static class TranscendentPlasmaMixerRecipeMap extends GT_Recipe_Map { @@ -1952,7 +2118,71 @@ public class GT_Recipe implements Comparable { 1, E, false, - true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); + true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) + .setRecipeEmitter(builder -> { + Optional rr = builder.validateInputCount(1, 2).validateOutputCount(1, 2) + .validateNoInputFluid().validateNoOutputFluid().noOptimize().build(); + if (!rr.isPresent()) return Collections.emptyList(); + ItemStack aInput1 = builder.getItemInputBasic(0); + ItemStack aInput2 = builder.getItemInputBasic(1); + ItemStack aOutput1 = builder.getItemOutput(0); + ItemStack aOutput2 = builder.getItemOutput(1); + if ((aInput1 == null && aInput2 == null) || (aOutput1 == null && aOutput2 == null)) + return Collections.emptyList(); + int aCoalAmount = builder.getMetadata(ADDITIVE_AMOUNT); + if (aCoalAmount <= 0) return Collections.emptyList(); + GT_RecipeTemplate coll = asTemplate(rr.get()); + for (Materials coal : new Materials[] { Materials.Coal, Materials.Charcoal }) { + coll.derive().setInputs(aInput1, aInput2, coal.getGems(aCoalAmount)) + .setOutputs(aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)); + coll.derive().setInputs(aInput1, aInput2, coal.getDust(aCoalAmount)) + .setOutputs(aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)); + } + int aDuration = builder.duration; + if (Railcraft.isModLoaded()) { + coll.derive() + .setInputs(aInput1, aInput2, RailcraftToolItems.getCoalCoke(aCoalAmount / 2)) + .setOutputs(aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount / 2)) + .setDuration(aDuration * 2 / 3); + } + if (GTPlusPlus.isModLoaded()) { + ItemStack cactusCoke = GT_ModHandler + .getModItem(GTPlusPlus.modID, "itemCactusCoke", aCoalAmount * 2L); + ItemStack sugarCoke = GT_ModHandler + .getModItem(GTPlusPlus.modID, "itemSugarCoke", aCoalAmount * 2L); + coll.derive().setInputs(aInput1, aInput2, cactusCoke) + .setOutputs(aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount * 2)) + .setDuration(aDuration * 2 / 3); + coll.derive().setInputs(aInput1, aInput2, sugarCoke) + .setOutputs(aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount * 2)) + .setDuration(aDuration * 2 / 3); + } + if ((aInput1 == null || aInput1.stackSize <= 6) + && (aInput2 == null || aInput2.stackSize <= 6) + && (aOutput1 == null || aOutput1.stackSize <= 6) + && (aOutput2 == null || aOutput2.stackSize <= 6)) { + // we don't use GT_Utility.mul() here. It does not have the truncating we need here. + aInput1 = GT_Utility.multiplyStack(10L, aInput1); + aInput2 = GT_Utility.multiplyStack(10L, aInput2); + aOutput1 = GT_Utility.multiplyStack(10L, aOutput1); + aOutput2 = GT_Utility.multiplyStack(10L, aOutput2); + for (Materials coal : new Materials[] { Materials.Coal, Materials.Charcoal }) { + coll.derive().setInputs(aInput1, aInput2, coal.getBlocks(aCoalAmount)) + .setOutputs(aOutput1, aOutput2, Materials.DarkAsh.getDust(aCoalAmount)) + .setDuration(aDuration * 10); + coll.derive().setInputs(aInput1, aInput2, coal.getBlocks(aCoalAmount)) + .setOutputs(aOutput1, aOutput2, Materials.DarkAsh.getDust(aCoalAmount)) + .setDuration(aDuration * 10); + } + if (Railcraft.isModLoaded()) { + coll.derive() + .setInputs(aInput1, aInput2, EnumCube.COKE_BLOCK.getItem(aCoalAmount / 2)) + .setOutputs(aOutput1, aOutput2, Materials.Ash.getDust(aCoalAmount / 2)) + .setDuration(aDuration * 20 / 3); + } + } + return coll.getAll(); + }).setRecipeConfigFile("primitiveblastfurnace", FIRST_ITEM_INPUT); public static final GT_Recipe_Map sImplosionRecipes = new GT_Recipe_Map( new HashSet<>(900), "gt.recipe.implosioncompressor", @@ -1970,6 +2200,33 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, true, GT_UITextures.OVERLAY_SLOT_IMPLOSION) .setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_EXPLOSIVE) + .setRecipeConfigFile("implosion", FIRST_ITEM_INPUT).setRecipeEmitter(b -> { + switch (b.getItemInputsBasic().length) { + case 0: + return Collections.emptyList(); + case 1: + break; + default: + return b.build().map(Collections::singletonList).orElse(Collections.emptyList()); + } + Optional t = b.noOptimize().duration(20).eut(30).validateInputCount(1, 1) + .validateOutputCount(1, 1).build(); + if (!t.isPresent()) return Collections.emptyList(); + ItemStack input = b.getItemInputBasic(0); + GT_RecipeTemplate coll = asTemplate(t.get()); + int tExplosives = Math.min(b.getMetadata(ADDITIVE_AMOUNT), 64); + int tGunpowder = tExplosives << 1; // Worst + int tDynamite = Math.max(1, tExplosives >> 1); // good + int tTNT = tExplosives; // Slightly better + int tITNT = Math.max(1, tExplosives >> 2); // the best + if (tGunpowder < 65) + coll.derive().setInputs(input, ItemList.Block_Powderbarrel.get(tGunpowder)); + if (tDynamite < 17) + coll.derive().setInputs(input, GT_ModHandler.getIC2Item("dynamite", tDynamite, null)); + coll.derive().setInputs(input, new ItemStack(Blocks.tnt, tTNT)); + coll.derive().setInputs(input, GT_ModHandler.getIC2Item("industrialTnt", tITNT, null)); + return coll.getAll(); + }).setDisableOptimize(true) .setProgressBar(GT_UITextures.PROGRESSBAR_COMPRESS, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sVacuumRecipes = new GT_Recipe_Map( new HashSet<>(305), @@ -1987,7 +2244,21 @@ public class GT_Recipe implements Comparable { E, false, true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) - .setUsualFluidInputCount(2); + .setRecipeConfigFile("vacuumfreezer", FIRST_ITEM_INPUT).setRecipeEmitter(b -> { + b.noOptimize(); + FluidStack in, out; + if (isArrayOfLength(b.getItemInputsBasic(), 1) && isArrayOfLength(b.getItemOutputs(), 1) + && isArrayEmptyOrNull(b.getFluidInputs()) + && isArrayEmptyOrNull(b.getFluidOutputs()) + && (in = GT_Utility.getFluidForFilledItem(b.getItemInputBasic(0), true)) != null + && (out = GT_Utility.getFluidForFilledItem(b.getItemOutput(0), true)) != null) { + return Arrays.asList( + b.build().get(), + b.fluidInputs(in).fluidOutputs(out).noItemInputs().noItemOutputs().build() + .get()); + } + return buildOrEmpty(b); + }).setUsualFluidInputCount(2); public static final GT_Recipe_Map sChemicalRecipes = new GT_Recipe_Map( new HashSet<>(1170), "gt.recipe.chemicalreactor", @@ -2008,18 +2279,21 @@ public class GT_Recipe implements Comparable { .setSlotOverlay(true, false, GT_UITextures.OVERLAY_SLOT_MOLECULAR_3) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_VIAL_1) .setSlotOverlay(true, true, GT_UITextures.OVERLAY_SLOT_VIAL_2) + .setRecipeConfigFile("chemicalreactor", FIRST_ITEM_OR_FLUID_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sMultiblockChemicalRecipes = new GT_Recipe_Map_LargeChemicalReactor() .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT) .setUsualFluidInputCount(6).setUsualFluidOutputCount(6); public static final GT_Recipe_Map sDistillationRecipes = new GT_Recipe_Map_DistillationTower() + .setRecipeConfigFile("distillation", FIRST_FLUIDSTACK_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT) - .setUsualFluidOutputCount(11); + .setUsualFluidOutputCount(11).setDisableOptimize(true); public static final GT_Recipe_Map_OilCracker sCrackingRecipes = (GT_Recipe_Map_OilCracker) new GT_Recipe_Map_OilCracker() + .setRecipeConfigFile("cracking", FIRST_FLUIDSTACK_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, ProgressBar.Direction.RIGHT) .setUsualFluidInputCount(2); /** - * Use sCrackingRecipes instead + * @deprecated Use sCrackingRecipes instead */ @Deprecated public static final GT_Recipe_Map sCrakingRecipes = sCrackingRecipes; @@ -2039,7 +2313,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); + true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) + .setDisableOptimize(true).setRecipeConfigFile("pyrolyse", FIRST_ITEM_INPUT); public static final GT_Recipe_Map sWiremillRecipes = new GT_Recipe_Map( new HashSet<>(450), "gt.recipe.wiremill", @@ -2056,6 +2331,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_WIREMILL) + .setRecipeConfigFile("wiremill", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_WIREMILL, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sBenderRecipes = new GT_Recipe_Map( new HashSet<>(5000), @@ -2073,6 +2349,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_BENDER) + .setRecipeConfigFile("bender", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_BENDING, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sAlloySmelterRecipes = new GT_Recipe_Map( new HashSet<>(12000), @@ -2089,7 +2366,21 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_FURNACE) + true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_FURNACE).setRecipeEmitter(b -> { + if (Materials.Graphite.contains(b.getItemInputBasic(0))) return Collections.emptyList(); + if (GT_Utility.isArrayOfLength(b.getItemInputsBasic(), 1)) { + ItemStack aInput1 = b.getItemInputBasic(0); + if (((OrePrefixes.ingot.contains(aInput1)) || (OrePrefixes.dust.contains(aInput1)) + || (OrePrefixes.gem.contains(aInput1)))) + return Collections.emptyList(); + } + return buildOrEmpty( + b.validateNoInputFluid().validateNoOutputFluid().validateInputCount(1, 2) + .validateOutputCount(1, 1)); + }).setRecipeConfigFile( + "alloysmelting", + r -> GT_Config.getStackConfigName( + GT_Utility.isArrayOfLength(r.mInputs, 1) ? r.mInputs[0] : r.mOutputs[0])) .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT) .setSlotOverlaySteam(false, GT_UITextures.OVERLAY_SLOT_FURNACE_STEAM) .setProgressBarSteam(GT_UITextures.PROGRESSBAR_ARROW_STEAM); @@ -2109,6 +2400,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CIRCUIT) + .setRecipeConfigFile("assembling", FIRST_ITEM_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_ASSEMBLE, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sCircuitAssemblerRecipes = new GT_Recipe_Map_Assembler( new HashSet<>(605), @@ -2125,7 +2417,8 @@ public class GT_Recipe implements Comparable { 1, E, true, - true).setNEIUnificateOutput(!Loader.isModLoaded("neicustomdiagram")) + true).setNEIUnificateOutput(!NEICustomDiagrams.isModLoaded()) + .setRecipeConfigFile("circuitassembler", FIRST_ITEM_OUTPUT) .setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CIRCUIT) .setProgressBar(GT_UITextures.PROGRESSBAR_CIRCUIT_ASSEMBLER, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sCannerRecipes = new GT_Recipe_Map( @@ -2144,8 +2437,10 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, true, GT_UITextures.OVERLAY_SLOT_CANNER) + .setRecipeConfigFile("canning", FIRST_ITEM_INPUT) .setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_CANISTER) .setProgressBar(GT_UITextures.PROGRESSBAR_CANNER, ProgressBar.Direction.RIGHT); + @Deprecated public static final GT_Recipe_Map sCNCRecipes = new GT_Recipe_Map( new HashSet<>(100), "gt.recipe.cncmachine", @@ -2180,6 +2475,7 @@ public class GT_Recipe implements Comparable { true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_ROD_1) .setSlotOverlay(false, true, true, GT_UITextures.OVERLAY_SLOT_ROD_2) .setSlotOverlay(false, true, false, GT_UITextures.OVERLAY_SLOT_DUST) + .setRecipeConfigFile("lathe", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_LATHE, ProgressBar.Direction.RIGHT) .addSpecialTexture(5, 18, 98, 24, GT_UITextures.PROGRESSBAR_LATHE_BASE); public static final GT_Recipe_Map sCutterRecipes = new GT_Recipe_Map( @@ -2199,7 +2495,23 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_BOX) .setSlotOverlay(false, true, true, GT_UITextures.OVERLAY_SLOT_CUTTER_SLICED) - .setSlotOverlay(false, true, false, GT_UITextures.OVERLAY_SLOT_DUST) + .setSlotOverlay(false, true, false, GT_UITextures.OVERLAY_SLOT_DUST).setRecipeEmitter(b -> { + b.validateInputCount(1, 2).validateOutputCount(1, 4).validateNoOutputFluid(); + if (b.getFluidInputs() != null || !b.isValid()) + return buildOrEmpty(b.validateInputFluidCount(1, 1)); + int aDuration = b.getDuration(), aEUt = b.getEUt(); + Collection ret = new ArrayList<>(); + b.copy().fluidInputs( + Materials.Water.getFluid(GT_Utility.clamp(aDuration * aEUt / 320, 4, 1000))) + .duration(aDuration * 2).build().ifPresent(ret::add); + b.copy().fluidInputs( + GT_ModHandler.getDistilledWater(GT_Utility.clamp(aDuration * aEUt / 426, 3, 750))) + .duration(aDuration * 2).build().ifPresent(ret::add); + b.fluidInputs( + Materials.Lubricant.getFluid(GT_Utility.clamp(aDuration * aEUt / 1280, 1, 250))) + .duration(aDuration).build().ifPresent(ret::add); + return ret; + }).setRecipeConfigFile("cutting", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_CUT, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sSlicerRecipes = new GT_Recipe_Map( new HashSet<>(20), @@ -2219,6 +2531,7 @@ public class GT_Recipe implements Comparable { true).setSlotOverlay(false, false, true, GT_UITextures.OVERLAY_SLOT_SQUARE) .setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_SLICE_SHAPE) .setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_SLICER_SLICED) + .setRecipeConfigFile("slicer", FIRST_ITEM_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_SLICE, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sExtruderRecipes = new GT_Recipe_Map( new HashSet<>(13000), @@ -2236,6 +2549,7 @@ public class GT_Recipe implements Comparable { E, true, true).setSlotOverlay(false, false, false, GT_UITextures.OVERLAY_SLOT_EXTRUDER_SHAPE) + .setRecipeConfigFile("extruder", FIRST_ITEM_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_EXTRUDE, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sHammerRecipes = new GT_Recipe_Map( @@ -2255,6 +2569,7 @@ public class GT_Recipe implements Comparable { true, true).setUsualFluidInputCount(2).setUsualFluidOutputCount(2) .setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_HAMMER) + .setRecipeConfigFile("forgehammer", FIRST_ITEM_OUTPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_HAMMER, ProgressBar.Direction.DOWN) .addSpecialTexture(20, 6, 78, 42, GT_UITextures.PROGRESSBAR_HAMMER_BASE) .setSlotOverlaySteam(false, GT_UITextures.OVERLAY_SLOT_HAMMER_STEAM) @@ -2277,6 +2592,7 @@ public class GT_Recipe implements Comparable { true, true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CENTRIFUGE) .setSlotOverlay(true, true, GT_UITextures.OVERLAY_SLOT_UUA) + .setRecipeConfigFile("amplifier", FIRST_ITEM_INPUT) .setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT, ProgressBar.Direction.RIGHT); public static final GT_Recipe_Map sMassFabFakeRecipes = new GT_Recipe_Map( new HashSet<>(2), @@ -2519,7 +2835,8 @@ public class GT_Recipe implements Comparable { 0, "", true, - false); + false).setRecipeEmitter(GT_RecipeMapUtil::buildRecipeForMultiblockNoCircuit); + public static final GT_Recipe_Map sMultiblockCentrifugeRecipes = new GT_Recipe_Map( new HashSet<>(1200), "gt.recipe.largecentrifuge", @@ -2535,7 +2852,7 @@ public class GT_Recipe implements Comparable { 0, "", true, - false); + false).setRecipeEmitter(GT_RecipeMapUtil::buildRecipeForMultiblock).setDisableOptimize(true); public static final GT_Recipe_Map sMultiblockMixerRecipes = new GT_Recipe_Map( new HashSet<>(900), "gt.recipe.largemixer", @@ -2551,9 +2868,9 @@ public class GT_Recipe implements Comparable { 0, "", true, - false); + false).setRecipeEmitter(GT_RecipeMapUtil::buildRecipeForMultiblock).setDisableOptimize(true); public static final GT_Recipe_Map_LargeBoilerFakeFuels sLargeBoilerFakeFuels = (GT_Recipe_Map_LargeBoilerFakeFuels) new GT_Recipe_Map_LargeBoilerFakeFuels() - .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT); + .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW, ProgressBar.Direction.RIGHT).setDisableOptimize(true); public static final GT_Recipe_Map sNanoForge = new GT_Recipe_Map( new HashSet<>(10), @@ -2570,7 +2887,7 @@ public class GT_Recipe implements Comparable { 1, "", false, - true).useModularUI(true).setUsualFluidInputCount(3) + true).useModularUI(true).setUsualFluidInputCount(3).setDisableOptimize(true) .setSlotOverlay(false, false, true, GT_UITextures.OVERLAY_SLOT_LENS) .setProgressBar(GT_UITextures.PROGRESSBAR_ASSEMBLE, ProgressBar.Direction.RIGHT); @@ -2589,7 +2906,7 @@ public class GT_Recipe implements Comparable { 0, E, true, - true).useModularUI(true).setUsualFluidInputCount(3).setUsualFluidOutputCount(0) + true).useModularUI(true).setUsualFluidInputCount(3).setUsualFluidOutputCount(0).setDisableOptimize(true) .setProgressBar(GT_UITextures.PROGRESSBAR_ASSEMBLE, ProgressBar.Direction.RIGHT) .setNEISpecialInfoFormatter((recipeInfo, applyPrefixAndSuffix) -> { List result = new ArrayList<>(); @@ -2608,7 +2925,22 @@ public class GT_Recipe implements Comparable { return result; }); - public static final GT_Recipe_Map_IC2NuclearFake sIC2NuclearFakeRecipe = new GT_Recipe_Map_IC2NuclearFake(); + public static final GT_Recipe_Map_IC2NuclearFake sIC2NuclearFakeRecipe = (GT_Recipe_Map_IC2NuclearFake) new GT_Recipe_Map_IC2NuclearFake() + .setDisableOptimize(true); + + static { + sCentrifugeRecipes.addDownstream(sMultiblockCentrifugeRecipes.deepCopyInput()); + sMixerRecipes.addDownstream(sMultiblockMixerRecipes.deepCopyInput()); + sElectrolyzerRecipes.addDownstream(sMultiblockElectrolyzerRecipes.deepCopyInput()); + sDieselFuels.addDownstream( + IGT_RecipeMap.newRecipeMap( + b -> b.build().map(sLargeBoilerFakeFuels::addDieselRecipe).map(Collections::singletonList) + .orElse(Collections.emptyList()))); + sDenseLiquidFuels.addDownstream( + IGT_RecipeMap.newRecipeMap( + b -> b.build().map(sLargeBoilerFakeFuels::addDenseLiquidRecipe) + .map(Collections::singletonList).orElse(Collections.emptyList()))); + } /** * HashMap of Recipes based on their Items @@ -2747,6 +3079,13 @@ public class GT_Recipe implements Comparable { private int neiTextColorOverride = -1; private INEISpecialInfoFormatter neiSpecialInfoFormatter; + private boolean checkForCollision = true, allowNoInput, allowNoInputFluid, allowNoOutput, allowNoOutputFluid; + private boolean disableOptimize = false; + private Function> recipeEmitter = this::defaultBuildRecipe; + private Function specialHandler; + private String recipeConfigCategory; + private Function recipeConfigKeyConvertor; + private final List downstreams = new ArrayList<>(0); /** * Flag if a comparator should be used to search the recipe in NEI (which is defined in {@link Power}). Else @@ -2838,6 +3177,11 @@ public class GT_Recipe implements Comparable { setNEIUnificateOutput(aNEIUnificateOutput); } + public GT_Recipe_Map setDisableOptimize(boolean disableOptimize) { + this.disableOptimize = disableOptimize; + return this; + } + public GT_Recipe_Map setNEIUnificateOutput(boolean mNEIUnificateOutput) { this.mNEIUnificateOutput = mNEIUnificateOutput; return this; @@ -3015,6 +3359,112 @@ public class GT_Recipe implements Comparable { return this; } + /** + * Change how recipes are emitted by a particular recipe builder. Can emit multiple recipe per builder. + */ + public GT_Recipe_Map setRecipeEmitter( + Function> func) { + this.recipeEmitter = func; + return this; + } + + /** + * Change how recipes are emitted by a particular recipe builder. Can emit multiple recipe per builder. + * + * Unlike {@link #setRecipeEmitter(Function)}, this one does not clear the existing recipe being emitted, if any + */ + public GT_Recipe_Map combineRecipeEmitter( + Function> func) { + // move recipeEmitter to local variable, so lambda capture the function itself instead of this + Function> cur = recipeEmitter; + this.recipeEmitter = b -> Iterables.concat(cur.apply(b), func.apply(b)); + return this; + } + + /** + * Change how recipes are emitted by a particular recipe builder. Should not return null. + */ + public GT_Recipe_Map setRecipeEmitterSingle(Function func) { + return setRecipeEmitter(func.andThen(Collections::singletonList)); + } + + /** + * Change how recipes are emitted by a particular recipe builder. Effectively add a new recipe per recipe added. + * func must not return null. + * + * Unlike {@link #setRecipeEmitter(Function)}, this one does not clear the existing recipe being emitted, if any + */ + public GT_Recipe_Map combineRecipeEmitterSingle(Function func) { + return combineRecipeEmitter(func.andThen(Collections::singletonList)); + } + + private static Function withIdentityReturn(Consumer func) { + return r -> { + func.accept(r); + return r; + }; + } + + /** + * Run a custom hook on all recipes added via builder. For more complicated behavior subclass this, then + * override {@link #doAdd(GT_RecipeBuilder)} + * + * Recipes added via one of the overloads of addRecipe will NOT be affected by this function. + */ + public GT_Recipe_Map setRecipeSpecialHandler(Function func) { + this.specialHandler = func; + return this; + } + + /** + * Run a custom hook on all recipes added via builder. For more complicated behavior, create a subclass + * and override {@link #doAdd(GT_RecipeBuilder)} + * + * Recipes added via one of the overloads of addRecipe will NOT be affected by this function. + */ + public GT_Recipe_Map setRecipeSpecialHandler(Consumer func) { + return setRecipeSpecialHandler(withIdentityReturn(func)); + } + + /** + * Run a custom hook on all recipes added via builder. For more complicated behavior subclass this, then + * override {@link #doAdd(GT_RecipeBuilder)} + * + * Recipes added via one of the overloads of addRecipe will NOT be affected by this function. + * + * Unlike {@link #setRecipeSpecialHandler(Function)}, this one will not replace the existing special handler. + * The supplied function will be given the output of existing handler when a recipe is added. + */ + public GT_Recipe_Map chainRecipeSpecialHandler(Function func) { + this.specialHandler = specialHandler == null ? func : specialHandler.andThen(func); + return this; + } + + /** + * Run a custom hook on all recipes added via builder. For more complicated behavior subclass this, then + * override {@link #doAdd(GT_RecipeBuilder)} + * + * Recipes added via one of the overloads of addRecipe will NOT be affected by this function. + * + * Unlike {@link #setRecipeSpecialHandler(Function)}, this one will not replace the existing special handler. + * The supplied function will be given the output of existing handler when a recipe is added. + */ + public GT_Recipe_Map chainRecipeSpecialHandler(Consumer func) { + return chainRecipeSpecialHandler(withIdentityReturn(func)); + } + + public GT_Recipe_Map setRecipeConfigFile(String category, Function keyConvertor) { + if (StringUtils.isBlank(category) || keyConvertor == null) throw new IllegalArgumentException(); + this.recipeConfigCategory = category; + this.recipeConfigKeyConvertor = keyConvertor; + return this; + } + + @Override + public void addDownstream(IGT_RecipeMap downstream) { + this.downstreams.add(downstream); + } + public GT_Recipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { @@ -3178,6 +3628,55 @@ public class GT_Recipe implements Comparable { return addRecipe(aRecipe, aCheckForCollisions, true, hidden); } + @Override + public Collection doAdd(GT_RecipeBuilder builder) { + Iterable recipes = recipeEmitter.apply(builder); + Collection ret = new ArrayList<>(); + for (GT_Recipe r : recipes) { + if (recipeConfigCategory != null) { + String configKey = recipeConfigKeyConvertor.apply(r); + if (configKey != null && (r.mDuration = GregTech_API.sRecipeFile + .get(recipeConfigCategory, configKey, r.mDuration)) <= 0) { + continue; + } + } + if (r.mFluidInputs.length < mMinimalInputFluids && r.mInputs.length < mMinimalInputItems) return null; + if (r.mSpecialValue == 0) { + // new style cleanroom/lowgrav handling + int specialValue = 0; + if (builder.getMetadata(GT_RecipeConstants.LOW_GRAVITY, false)) specialValue -= 100; + if (builder.getMetadata(GT_RecipeConstants.CLEANROOM, false)) specialValue -= 200; + for (GT_RecipeBuilder.MetadataIdentifier ident : SPECIAL_VALUE_ALIASES) { + Integer metadata = builder.getMetadata(ident, null); + if (metadata != null) { + specialValue = metadata; + break; + } + } + r.mSpecialValue = specialValue; + } + if (specialHandler != null) r = specialHandler.apply(r); + if (r == null) continue; + if (checkForCollision + && findRecipe(null, false, true, Long.MAX_VALUE, r.mFluidInputs, r.mInputs) != null) + continue; + ret.add(add(r)); + } + if (!ret.isEmpty()) { + for (IGT_RecipeMap downstream : downstreams) { + downstream.doAdd(builder); + } + } + return ret; + } + + public final Iterable defaultBuildRecipe(GT_RecipeBuilder builder) { + // TODO sensible validation + if (!downstreams.isEmpty() && disableOptimize && !builder.optimize) + return buildOrEmpty(builder.copy().noOptimize()); + return buildOrEmpty(builder); + } + public GT_Recipe add(GT_Recipe aRecipe) { mRecipeList.add(aRecipe); for (FluidStack aFluid : aRecipe.mFluidInputs) { @@ -4095,6 +4594,7 @@ public class GT_Recipe implements Comparable { aNEISpecialValuePost, aShowVoltageAmperageInNEI, aNEIAllowed); + setDisableOptimize(true); } public GT_Recipe addFuel(ItemStack aInput, ItemStack aOutput, int aFuelValueInEU) { @@ -5371,7 +5871,7 @@ public class GT_Recipe implements Comparable { } private GT_Recipe addRecipe(GT_Recipe recipe, double baseBurnTime, boolean isAllowedFuel) { - recipe = new GT_Recipe(recipe); + recipe = new GT_Recipe(recipe, true); // Some recipes will have a burn time like 15.9999999 and % always rounds down double floatErrorCorrection = 0.0001; @@ -5404,7 +5904,7 @@ public class GT_Recipe implements Comparable { } private GT_Recipe addRecipe(GT_Recipe recipe, double baseBurnTime) { - recipe = new GT_Recipe(recipe); + recipe = new GT_Recipe(recipe, true); // Some recipes will have a burn time like 15.9999999 and % always rounds down double floatErrorCorrection = 0.0001; @@ -5696,6 +6196,29 @@ public class GT_Recipe implements Comparable { ItemStack[][] mOreDictAlt; + GT_Recipe_WithAlt(ItemStack[] mInputs, ItemStack[] mOutputs, FluidStack[] mFluidInputs, + FluidStack[] mFluidOutputs, int[] mChances, Object mSpecialItems, int mDuration, int mEUt, + int mSpecialValue, boolean mEnabled, boolean mHidden, boolean mFakeRecipe, boolean mCanBeBuffered, + boolean mNeedsEmptyOutput, String[] neiDesc, ItemStack[][] mOreDictAlt) { + super( + mInputs, + mOutputs, + mFluidInputs, + mFluidOutputs, + mChances, + mSpecialItems, + mDuration, + mEUt, + mSpecialValue, + mEnabled, + mHidden, + mFakeRecipe, + mCanBeBuffered, + mNeedsEmptyOutput, + neiDesc); + this.mOreDictAlt = mOreDictAlt; + } + public GT_Recipe_WithAlt(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue, ItemStack[][] aAlt) { diff --git a/src/main/java/gregtech/api/util/GT_RecipeBuilder.java b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java new file mode 100644 index 0000000000..199d79af84 --- /dev/null +++ b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java @@ -0,0 +1,713 @@ +package gregtech.api.util; + +import java.util.*; +import java.util.function.Function; + +import javax.annotation.Nonnull; + +import net.minecraft.item.ItemStack; +import net.minecraft.launchwrapper.Launch; +import net.minecraftforge.fluids.FluidStack; + +import gregtech.api.interfaces.IGT_RecipeMap; +import gregtech.api.objects.GT_FluidStack; +import gregtech.api.util.extensions.ArrayExt; + +public class GT_RecipeBuilder { + + private static final boolean DEBUG_MODE; + + public static final int WILDCARD = 32767; + + // time units + public static final int HOURS = 20 * 60 * 60; + public static final int MINUTES = 20 * 60; + public static final int SECONDS = 20; + public static final int TICKS = 1; + + // fluid units + public static final int INGOTS = 144; + public static final int HALF_INGOT = 72; + public static final int QUARTER_INGOT = 36; + public static final int EIGHTH_INGOT = 18; + public static final int NUGGETS = 16; + public static final int BUCKETS = 1000; + + static { + boolean tmp; + try { + tmp = Boolean.parseBoolean(System.getProperty("gt.recipebuilder.debug")); + } catch (IllegalArgumentException | NullPointerException e) { + // turn on debug by default in dev mode + // this will be overridden if above property is present and set to false + tmp = (Boolean) Launch.blackboard.get("fml.deobfuscatedEnvironment"); + } + DEBUG_MODE = tmp; + } + + protected ItemStack[] inputsBasic; + protected Object[] inputsOreDict; + protected ItemStack[] outputs; + protected ItemStack[][] alts; + protected FluidStack[] fluidInputs; + protected FluidStack[] fluidOutputs; + protected int[] chances; + protected Object special; + protected int duration = -1; + protected int eut = -1; + protected int specialValue; + protected boolean enabled = true; + protected boolean hidden = false; + protected boolean fakeRecipe = false; + protected boolean mCanBeBuffered = true; + protected boolean mNeedsEmptyOutput = false; + protected String[] neiDesc; + protected boolean optimize = true; + protected Map, Object> additionalData = new HashMap<>(); + protected boolean valid = true; + + GT_RecipeBuilder() {} + + private GT_RecipeBuilder(ItemStack[] inputsBasic, Object[] inputsOreDict, ItemStack[] outputs, ItemStack[][] alts, + FluidStack[] fluidInputs, FluidStack[] fluidOutputs, int[] chances, Object special, int duration, int eut, + int specialValue, boolean enabled, boolean hidden, boolean fakeRecipe, boolean mCanBeBuffered, + boolean mNeedsEmptyOutput, String[] neiDesc, boolean optimize, + Map, Object> additionalData) { + this.inputsBasic = inputsBasic; + this.inputsOreDict = inputsOreDict; + this.outputs = outputs; + this.alts = alts; + this.fluidInputs = fluidInputs; + this.fluidOutputs = fluidOutputs; + this.chances = chances; + this.special = special; + this.duration = duration; + this.eut = eut; + this.specialValue = specialValue; + this.enabled = enabled; + this.hidden = hidden; + this.fakeRecipe = fakeRecipe; + this.mCanBeBuffered = mCanBeBuffered; + this.mNeedsEmptyOutput = mNeedsEmptyOutput; + this.neiDesc = neiDesc; + this.optimize = optimize; + this.additionalData.putAll(additionalData); + } + + private static FluidStack[] fix(FluidStack[] fluidInputs) { + return Arrays.stream(fluidInputs).filter(Objects::nonNull).map(GT_FluidStack::new).toArray(FluidStack[]::new); + } + + private static ItemStack[] fix(ItemStack[] inputs) { + return GT_OreDictUnificator.setStackArray(true, ArrayExt.withoutTrailingNulls(inputs, ItemStack[]::new)); + } + + public static GT_RecipeBuilder builder() { + return new GT_RecipeBuilder(); + } + + /** + * Non-OreDicted item inputs. Assumes input is unified. + */ + public GT_RecipeBuilder itemInputsUnified(ItemStack... inputs) { + inputsBasic = ArrayExt.withoutTrailingNulls(inputs, ItemStack[]::new); + inputsOreDict = null; + alts = null; + return this; + } + + /** + * Non-OreDicted item inputs. Assumes input is not unified. + */ + public GT_RecipeBuilder itemInputs(ItemStack... inputs) { + inputsBasic = fix(inputs); + inputsOreDict = null; + alts = null; + return this; + } + + /** + * OreDicted item inputs. Currently only used for assline recipes adder. + */ + public GT_RecipeBuilder itemInputs(Object... inputs) { + inputsOreDict = inputs; + alts = new ItemStack[inputs.length][]; + for (int i = 0, inputsLength = inputs.length; i < inputsLength; i++) { + Object input = inputs[i]; + if (input instanceof ItemStack) { + alts[i] = new ItemStack[] { (ItemStack) input }; + } else if (input instanceof ItemStack[]) { + alts[i] = ((ItemStack[]) input).clone(); + } else if (input instanceof Object[]) { + Object[] arr = (Object[]) input; + if (arr.length != 2) continue; + List ores = GT_OreDictUnificator.getOres(arr[0]); + if (ores.isEmpty()) continue; + int size = ((Number) arr[1]).intValue(); + alts[i] = ores.stream().map(s -> GT_Utility.copyAmount(size, s)).filter(GT_Utility::isStackValid) + .toArray(ItemStack[]::new); + } else if (input == null) { + if (DEBUG_MODE) { + throw new NullPointerException(); + } else { + GT_Log.err.printf( + "null detected in recipe oredict input. ignoring. %s%n", + new NullPointerException()); + alts[i] = new ItemStack[0]; + } + } else { + throw new IllegalArgumentException("index " + i + ", unexpected type: " + input.getClass()); + } + } + inputsBasic = Arrays.stream(alts).map(ss -> ss.length > 0 ? ss[0] : null).toArray(ItemStack[]::new); + // optimize cannot handle recipes with alts + return noOptimize(); + } + + /** + * Same as itemInputs(), but make it clear that no item inputs is intended, instead of a mistake. + */ + public GT_RecipeBuilder noItemInputs() { + // this does not call into one of the itemInputs, to make it clear what is the expected behavior here. + inputsBasic = new ItemStack[0]; + inputsOreDict = null; + alts = null; + return this; + } + + public GT_RecipeBuilder itemOutputs(ItemStack... outputs) { + this.outputs = outputs; + if (chances != null && chances.length != outputs.length) { + throw new IllegalArgumentException("Output chances array and items array length differs"); + } + return this; + } + + public GT_RecipeBuilder noItemOutputs() { + return itemOutputs(); + } + + public GT_RecipeBuilder fluidInputs(FluidStack... fluidInputs) { + this.fluidInputs = fix(fluidInputs); + return this; + } + + public GT_RecipeBuilder noFluidInputs() { + return fluidInputs == null ? fluidInputs() : this; + } + + public GT_RecipeBuilder fluidOutputs(FluidStack... fluidOutputs) { + this.fluidOutputs = fix(fluidOutputs); + return this; + } + + public GT_RecipeBuilder noFluidOutputs() { + return fluidOutputs(); + } + + public GT_RecipeBuilder noOutputs() { + return noFluidOutputs().noItemOutputs(); + } + + public GT_RecipeBuilder outputChances(int... chances) { + if (outputs != null && chances.length != outputs.length) { + throw new IllegalArgumentException("Output chances array and items array length differs"); + } + this.chances = chances; + return this; + } + + public GT_RecipeBuilder special(Object special) { + this.special = special; + return this; + } + + /** + * Really just {@link #special(Object)}, but with a different signature to make it less confusing. WARNING: only for + * legacy recipe map. do not abuse. + */ + public GT_RecipeBuilder specialItem(ItemStack specialItem) { + return special(specialItem); + } + + public GT_RecipeBuilder duration(int duration) { + this.duration = duration; + return this; + } + + public GT_RecipeBuilder eut(int eut) { + this.eut = eut; + return this; + } + + public GT_RecipeBuilder eut(long eut) { + this.eut = (int) eut; + return this; + } + + /** + * prefer to use metadata over this. should only use when the target recipe map does not yet support metadata + * system, or it's to bridge legacy code and modern code. + */ + public GT_RecipeBuilder specialValue(int specialValue) { + this.specialValue = specialValue; + return this; + } + + // I don't expect anyone to actually call this... + public GT_RecipeBuilder disabled() { + this.enabled = false; + return this; + } + + public GT_RecipeBuilder hidden() { + this.hidden = true; + return this; + } + + public GT_RecipeBuilder fake() { + this.fakeRecipe = true; + return this; + } + + public GT_RecipeBuilder noBuffer() { + this.mCanBeBuffered = false; + return this; + } + + public GT_RecipeBuilder needsEmptyOutput() { + this.mNeedsEmptyOutput = true; + return this; + } + + public GT_RecipeBuilder setNEIDesc(String... neiDesc) { + this.neiDesc = neiDesc; + return this; + } + + /** + * Prevent the resulting recipe from optimizing recipe, which is a process that reduce recipe batch size. + */ + public GT_RecipeBuilder noOptimize() { + this.optimize = false; + return this; + } + + public GT_RecipeBuilder metadata(MetadataIdentifier key, T value) { + additionalData.put(key, value); + return this; + } + + public T getMetadata(MetadataIdentifier key) { + return key.cast(additionalData.get(key)); + } + + public T getMetadata(MetadataIdentifier key, T defaultValue) { + return key.cast(additionalData.getOrDefault(key, defaultValue)); + } + + public GT_RecipeBuilder requiresCleanRoom() { + return metadata(GT_RecipeConstants.CLEANROOM, true); + } + + public GT_RecipeBuilder requiresLowGravity() { + return metadata(GT_RecipeConstants.LOW_GRAVITY, true); + } + + private static T[] copy(T[] arr) { + return arr == null ? null : arr.clone(); + } + + private static int[] copy(int[] arr) { + return arr == null ? null : arr.clone(); + } + + /** + * produce a deep copy of current values. anything unset will remain unset. IMPORTANT: If metadata contains mutable + * value, they will not be cloned! + * + * checkout docs/RecipeBuilder.md for more info on whether to copy or not. + */ + public GT_RecipeBuilder copy() { + return new GT_RecipeBuilder( + copy(inputsBasic), + copy(inputsOreDict), + copy(outputs), + copy(alts), + copy(fluidInputs), + copy(fluidOutputs), + copy(chances), + special, + duration, + eut, + specialValue, + enabled, + hidden, + fakeRecipe, + mCanBeBuffered, + mNeedsEmptyOutput, + neiDesc, + optimize, + additionalData); + } + + /** + * produce a deep copy of current values. anything unset will remain unset. discard all existing metadata + */ + public GT_RecipeBuilder copyNoMetadata() { + return new GT_RecipeBuilder( + copy(inputsBasic), + copy(inputsOreDict), + copy(outputs), + copy(alts), + copy(fluidInputs), + copy(fluidOutputs), + copy(chances), + special, + duration, + eut, + specialValue, + enabled, + hidden, + fakeRecipe, + mCanBeBuffered, + mNeedsEmptyOutput, + neiDesc, + optimize, + Collections.emptyMap()); + } + + public ItemStack getItemInputBasic(int index) { + return index < inputsBasic.length ? inputsBasic[index] : null; + } + + public Object getItemInputOreDict(int index) { + return index < inputsOreDict.length ? inputsOreDict[index] : null; + } + + public ItemStack getItemOutput(int index) { + return index < outputs.length ? outputs[index] : null; + } + + public FluidStack getFluidInput(int index) { + return index < fluidInputs.length ? fluidInputs[index] : null; + } + + public FluidStack getFluidOutput(int index) { + return index < fluidOutputs.length ? fluidOutputs[index] : null; + } + + public ItemStack[] getItemInputsBasic() { + return inputsBasic; + } + + public Object[] getItemInputsOreDict() { + return inputsOreDict; + } + + public ItemStack[] getItemOutputs() { + return outputs; + } + + public FluidStack[] getFluidInputs() { + return fluidInputs; + } + + public FluidStack[] getFluidOutputs() { + return fluidOutputs; + } + + public int getDuration() { + return duration; + } + + public int getEUt() { + return eut; + } + + public GT_RecipeBuilder clearInvalid() { + valid = true; + return this; + } + + public GT_RecipeBuilder invalidate() { + valid = false; + return this; + } + + public boolean isValid() { + return valid; + } + + private static boolean isArrayValid(@Nonnull Object[] arr, int min, int max) { + int count = 0; + for (Object o : arr) { + if (o != null) count += 1; + } + return min <= count && max >= count; + } + + /** + * Validate if input item match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateNoInput() { + return GT_Utility.isArrayEmptyOrNull(inputsBasic) ? noItemInputs() : invalidate(); + } + + /** + * Validate if input fluid match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateNoInputFluid() { + return GT_Utility.isArrayEmptyOrNull(fluidInputs) ? noItemInputs() : invalidate(); + } + + /** + * Validate if output item match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateNoOutput() { + return GT_Utility.isArrayEmptyOrNull(outputs) ? noItemInputs() : invalidate(); + } + + /** + * Validate if output fluid match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateNoOutputFluid() { + return GT_Utility.isArrayEmptyOrNull(fluidOutputs) ? noItemInputs() : invalidate(); + } + + /** + * Validate if input item match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateInputCount(int min, int max) { + if (inputsBasic == null) return min < 0 ? noItemInputs() : invalidate(); + return isArrayValid(inputsBasic, min, max) ? this : invalidate(); + } + + /** + * Validate if input fluid match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateInputFluidCount(int min, int max) { + if (fluidInputs == null) return min < 0 ? noItemInputs() : invalidate(); + return isArrayValid(fluidInputs, min, max) ? this : invalidate(); + } + + /** + * Validate if output item match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateOutputCount(int min, int max) { + if (outputs == null) return min < 0 ? noItemInputs() : invalidate(); + return isArrayValid(outputs, min, max) ? this : invalidate(); + } + + /** + * Validate if output fluid match requirement. Return as invalidated if fails prereq. Specify -1 as min to allow + * unset. Both bound inclusive. Only supposed to be called by IGT_RecipeMap and not client code. + */ + public GT_RecipeBuilder validateOutputFluidCount(int min, int max) { + if (fluidOutputs == null) return min < 0 ? noItemInputs() : invalidate(); + return isArrayValid(fluidOutputs, min, max) ? this : invalidate(); + } + + public GT_RecipeBuilder validateAnyInput() { + if (fluidInputs != null && isArrayValid(fluidInputs, 1, Integer.MAX_VALUE)) { + return inputsBasic == null ? noItemInputs() : this; + } + if (inputsBasic != null && isArrayValid(inputsBasic, 1, Integer.MAX_VALUE)) { + return fluidInputs == null ? noFluidInputs() : this; + } + return invalidate(); + } + + public GT_RecipeBuilder validateAnyOutput() { + if (fluidOutputs != null && isArrayValid(fluidOutputs, 1, Integer.MAX_VALUE)) { + return outputs == null ? noItemOutputs() : this; + } + if (outputs != null && isArrayValid(outputs, 1, Integer.MAX_VALUE)) { + return fluidOutputs == null ? noFluidOutputs() : this; + } + return invalidate(); + } + + public Optional build() { + if (!valid) return Optional.empty(); + preBuildChecks(); + optimize(); + return Optional.of( + decorate( + new GT_Recipe( + inputsBasic, + outputs, + fluidInputs, + fluidOutputs, + chances, + special, + duration, + eut, + specialValue, + enabled, + hidden, + fakeRecipe, + mCanBeBuffered, + mNeedsEmptyOutput, + neiDesc))); + } + + public GT_RecipeBuilder forceOreDictInput() { + if (inputsOreDict != null || inputsBasic == null) return this; + return itemInputs((Object[]) inputsBasic); + } + + public Optional buildWithAlt() { + if (inputsOreDict == null) { + throw new UnsupportedOperationException(); + } + if (!valid) return Optional.empty(); + preBuildChecks(); + // no optimize. + return Optional.of( + decorate( + new GT_Recipe.GT_Recipe_WithAlt( + inputsBasic, + outputs, + fluidInputs, + fluidOutputs, + chances, + special, + duration, + eut, + specialValue, + enabled, + hidden, + fakeRecipe, + mCanBeBuffered, + mNeedsEmptyOutput, + neiDesc, + alts))); + } + + private void preBuildChecks() { + if (inputsBasic == null) throw new IllegalStateException("no itemInputs"); + if (outputs == null) throw new IllegalStateException("no itemOutputs"); + if (fluidInputs == null) throw new IllegalStateException("no fluidInputs"); + if (fluidOutputs == null) throw new IllegalStateException("no fluidOutputs"); + if (duration == -1) throw new IllegalStateException("no duration"); + if (eut == -1) throw new IllegalStateException("no eut"); + } + + private void optimize() { + if (optimize) { + ArrayList l = new ArrayList<>(); + l.addAll(Arrays.asList(inputsBasic)); + l.addAll(Arrays.asList(outputs)); + for (int i = 0; i < l.size(); i++) if (l.get(i) == null) l.remove(i--); + + for (byte i = (byte) Math.min(64, duration / 16); i > 1; i--) if (duration / i >= 16) { + boolean temp = true; + for (ItemStack stack : l) if (stack.stackSize % i != 0) { + temp = false; + break; + } + if (temp) for (FluidStack fluidInput : fluidInputs) if (fluidInput.amount % i != 0) { + temp = false; + break; + } + if (temp) for (FluidStack fluidOutput : fluidOutputs) if (fluidOutput.amount % i != 0) { + temp = false; + break; + } + if (temp) { + for (ItemStack itemStack : l) itemStack.stackSize /= i; + for (FluidStack fluidInput : fluidInputs) fluidInput.amount /= i; + for (FluidStack fluidOutput : fluidOutputs) fluidOutput.amount /= i; + duration /= i; + } + } + optimize = false; + } + } + + private T decorate(T r) { + r.mHidden = hidden; + r.mCanBeBuffered = mCanBeBuffered; + r.mNeedsEmptyOutput = mNeedsEmptyOutput; + r.mFakeRecipe = fakeRecipe; + r.mEnabled = enabled; + if (neiDesc != null) r.setNeiDesc(neiDesc); + return r; + } + + public Collection addTo(IGT_RecipeMap recipeMap) { + return recipeMap.doAdd(this); + } + + public GT_RecipeBuilder reset() { + additionalData.clear(); + alts = null; + chances = null; + duration = -1; + enabled = true; + eut = -1; + fakeRecipe = false; + fluidInputs = null; + fluidOutputs = null; + hidden = false; + inputsBasic = null; + inputsOreDict = null; + mCanBeBuffered = true; + mNeedsEmptyOutput = false; + neiDesc = null; + optimize = true; + outputs = null; + special = null; + specialValue = 0; + valid = true; + return this; + } + + public final static class MetadataIdentifier { + + private static final Map, MetadataIdentifier> allIdentifiers = Collections + .synchronizedMap(new HashMap<>()); + private final Class clazz; + private final String identifier; + + private MetadataIdentifier(Class clazz, String identifier) { + this.clazz = clazz; + this.identifier = identifier; + } + + public static MetadataIdentifier create(Class clazz, String identifier) { + MetadataIdentifier key = new MetadataIdentifier<>(clazz, identifier); + return (MetadataIdentifier) allIdentifiers.computeIfAbsent(key, Function.identity()); + } + + public T cast(Object o) { + return clazz.cast(o); + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + MetadataIdentifier that = (MetadataIdentifier) o; + + if (!clazz.equals(that.clazz)) return false; + return identifier.equals(that.identifier); + } + + @Override + public int hashCode() { + int result = clazz.hashCode(); + result = 31 * result + identifier.hashCode(); + return result; + } + } +} diff --git a/src/main/java/gregtech/api/util/GT_RecipeConstants.java b/src/main/java/gregtech/api/util/GT_RecipeConstants.java new file mode 100644 index 0000000000..5ccb84da9a --- /dev/null +++ b/src/main/java/gregtech/api/util/GT_RecipeConstants.java @@ -0,0 +1,258 @@ +package gregtech.api.util; + +import java.util.*; + +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; + +import cpw.mods.fml.common.registry.GameRegistry; +import gregtech.api.GregTech_API; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.interfaces.IGT_RecipeMap; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; + +// this class is intended to be import-static-ed on every recipe script +// so take care to not put unrelated stuff here! +public class GT_RecipeConstants { + + /** + * Set to true to signal the recipe require low gravity. do nothing if recipe set specialValue explicitly. Can + * coexist with CLEANROOM just fine + */ + public static final GT_RecipeBuilder.MetadataIdentifier LOW_GRAVITY = GT_RecipeBuilder.MetadataIdentifier + .create(Boolean.class, "low_gravity"); + /** + * Set to true to signal the recipe require cleanroom. do nothing if recipe set specialValue explicitly. Can coexist + * with LOW_GRAVITY just fine + */ + public static final GT_RecipeBuilder.MetadataIdentifier CLEANROOM = GT_RecipeBuilder.MetadataIdentifier + .create(Boolean.class, "cleanroom"); + /** + * Common additive to use in recipe, e.g. for PBF, this is coal amount. + */ + public static final GT_RecipeBuilder.MetadataIdentifier ADDITIVE_AMOUNT = GT_RecipeBuilder.MetadataIdentifier + .create(Integer.class, "additives"); + /** + * Used for fusion reactor. Denotes ignition threshold. + */ + public static final GT_RecipeBuilder.MetadataIdentifier FUSION_THRESHOLD = GT_RecipeBuilder.MetadataIdentifier + .create(Integer.class, "fusion_threshold"); + /** + * Research time in a scanner used in ticks. + */ + public static final GT_RecipeBuilder.MetadataIdentifier RESEARCH_TIME = GT_RecipeBuilder.MetadataIdentifier + .create(Integer.class, "research_time"); + /** + * Fuel type. TODO should we use enum directly? + */ + public static final GT_RecipeBuilder.MetadataIdentifier FUEL_TYPE = GT_RecipeBuilder.MetadataIdentifier + .create(Integer.class, "fuel_type"); + /** + * Fuel value. + */ + public static final GT_RecipeBuilder.MetadataIdentifier FUEL_VALUE = GT_RecipeBuilder.MetadataIdentifier + .create(Integer.class, "fuel_value"); + /** + * Fuel value. + */ + public static final GT_RecipeBuilder.MetadataIdentifier COIL_HEAT = GT_RecipeBuilder.MetadataIdentifier + .create(Integer.class, "coil_heat"); + /** + * Research item used by assline recipes. + */ + public static final GT_RecipeBuilder.MetadataIdentifier RESEARCH_ITEM = GT_RecipeBuilder.MetadataIdentifier + .create(ItemStack.class, "research_item"); + /** + * For assembler. It accepts a single item as oredict. It looks like no one uses this anyway... + */ + public static final GT_RecipeBuilder.MetadataIdentifier OREDICT_INPUT = GT_RecipeBuilder.MetadataIdentifier + .create(Object.class, "oredict_input"); + + public static final IGT_RecipeMap Fusion = IGT_RecipeMap.newRecipeMap(builder -> { + if (GT_Utility.isArrayEmptyOrNull(builder.getFluidInputs()) + || GT_Utility.isArrayEmptyOrNull(builder.getFluidOutputs())) + return Collections.emptyList(); + if (builder.getFluidInputs().length > 2 || builder.getFluidOutputs().length > 2) + return GT_Recipe_Map.sComplexFusionRecipes.doAdd(builder); + return GT_Recipe_Map.sFusionRecipes.doAdd(builder); + }); + + public static final IGT_RecipeMap UniversalArcFurnace = IGT_RecipeMap.newRecipeMap(builder -> { + if (!GT_Utility.isArrayOfLength(builder.getItemInputsBasic(), 1) + || GT_Utility.isArrayEmptyOrNull(builder.getItemOutputs())) + return Collections.emptyList(); + int aDuration = builder.getDuration(); + if ((aDuration = GregTech_API.sRecipeFile.get("arcfurnace", builder.getItemInputBasic(0), aDuration)) <= 0) { + return Collections.emptyList(); + } + builder.duration(aDuration); + Collection ret = new ArrayList<>(); + for (Materials mat : new Materials[] { Materials.Argon, Materials.Nitrogen }) { + int tPlasmaAmount = (int) Math.max(1L, aDuration / (mat.getMass() * 16L)); + GT_RecipeBuilder b2 = builder.copy(); + b2.fluidInputs(mat.getPlasma(tPlasmaAmount)).fluidOutputs(mat.getGas(tPlasmaAmount)); + ret.addAll(GT_Recipe_Map.sPlasmaArcFurnaceRecipes.doAdd(b2)); + } + ret.addAll( + GT_Recipe_Map.sArcFurnaceRecipes.doAdd(builder.copy().fluidInputs(Materials.Oxygen.getGas(aDuration)))); + return ret; + }); + + public static final IGT_RecipeMap UniversalChemical = IGT_RecipeMap.newRecipeMap(builder -> { + for (ItemStack input : builder.getItemInputsBasic()) { + if (GT_Utility.isAnyIntegratedCircuit(input) && input.getItemDamage() >= 10) return GT_Utility.concat( + builder.copy().addTo(GT_Recipe_Map.sChemicalRecipes), + // LCR does not need cleanroom, for now. + builder.metadata(CLEANROOM, false).addTo(GT_Recipe_Map.sMultiblockChemicalRecipes)); + } + return builder.addTo(GT_Recipe_Map.sChemicalRecipes); + }); + + public static final IGT_RecipeMap AssemblyLine = IGT_RecipeMap.newRecipeMap(builder -> { + Optional rr = builder.forceOreDictInput().validateInputCount(4, 16) + .validateOutputCount(1, 1).validateOutputFluidCount(-1, 0).validateInputFluidCount(0, 4).buildWithAlt(); + if (!rr.isPresent()) return Collections.emptyList(); + GT_Recipe.GT_Recipe_WithAlt r = rr.get(); + ItemStack[][] mOreDictAlt = r.mOreDictAlt; + Object[] inputs = builder.getItemInputsOreDict(); + ItemStack aResearchItem = builder.getMetadata(RESEARCH_ITEM); + ItemStack aOutput = r.mOutputs[0]; + int tPersistentHash = 1; + for (int i = 0, mOreDictAltLength = mOreDictAlt.length; i < mOreDictAltLength; i++) { + ItemStack[] alts = mOreDictAlt[i]; + Object input = inputs[i]; + if (input instanceof ItemStack) + tPersistentHash = tPersistentHash * 31 + GT_Utility.persistentHash((ItemStack) input, true, false); + else if (input instanceof ItemStack[]) { + for (ItemStack alt : ((ItemStack[]) input)) { + tPersistentHash = tPersistentHash * 31 + GT_Utility.persistentHash(alt, true, false); + } + tPersistentHash *= 31; + } else if (input instanceof Object[]) { + Object[] objs = (Object[]) input; + Arrays.sort( + alts, + Comparator + .comparing( + s -> GameRegistry.findUniqueIdentifierFor(s.getItem()).modId) + .thenComparing(s -> GameRegistry.findUniqueIdentifierFor(s.getItem()).name) + .thenComparingInt(Items.feather::getDamage).thenComparingInt(s -> s.stackSize)); + + tPersistentHash = tPersistentHash * 31 + (objs[0] == null ? "" : objs[0].toString()).hashCode(); + tPersistentHash = tPersistentHash * 31 + ((Number) objs[1]).intValue(); + } + GT_Log.err.println( + "addAssemblingLineRecipe " + aResearchItem.getDisplayName() + + " --> " + + aOutput.getUnlocalizedName() + + " there is some null item in that recipe"); + } + tPersistentHash = tPersistentHash * 31 + GT_Utility.persistentHash(aResearchItem, true, false); + tPersistentHash = tPersistentHash * 31 + GT_Utility.persistentHash(aOutput, true, false); + for (FluidStack fluidInput : r.mFluidInputs) { + if (fluidInput == null) continue; + tPersistentHash = tPersistentHash * 31 + GT_Utility.persistentHash(fluidInput, true, false); + } + int aResearchTime = builder.getMetadata(RESEARCH_TIME); + tPersistentHash = tPersistentHash * 31 + aResearchTime; + tPersistentHash = tPersistentHash * 31 + r.mDuration; + tPersistentHash = tPersistentHash * 31 + r.mEUt; + Collection ret = new ArrayList<>(3); + ret.add( + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( + false, + new ItemStack[] { aResearchItem }, + new ItemStack[] { aOutput }, + new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Writes Research result") }, + null, + null, + aResearchTime, + 30, + -201)); // means it's scanned + + ret.add( + GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.addFakeRecipe( + false, + r.mInputs, + new ItemStack[] { aOutput }, + new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Reads Research result") }, + r.mFluidInputs, + null, + r.mDuration, + r.mEUt, + 0, + r.mOreDictAlt, + false)); + + GT_Recipe.GT_Recipe_AssemblyLine tRecipe = new GT_Recipe.GT_Recipe_AssemblyLine( + aResearchItem, + aResearchTime, + r.mInputs, + r.mFluidInputs, + aOutput, + r.mDuration, + r.mEUt, + r.mOreDictAlt); + tRecipe.setPersistentHash(tPersistentHash); + GT_Recipe.GT_Recipe_AssemblyLine.sAssemblylineRecipes.add(tRecipe); + GT_AssemblyLineUtils.addRecipeToCache(tRecipe); + return ret; + }); + + public static IGT_RecipeMap AssemblerOD = IGT_RecipeMap.newRecipeMap(builder -> { + Collection ret = new ArrayList<>(); + for (ItemStack input : GT_OreDictUnificator.getOresImmutable(builder.getMetadata(OREDICT_INPUT))) { + ret.addAll( + builder.copy().itemInputs(GT_RecipeMapUtil.appendArray(builder.getItemInputsBasic(), input)) + .addTo(GT_Recipe_Map.sAssemblerRecipes)); + } + return ret; + }); + + public static IGT_RecipeMap Fuel = IGT_RecipeMap.newRecipeMap(builder -> { + builder.validateInputCount(1, 1).validateNoInputFluid().validateOutputCount(-1, 0).validateNoOutputFluid(); + if (!builder.isValid()) return Collections.emptyList(); + int fuelType = builder.getMetadata(FUEL_TYPE); + builder.metadata( + FUEL_VALUE, + GregTech_API.sRecipeFile + .get("fuel_" + fuelType, builder.getItemInputBasic(0), builder.getMetadata(FUEL_VALUE))); + return FuelType.get(fuelType).getTarget().doAdd(builder); + }); + + public enum FuelType { + + // ORDER MATTERS. DO NOT INSERT ELEMENT BETWEEN EXISTING ONES + DieselFuel(GT_Recipe_Map.sDieselFuels), + GasTurbine(GT_Recipe_Map.sTurbineFuels), + // appears unused + HotFuel(GT_Recipe_Map.sHotFuels), + SemiFluid(GT_Recipe_Map.sDenseLiquidFuels), + PlasmaTurbine(GT_Recipe_Map.sPlasmaFuels), + Magic(GT_Recipe_Map.sMagicFuels),; + + private static final FuelType[] VALUES = values(); + private final IGT_RecipeMap target; + + FuelType(IGT_RecipeMap target) { + this.target = target; + } + + public static FuelType get(int fuelType) { + if (fuelType < 0 || fuelType >= VALUES.length) return SemiFluid; + return VALUES[fuelType]; + } + + public IGT_RecipeMap getTarget() { + return target; + } + } + + static { + GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(COIL_HEAT); + GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(FUSION_THRESHOLD); + GT_RecipeMapUtil.SPECIAL_VALUE_ALIASES.add(FUEL_VALUE); + } +} diff --git a/src/main/java/gregtech/api/util/GT_RecipeMapUtil.java b/src/main/java/gregtech/api/util/GT_RecipeMapUtil.java new file mode 100644 index 0000000000..7bb02a5681 --- /dev/null +++ b/src/main/java/gregtech/api/util/GT_RecipeMapUtil.java @@ -0,0 +1,196 @@ +package gregtech.api.util; + +import static gregtech.api.util.GT_Config.getStackConfigName; +import static gregtech.api.util.GT_Utility.isArrayEmptyOrNull; + +import java.util.*; +import java.util.function.Consumer; +import java.util.function.Function; + +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; + +import com.google.common.collect.ArrayListMultimap; +import com.google.common.collect.Multimap; + +import cpw.mods.fml.common.Loader; +import gregtech.api.interfaces.IGT_RecipeMap; + +/** + * Define helpers useful in the creation of recipe maps. + */ +// Do not place arbitrary stuff here! These are all statically imported in GT_Recipe.java file. +public class GT_RecipeMapUtil { + + public static final Function ALL_FAKE_RECIPE = r -> { + r.mFakeRecipe = true; + return r; + }; + + public static final Function FIRST_FLUID_INPUT = r -> isArrayEmptyOrNull(r.mFluidInputs) ? null + : r.mFluidInputs[0].getFluid().getName(); + public static final Function FIRST_FLUID_OUTPUT = r -> isArrayEmptyOrNull(r.mFluidInputs) ? null + : r.mFluidOutputs[0].getFluid().getName(); + public static final Function FIRST_FLUIDSTACK_INPUT = r -> isArrayEmptyOrNull(r.mFluidInputs) + ? null + : r.mFluidInputs[0].getUnlocalizedName(); + public static final Function FIRST_FLUIDSTACK_OUTPUT = r -> isArrayEmptyOrNull(r.mFluidOutputs) + ? null + : r.mFluidOutputs[0].getUnlocalizedName(); + public static final Function FIRST_ITEM_INPUT = r -> isArrayEmptyOrNull(r.mInputs) ? null + : getStackConfigName(r.mInputs[0]); + public static final Function FIRST_ITEM_OUTPUT = r -> isArrayEmptyOrNull(r.mOutputs) ? null + : getStackConfigName(r.mOutputs[0]); + public static final Function FIRST_ITEM_OR_FLUID_INPUT = r -> isArrayEmptyOrNull(r.mInputs) + ? isArrayEmptyOrNull(r.mFluidInputs) ? null : r.mFluidInputs[0].getFluid().getName() + : getStackConfigName(r.mInputs[0]); + public static final Function FIRST_ITEM_OR_FLUID_OUTPUT = r -> isArrayEmptyOrNull(r.mOutputs) + ? isArrayEmptyOrNull(r.mFluidOutputs) ? null : r.mFluidOutputs[0].getFluid().getName() + : getStackConfigName(r.mOutputs[0]); + private static final Map addonRecipeMaps = new HashMap<>(); + private static final Multimap> delayedActions = ArrayListMultimap.create(); + + public static final Set> SPECIAL_VALUE_ALIASES = new HashSet<>(); + + public static T[] appendArray(T[] arr, T val) { + T[] newArr = Arrays.copyOf(arr, arr.length + 1); + newArr[arr.length] = val; + return newArr; + } + + public static GT_RecipeTemplate asTemplate(GT_Recipe r) { + return asTemplate(r, false); + } + + public static GT_RecipeTemplate asTemplate(GT_Recipe r, boolean includeTemplate) { + return new GT_RecipeTemplate(r, includeTemplate); + } + + public static List buildRecipeForMultiblock(GT_RecipeBuilder b) { + List itemInputs = new ArrayList<>(Arrays.asList(b.getItemInputsBasic())); + List itemOutputs = new ArrayList<>(Arrays.asList(b.getItemOutputs())); + List fluidInputs = new ArrayList<>(Arrays.asList(b.getFluidInputs())); + List fluidOutputs = new ArrayList<>(Arrays.asList(b.getFluidOutputs())); + cellToFluid(itemInputs, fluidInputs, true); + cellToFluid(itemInputs, fluidInputs, false); + return buildOrEmpty( + b.itemInputs(itemInputs.toArray(new ItemStack[0])).itemOutputs(itemOutputs.toArray(new ItemStack[0])) + .fluidInputs(fluidInputs.toArray(new FluidStack[0])) + .fluidOutputs(fluidOutputs.toArray(new FluidStack[0]))); + } + + public static List buildRecipeForMultiblockNoCircuit(GT_RecipeBuilder b) { + List itemInputs = new ArrayList<>(Arrays.asList(b.getItemInputsBasic())); + List itemOutputs = new ArrayList<>(Arrays.asList(b.getItemOutputs())); + List fluidInputs = new ArrayList<>(Arrays.asList(b.getFluidInputs())); + List fluidOutputs = new ArrayList<>(Arrays.asList(b.getFluidOutputs())); + cellToFluid(itemInputs, fluidInputs, false); + cellToFluid(itemInputs, fluidInputs, false); + return buildOrEmpty( + b.itemInputs(itemInputs.toArray(new ItemStack[0])).itemOutputs(itemOutputs.toArray(new ItemStack[0])) + .fluidInputs(fluidInputs.toArray(new FluidStack[0])) + .fluidOutputs(fluidOutputs.toArray(new FluidStack[0]))); + } + + private static void cellToFluid(List items, List fluids, boolean removeIntegratedCircuit) { + for (ListIterator iterator = items.listIterator(items.size()); iterator.hasPrevious();) { + ItemStack item = iterator.previous(); + if (GT_Utility.getFluidForFilledItem(item, true) != null || GT_Utility.isCellEmpty(item) + || (removeIntegratedCircuit && GT_Utility.isAnyIntegratedCircuit(item))) { + fluids.add(GT_Utility.convertCellToFluid(item)); + iterator.remove(); + } + } + } + + public static List buildOrEmpty(GT_RecipeBuilder builder) { + return builder.build().map(Collections::singletonList).orElse(Collections.emptyList()); + } + + /** + * Register a recipe map as part of your mod's public API under your modid and your given identifier. + * + * @param identifier + * @param recipeMap + * @param dependencies fully qualified identifier of dependent recipe maps. scheduler will only add recipes to one + * of the dependent recipe maps and this recipe map concurrently, guaranteeing thread safety. + * Currently unused, but you are advised to fill them, so that when The Day (tm) comes we don't + * end up with a bunch of weird concurrency bugs. + */ + public static void registerRecipeMap(String identifier, IGT_RecipeMap recipeMap, + RecipeMapDependency... dependencies) { + String modId = Loader.instance().activeModContainer().getModId(); + if ("gregtech".equals(modId)) throw new IllegalStateException( + "do not register recipe map under the name of gregtech! do it in your own preinit!"); + String id = modId + "@" + identifier; + addonRecipeMaps.put(id, recipeMap); + for (Consumer action : delayedActions.get(id)) { + action.accept(recipeMap); + } + } + + /** + * Use this to register recipes for a recipe map in addon not present at compile time. + *

+ * Do not use this for recipes maps already in {@link GT_RecipeConstants}. None of them will be available via this + * interface! + * + * @param identifier recipe map id + * @param registerAction DO NOT ADD RECIPES TO MAPS OTHER THAN THE ONE PASSED TO YOU. DO NOT DO ANYTHING OTHER THAN + * ADDING RECIPES TO THIS R + */ + public static void registerRecipesFor(String modid, String identifier, Consumer registerAction) { + String id = modid + "@" + identifier; + IGT_RecipeMap map = addonRecipeMaps.get(id); + if (map == null) delayedActions.put(id, registerAction); + else registerAction.accept(map); + } + + public static final class GT_RecipeTemplate { + + private final GT_Recipe template; + private final List derivatives = new ArrayList<>(); + + private GT_RecipeTemplate(GT_Recipe template, boolean includeTemplate) { + this.template = template; + if (includeTemplate) derivatives.add(template); + } + + public GT_Recipe derive() { + GT_Recipe derived = template.copyShallow(); + derivatives.add(derived); + return derived; + } + + public List getAll() { + // fix shallow references + Set references = Collections.newSetFromMap(new IdentityHashMap<>()); + for (GT_Recipe r : derivatives) { + if (!references.add(r.mInputs)) r.mInputs = r.mInputs.clone(); + if (!references.add(r.mOutputs)) r.mOutputs = r.mOutputs.clone(); + if (!references.add(r.mFluidInputs)) r.mFluidInputs = r.mFluidInputs.clone(); + if (!references.add(r.mFluidOutputs)) r.mFluidOutputs = r.mFluidOutputs.clone(); + } + return derivatives; + } + } + + public static final class RecipeMapDependency { + + private final IGT_RecipeMap obj; + private final String id; + + public RecipeMapDependency(IGT_RecipeMap obj, String id) { + this.obj = obj; + this.id = id; + } + + public static RecipeMapDependency create(String id) { + return new RecipeMapDependency(null, id); + } + + public static RecipeMapDependency create(IGT_RecipeMap obj) { + return new RecipeMapDependency(obj, null); + } + } +} diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java index 4dd99e3ff7..32ccca715a 100644 --- a/src/main/java/gregtech/api/util/GT_Utility.java +++ b/src/main/java/gregtech/api/util/GT_Utility.java @@ -25,6 +25,7 @@ import java.util.function.Function; import java.util.function.IntFunction; import java.util.function.Supplier; import java.util.stream.Collector; +import java.util.stream.Collectors; import java.util.stream.IntStream; import java.util.stream.Stream; @@ -2795,6 +2796,13 @@ public class GT_Utility { return null; } + public static FluidStack copyAmount(int aAmount, FluidStack aStack) { + if (aStack == null) return null; + FluidStack rStack = aStack.copy(); + rStack.amount = aAmount; + return rStack; + } + public static ItemStack copyAmount(long aAmount, Object... aStacks) { ItemStack rStack = copy(aStacks); if (isStackInvalid(rStack)) return null; @@ -2805,6 +2813,17 @@ public class GT_Utility { return rStack; } + public static ItemStack multiplyStack(long aMultiplier, Object... aStacks) { + ItemStack rStack = copy(aStacks); + if (isStackInvalid(rStack)) return null; + long tAmount = rStack.stackSize * aMultiplier; + if (tAmount > 64) tAmount = 64; + else if (tAmount == -1) tAmount = 111; + else if (tAmount < 0) tAmount = 0; + rStack.stackSize = (byte) tAmount; + return rStack; + } + public static ItemStack copyAmountUnsafe(long aAmount, Object... aStacks) { ItemStack rStack = copy(aStacks); if (isStackInvalid(rStack)) return null; @@ -4337,6 +4356,10 @@ public class GT_Utility { return GT_Utility.areStacksEqual(itemStack, tStack); } + /** + * Convert a cell to fluid. If given itemstack does not contain any fluid, return null. Will correctly multiple + * output fluid amount if input stack size is greater than 1. + */ public static FluidStack convertCellToFluid(ItemStack itemStack) { if (itemStack == null) return null; if (getFluidForFilledItem(itemStack, true) != null) { @@ -4347,12 +4370,22 @@ public class GT_Utility { return null; } + /** + * @deprecated typo in method name. use {@link #isAnyIntegratedCircuit(ItemStack)} instead. + */ + @Deprecated public static boolean checkIfSameIntegratedCircuit(ItemStack itemStack) { if (itemStack == null) return false; for (int i = 0; i < 25; i++) if (itemStack.isItemEqual(GT_Utility.getIntegratedCircuit(i))) return true; return false; } + public static boolean isAnyIntegratedCircuit(ItemStack itemStack) { + if (itemStack == null) return false; + return itemStack.getItem() == ItemList.Circuit_Integrated.getItem() && 0 <= itemStack.getItemDamage() + && itemStack.getItemDamage() < 25; + } + public static byte convertRatioToRedstone(long used, long max, int threshold, boolean inverted) { byte signal; if (used <= 0) { // Empty @@ -4412,6 +4445,56 @@ public class GT_Utility { ImmutableMap.Builder::build); } + public static boolean isArrayEmptyOrNull(Object[] arr) { + return arr == null || arr.length == 0; + } + + public static boolean isArrayOfLength(Object[] arr, int expectedLength) { + return arr != null && arr.length == expectedLength; + } + + @SafeVarargs + public static Collection concat(Collection... colls) { + return concat(Arrays.asList(colls)); + } + + public static Collection concat(Collection> colls) { + return new ConcatCollection<>(colls); + } + + private static class ConcatCollection extends AbstractCollection { + + private final Collection> colls; + private final int size; + + public ConcatCollection(Collection> lists) { + Collection> colls1 = null; + for (Collection list : lists) { + if (list == null || list.isEmpty()) { + colls1 = lists.stream().filter(c -> c != null && !c.isEmpty()).collect(Collectors.toList()); + break; + } + } + if (colls1 == null) colls1 = lists; + colls = colls1; + int sum = 0; + for (Collection list : colls) { + sum += list.size(); + } + size = sum; + } + + @Override + public Iterator iterator() { + return colls.stream().flatMap(Collection::stream).iterator(); + } + + @Override + public int size() { + return size; + } + } + @AutoValue public abstract static class ItemId { diff --git a/src/main/java/gregtech/common/GT_Client.java b/src/main/java/gregtech/common/GT_Client.java index e7189811a0..351a1aac16 100644 --- a/src/main/java/gregtech/common/GT_Client.java +++ b/src/main/java/gregtech/common/GT_Client.java @@ -7,6 +7,7 @@ package gregtech.common; import static gregtech.api.enums.GT_Values.ALL_VALID_SIDES; import static gregtech.api.enums.GT_Values.calculateMaxPlasmaTurbineEfficiency; +import static gregtech.api.enums.ModIDs.Forestry; import static org.lwjgl.opengl.GL11.GL_LINE_LOOP; import java.net.URL; @@ -49,7 +50,6 @@ import com.gtnewhorizon.structurelib.alignment.IAlignmentProvider; import cpw.mods.fml.client.event.ConfigChangedEvent; import cpw.mods.fml.client.registry.RenderingRegistry; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.TickEvent; import cpw.mods.fml.common.network.FMLNetworkEvent; @@ -561,7 +561,7 @@ public class GT_Client extends GT_Proxy implements Runnable { for (GT_MetaGenerated_Item item : GT_MetaGenerated_Item.sInstances.values()) { metaGeneratedItemRenderer.registerItem(item); } - if (Loader.isModLoaded(GT_Values.MOD_ID_FR)) { + if (Forestry.isModLoaded()) { metaGeneratedItemRenderer.registerItem(GT_Bees.combs); } new GT_MetaGenerated_Tool_Renderer(); diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index 3f50da2230..401b1395d5 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -6,12 +6,9 @@ import static gregtech.api.enums.FluidState.LIQUID; import static gregtech.api.enums.FluidState.MOLTEN; import static gregtech.api.enums.FluidState.PLASMA; import static gregtech.api.enums.GT_Values.MOD_ID; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; -import static gregtech.api.enums.GT_Values.MOD_ID_TC; -import static gregtech.api.enums.GT_Values.MOD_ID_TE; -import static gregtech.api.enums.GT_Values.MOD_ID_TF; import static gregtech.api.enums.GT_Values.W; import static gregtech.api.enums.GT_Values.debugEntityCramming; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_Util.LAST_BROKEN_TILEENTITY; import java.io.File; @@ -787,34 +784,34 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG } } GT_Log.out.println("GT_Mod: Getting required Items of other Mods."); - ItemList.TE_Slag.set(GT_ModHandler.getModItem(MOD_ID_TE, "slag", 1L)); - ItemList.TE_Slag_Rich.set(GT_ModHandler.getModItem(MOD_ID_TE, "slagRich", 1L)); - ItemList.TE_Rockwool.set(GT_ModHandler.getModItem(MOD_ID_TE, "rockwool", 1L)); - ItemList.TE_Hardened_Glass.set(GT_ModHandler.getModItem(MOD_ID_TE, "glassHardened", 1L)); - - ItemList.RC_ShuntingWire.set(GT_ModHandler.getModItem(MOD_ID_RC, "machine.delta", 1L, 0)); - ItemList.RC_ShuntingWireFrame.set(GT_ModHandler.getModItem(MOD_ID_RC, "frame", 1L, 0)); - ItemList.RC_Rail_Standard.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.rail", 1L, 0)); - ItemList.RC_Rail_Adv.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.rail", 1L, 1)); - ItemList.RC_Rail_Wooden.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.rail", 1L, 2)); - ItemList.RC_Rail_HS.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.rail", 1L, 3)); - ItemList.RC_Rail_Reinforced.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.rail", 1L, 4)); - ItemList.RC_Rail_Electric.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.rail", 1L, 5)); - ItemList.RC_Tie_Wood.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.tie", 1L, 0)); - ItemList.RC_Tie_Stone.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.tie", 1L, 1)); - ItemList.RC_Bed_Wood.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.railbed", 1L, 0)); - ItemList.RC_Bed_Stone.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.railbed", 1L, 1)); - ItemList.RC_Rebar.set(GT_ModHandler.getModItem(MOD_ID_RC, "part.rebar", 1L)); - ItemList.TC_Thaumometer.set(GT_ModHandler.getModItem(MOD_ID_TC, "ItemThaumometer", 1L, 0)); - ItemList.Tool_Sword_Steel.set(GT_ModHandler.getModItem(MOD_ID_RC, "tool.steel.sword", 1L)); - ItemList.Tool_Pickaxe_Steel.set(GT_ModHandler.getModItem(MOD_ID_RC, "tool.steel.pickaxe", 1L)); - ItemList.Tool_Shovel_Steel.set(GT_ModHandler.getModItem(MOD_ID_RC, "tool.steel.shovel", 1L)); - ItemList.Tool_Axe_Steel.set(GT_ModHandler.getModItem(MOD_ID_RC, "tool.steel.axe", 1L)); - ItemList.Tool_Hoe_Steel.set(GT_ModHandler.getModItem(MOD_ID_RC, "tool.steel.hoe", 1L)); - - ItemList.TF_LiveRoot.set(GT_ModHandler.getModItem(MOD_ID_TF, "item.liveRoot", 1L, 0)); - ItemList.TF_Vial_FieryBlood.set(GT_ModHandler.getModItem(MOD_ID_TF, "item.fieryBlood", 1L)); - ItemList.TF_Vial_FieryTears.set(GT_ModHandler.getModItem(MOD_ID_TF, "item.fieryTears", 1L)); + ItemList.TE_Slag.set(GT_ModHandler.getModItem(ThermalExpansion.modID, "slag", 1L)); + ItemList.TE_Slag_Rich.set(GT_ModHandler.getModItem(ThermalExpansion.modID, "slagRich", 1L)); + ItemList.TE_Rockwool.set(GT_ModHandler.getModItem(ThermalExpansion.modID, "rockwool", 1L)); + ItemList.TE_Hardened_Glass.set(GT_ModHandler.getModItem(ThermalExpansion.modID, "glassHardened", 1L)); + + ItemList.RC_ShuntingWire.set(GT_ModHandler.getModItem(Railcraft.modID, "machine.delta", 1L, 0)); + ItemList.RC_ShuntingWireFrame.set(GT_ModHandler.getModItem(Railcraft.modID, "frame", 1L, 0)); + ItemList.RC_Rail_Standard.set(GT_ModHandler.getModItem(Railcraft.modID, "part.rail", 1L, 0)); + ItemList.RC_Rail_Adv.set(GT_ModHandler.getModItem(Railcraft.modID, "part.rail", 1L, 1)); + ItemList.RC_Rail_Wooden.set(GT_ModHandler.getModItem(Railcraft.modID, "part.rail", 1L, 2)); + ItemList.RC_Rail_HS.set(GT_ModHandler.getModItem(Railcraft.modID, "part.rail", 1L, 3)); + ItemList.RC_Rail_Reinforced.set(GT_ModHandler.getModItem(Railcraft.modID, "part.rail", 1L, 4)); + ItemList.RC_Rail_Electric.set(GT_ModHandler.getModItem(Railcraft.modID, "part.rail", 1L, 5)); + ItemList.RC_Tie_Wood.set(GT_ModHandler.getModItem(Railcraft.modID, "part.tie", 1L, 0)); + ItemList.RC_Tie_Stone.set(GT_ModHandler.getModItem(Railcraft.modID, "part.tie", 1L, 1)); + ItemList.RC_Bed_Wood.set(GT_ModHandler.getModItem(Railcraft.modID, "part.railbed", 1L, 0)); + ItemList.RC_Bed_Stone.set(GT_ModHandler.getModItem(Railcraft.modID, "part.railbed", 1L, 1)); + ItemList.RC_Rebar.set(GT_ModHandler.getModItem(Railcraft.modID, "part.rebar", 1L)); + ItemList.TC_Thaumometer.set(GT_ModHandler.getModItem(Thaumcraft.modID, "ItemThaumometer", 1L, 0)); + ItemList.Tool_Sword_Steel.set(GT_ModHandler.getModItem(Railcraft.modID, "tool.steel.sword", 1L)); + ItemList.Tool_Pickaxe_Steel.set(GT_ModHandler.getModItem(Railcraft.modID, "tool.steel.pickaxe", 1L)); + ItemList.Tool_Shovel_Steel.set(GT_ModHandler.getModItem(Railcraft.modID, "tool.steel.shovel", 1L)); + ItemList.Tool_Axe_Steel.set(GT_ModHandler.getModItem(Railcraft.modID, "tool.steel.axe", 1L)); + ItemList.Tool_Hoe_Steel.set(GT_ModHandler.getModItem(Railcraft.modID, "tool.steel.hoe", 1L)); + + ItemList.TF_LiveRoot.set(GT_ModHandler.getModItem(TwilightForest.modID, "item.liveRoot", 1L, 0)); + ItemList.TF_Vial_FieryBlood.set(GT_ModHandler.getModItem(TwilightForest.modID, "item.fieryBlood", 1L)); + ItemList.TF_Vial_FieryTears.set(GT_ModHandler.getModItem(TwilightForest.modID, "item.fieryTears", 1L)); ItemList.FR_Lemon.set(GT_ModHandler.getModItem(aTextForestry, "fruits", 1L, 3)); ItemList.FR_Mulch.set(GT_ModHandler.getModItem(aTextForestry, "mulch", 1L)); @@ -963,22 +960,36 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getIC2Item("hazmatChestplate", 1L, 32767)); GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getIC2Item("hazmatLeggings", 1L, 32767)); GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getIC2Item("hazmatBoots", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_RC, "part.turbine.disk", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_RC, "part.turbine.blade", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_RC, "part.turbine.rotor", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_RC, "borehead.diamond", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_RC, "borehead.steel", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_RC, "borehead.iron", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.plateNaga", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.legsNaga", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.arcticHelm", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.arcticPlate", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.arcticLegs", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.arcticBoots", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.yetiHelm", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.yetiPlate", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.yetiLegs", 1L, 32767)); - GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(MOD_ID_TF, "item.yetiBoots", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(Railcraft.modID, "part.turbine.disk", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(Railcraft.modID, "part.turbine.blade", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(Railcraft.modID, "part.turbine.rotor", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(Railcraft.modID, "borehead.diamond", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(Railcraft.modID, "borehead.steel", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems.add(GT_ModHandler.getModItem(Railcraft.modID, "borehead.iron", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.plateNaga", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.legsNaga", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.arcticHelm", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.arcticPlate", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.arcticLegs", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.arcticBoots", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.yetiHelm", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.yetiPlate", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.yetiLegs", 1L, 32767)); + GT_ModHandler.sNonReplaceableItems + .add(GT_ModHandler.getModItem(TwilightForest.modID, "item.yetiBoots", 1L, 32767)); GT_ModHandler.sNonReplaceableItems .add(GT_ModHandler.getModItem("appliedenergistics2", "item.ToolCertusQuartzCuttingKnife", 1L, 32767)); GT_ModHandler.sNonReplaceableItems @@ -1024,25 +1035,25 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG GT_OreDictUnificator.registerOre("cropTea", GT_ModHandler.getModItem("ganyssurface", "teaLeaves", 1L, 0)); // Clay buckets, which don't get registered until Iguana Tweaks pre-init - if (Loader.isModLoaded("IguanaTweaksTConstruct")) { + if (IguanaTweaksTinkerConstruct.isModLoaded()) { OrePrefixes.bucketClay.mContainerItem = GT_ModHandler - .getModItem("IguanaTweaksTConstruct", "clayBucketFired", 1L, 0); + .getModItem(IguanaTweaksTinkerConstruct.modID, "clayBucketFired", 1L, 0); GT_OreDictUnificator.set( OrePrefixes.bucketClay, Materials.Empty, - GT_ModHandler.getModItem("IguanaTweaksTConstruct", "clayBucketFired", 1L, 0)); + GT_ModHandler.getModItem(IguanaTweaksTinkerConstruct.modID, "clayBucketFired", 1L, 0)); GT_OreDictUnificator.set( OrePrefixes.bucketClay, Materials.Water, - GT_ModHandler.getModItem("IguanaTweaksTConstruct", "clayBucketWater", 1L, 0)); + GT_ModHandler.getModItem(IguanaTweaksTinkerConstruct.modID, "clayBucketWater", 1L, 0)); GT_OreDictUnificator.set( OrePrefixes.bucketClay, Materials.Lava, - GT_ModHandler.getModItem("IguanaTweaksTConstruct", "clayBucketLava", 1L, 0)); + GT_ModHandler.getModItem(IguanaTweaksTinkerConstruct.modID, "clayBucketLava", 1L, 0)); GT_OreDictUnificator.set( OrePrefixes.bucketClay, Materials.Milk, - GT_ModHandler.getModItem("IguanaTweaksTConstruct", "clayBucketMilk", 1L, 0)); + GT_ModHandler.getModItem(IguanaTweaksTinkerConstruct.modID, "clayBucketMilk", 1L, 0)); FluidContainerRegistry.registerFluidContainer( new FluidContainerRegistry.FluidContainerData( @@ -2887,7 +2898,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG this.mOreDictActivated = true; ProgressManager.ProgressBar progressBar = ProgressManager.push("Register materials", mEvents.size()); - if (Loader.isModLoaded("betterloadingscreen")) { + if (BetterLoadingScreen.isModLoaded()) { GT_Values.cls_enabled = true; try { GT_CLS_Compat.stepMaterialsCLS(mEvents, progressBar); diff --git a/src/main/java/gregtech/common/GT_RecipeAdder.java b/src/main/java/gregtech/common/GT_RecipeAdder.java index 486035c206..0e4c6e8c9a 100644 --- a/src/main/java/gregtech/common/GT_RecipeAdder.java +++ b/src/main/java/gregtech/common/GT_RecipeAdder.java @@ -1,7 +1,8 @@ package gregtech.common; import static gregtech.GT_Mod.GT_FML_LOGGER; -import static gregtech.api.enums.GT_Values.MOD_ID_GTPP; +import static gregtech.api.enums.ModIDs.GTPlusPlus; +import static gregtech.api.enums.ModIDs.Railcraft; import java.util.ArrayList; import java.util.Arrays; @@ -19,7 +20,6 @@ import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.oredict.OreDictionary; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.registry.GameRegistry; import gregtech.GT_Mod; import gregtech.api.GregTech_API; @@ -299,8 +299,8 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { for (ItemStack item : itemInputs) { if (item != null) { - if (GT_Utility.getFluidForFilledItem(aInput1, true) != null || GT_Utility.isCellEmpty(item) - || GT_Utility.checkIfSameIntegratedCircuit(item)) { + if (GT_Utility.getFluidForFilledItem(item, true) != null || GT_Utility.isCellEmpty(item) + || GT_Utility.isAnyIntegratedCircuit(item)) { fluidInputs[iNumber + 1] = GT_Utility.convertCellToFluid(item); itemInputs[iNumber] = null; } @@ -636,7 +636,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { 0, 0); } - if (Loader.isModLoaded("Railcraft")) { + if (Railcraft.isModLoaded()) { GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe( true, new ItemStack[] { aInput1, aInput2, RailcraftToolItems.getCoalCoke(aCoalAmount / 2) }, @@ -649,11 +649,11 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { 0, 0); } - if (Loader.isModLoaded(MOD_ID_GTPP)) { + if (GTPlusPlus.isModLoaded()) { GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe( true, new ItemStack[] { aInput1, aInput2, - GT_ModHandler.getModItem(MOD_ID_GTPP, "itemCactusCoke", (aCoalAmount * 2L)) }, + GT_ModHandler.getModItem(GTPlusPlus.modID, "itemCactusCoke", (aCoalAmount * 2L)) }, new ItemStack[] { aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount * 2) }, null, null, @@ -665,7 +665,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe( true, new ItemStack[] { aInput1, aInput2, - GT_ModHandler.getModItem(MOD_ID_GTPP, "itemSugarCoke", (aCoalAmount * 2L)) }, + GT_ModHandler.getModItem(GTPlusPlus.modID, "itemSugarCoke", (aCoalAmount * 2L)) }, new ItemStack[] { aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount * 2) }, null, null, @@ -706,7 +706,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { 0, 0); } - if (Loader.isModLoaded("Railcraft")) { + if (Railcraft.isModLoaded()) { GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe( true, new ItemStack[] { aInput1, aInput2, EnumCube.COKE_BLOCK.getItem(aCoalAmount / 2) }, @@ -2812,7 +2812,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { if ((aDuration = GregTech_API.sRecipeFile.get("cracking", aInput.getUnlocalizedName(), aDuration)) <= 0) { return false; } - GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe( + GT_Recipe.GT_Recipe_Map.sCrackingRecipes.addRecipe( false, new ItemStack[] { GT_Utility.getIntegratedCircuit(circuitConfig) }, null, @@ -2926,7 +2926,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { Comparator .comparing( s -> GameRegistry.findUniqueIdentifierFor(s.getItem()).modId) - .thenComparing(s -> GameRegistry.findUniqueIdentifierFor(s.getItem()).modId) + .thenComparing(s -> GameRegistry.findUniqueIdentifierFor(s.getItem()).name) .thenComparingInt(Items.feather::getDamage).thenComparingInt(s -> s.stackSize)); int tAmount = ((Number) objs[1]).intValue(); List uList = new ArrayList<>(); @@ -3174,4 +3174,9 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { } return itemsNull && fluidsNull; } + + @Override + public GT_RecipeBuilder stdBuilder() { + return GT_RecipeBuilder.builder(); + } } diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Metal.java b/src/main/java/gregtech/common/blocks/GT_Block_Metal.java index b33a43e821..7f78fe0bda 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Metal.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Metal.java @@ -1,10 +1,11 @@ package gregtech.common.blocks; +import static gregtech.api.enums.ModIDs.NotEnoughItems; + import net.minecraft.block.material.Material; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; -import cpw.mods.fml.common.Loader; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.interfaces.IIconContainer; @@ -17,7 +18,7 @@ public class GT_Block_Metal extends GT_Block_Storage { public OrePrefixes mPrefix; public IIconContainer[] mBlockIcons; public boolean mHideBlocks; - public static boolean mNEIisLoaded = Loader.isModLoaded("NotEnoughItems"); + public static boolean mNEIisLoaded = NotEnoughItems.isModLoaded(); public GT_Block_Metal(String aName, Materials[] aMats, OrePrefixes aPrefix, IIconContainer[] aBlockIcons) { super(GT_Item_Storage.class, aName, Material.iron); diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java b/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java index 66acc22a22..fbe0516e6c 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java @@ -1,5 +1,7 @@ package gregtech.common.blocks; +import static gregtech.api.enums.ModIDs.NotEnoughItems; + import java.util.ArrayList; import java.util.HashSet; import java.util.List; @@ -24,7 +26,6 @@ import net.minecraft.util.StatCollector; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.GT_Mod; @@ -54,7 +55,7 @@ public abstract class GT_Block_Ores_Abstract extends GT_Generic_Block implements this.isBlockContainer = true; setStepSound(soundTypeStone); setCreativeTab(GregTech_API.TAB_GREGTECH_ORES); - tHideOres = Loader.isModLoaded("NotEnoughItems") && GT_Mod.gregtechproxy.mHideUnusedOres; + tHideOres = NotEnoughItems.isModLoaded() && GT_Mod.gregtechproxy.mHideUnusedOres; if (aOreMetaCount > 8 || aOreMetaCount < 0) aOreMetaCount = 8; for (int i = 0; i < 16; i++) { diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java index f63a535555..9950b2581f 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java @@ -1,5 +1,6 @@ package gregtech.common.items; +import static gregtech.api.enums.ModIDs.GalacticraftMars; import static gregtech.api.enums.Textures.BlockIcons.*; import static gregtech.client.GT_TooltipHandler.Tier.*; import static gregtech.client.GT_TooltipHandler.registerTieredTooltip; @@ -21,7 +22,6 @@ import net.minecraft.potion.Potion; import net.minecraft.util.MathHelper; import net.minecraftforge.oredict.OreDictionary; -import cpw.mods.fml.common.Loader; import gregtech.api.GregTech_API; import gregtech.api.enums.Dyes; import gregtech.api.enums.GT_Values; @@ -1268,7 +1268,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { 256, 256); - if (Loader.isModLoaded("GalacticraftMars")) { + if (GalacticraftMars.isModLoaded()) { ItemList.Ingot_Heavy1 .set(addItem(tLastID = 462, "Heavy Duty Alloy Ingot T1", "Used to make Heavy Duty Plates T1")); ItemList.Ingot_Heavy2 diff --git a/src/main/java/gregtech/common/items/ItemComb.java b/src/main/java/gregtech/common/items/ItemComb.java index d7f009dd38..b1146e8db6 100644 --- a/src/main/java/gregtech/common/items/ItemComb.java +++ b/src/main/java/gregtech/common/items/ItemComb.java @@ -1,6 +1,7 @@ package gregtech.common.items; import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.ModIDs.*; import java.util.Arrays; import java.util.List; @@ -17,7 +18,6 @@ import net.minecraftforge.fluids.FluidStack; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableMap.Builder; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -228,7 +228,7 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { addCentrifugeToItemStack( CombType.LAPOTRON, new ItemStack[] { GT_Bees.drop.getStackForType(DropType.LAPIS), - GT_ModHandler.getModItem(MOD_ID_DC, "item.LapotronDust", 1, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.LapotronDust", 1, 0), GT_ModHandler.getModItem("MagicBees", "wax", 1, 2) }, new int[] { 20 * 100, 15 * 100, 40 * 100 }, Voltage.HV, @@ -1186,35 +1186,38 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { addCentrifugeToItemStack( CombType.NAGA, new ItemStack[] { GT_ModHandler.getModItem("MagicBees", "propolis", 1L, 4), - GT_ModHandler.getModItem(MOD_ID_DC, "item.NagaScaleChip", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.NagaScaleFragment", 1L, 0), ItemList.FR_Wax.get(1) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.NagaScaleChip", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.NagaScaleFragment", 1L, 0), + ItemList.FR_Wax.get(1) }, new int[] { 5 * 100, 33 * 100, 8 * 100, 30 * 100 }, Voltage.MV); addCentrifugeToItemStack( CombType.LICH, new ItemStack[] { GT_ModHandler.getModItem("MagicBees", "propolis", 1L, 5), - GT_ModHandler.getModItem(MOD_ID_DC, "item.LichBoneChip", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.LichBoneFragment", 1L, 0), ItemList.FR_Wax.get(1) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.LichBoneChip", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.LichBoneFragment", 1L, 0), + ItemList.FR_Wax.get(1) }, new int[] { 5 * 100, 33 * 100, 8 * 100, 30 * 100 }, Voltage.HV); addCentrifugeToItemStack( CombType.HYDRA, new ItemStack[] { GT_ModHandler.getModItem("MagicBees", "propolis", 1L, 1), - GT_ModHandler.getModItem(MOD_ID_DC, "item.FieryBloodDrop", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.FieryBloodDrop", 1L, 0), GT_Bees.drop.getStackForType(DropType.HYDRA), ItemList.FR_Wax.get(1) }, new int[] { 5 * 100, 33 * 100, 8 * 100, 30 * 100 }, Voltage.HV); addCentrifugeToItemStack( CombType.URGHAST, new ItemStack[] { GT_ModHandler.getModItem("MagicBees", "propolis", 1L, 2), - GT_ModHandler.getModItem(MOD_ID_DC, "item.CarminiteChip", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.CarminiteFragment", 1L, 0), ItemList.FR_Wax.get(1) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CarminiteChip", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CarminiteFragment", 1L, 0), + ItemList.FR_Wax.get(1) }, new int[] { 5 * 100, 33 * 100, 8 * 100, 30 * 100 }, Voltage.EV); addCentrifugeToItemStack( CombType.SNOWQUEEN, new ItemStack[] { GT_ModHandler.getModItem("MagicBees", "propolis", 1L, 3), - GT_ModHandler.getModItem(MOD_ID_DC, "item.SnowQueenBloodDrop", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.SnowQueenBloodDrop", 1L, 0), GT_Bees.drop.getStackForType(DropType.SNOW_QUEEN), ItemList.FR_Wax.get(1) }, new int[] { 5 * 100, 33 * 100, 8 * 100, 30 * 100 }, Voltage.EV); @@ -1283,17 +1286,17 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { addCentrifugeToItemStack( CombType.RUNEI, new ItemStack[] { GT_ModHandler.getModItem("MagicBees", "wax", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.RuneOfPowerFragment", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.RuneOfAgilityFragment", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.RuneOfVigorFragment", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.RuneOfDefenseFragment", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.RuneOfMagicFragment", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.RuneOfPowerFragment", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.RuneOfAgilityFragment", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.RuneOfVigorFragment", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.RuneOfDefenseFragment", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.RuneOfMagicFragment", 1L, 0) }, new int[] { 25 * 100, 5 * 100, 5 * 100, 5 * 100, 5 * 100, 5 * 100 }, Voltage.IV); addCentrifugeToItemStack( CombType.RUNEII, new ItemStack[] { GT_ModHandler.getModItem("MagicBees", "wax", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.RuneOfVoidFragment", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.RuneOfVoidFragment", 1L, 0) }, new int[] { 50 * 100, (int) (2.5 * 100) }, Voltage.IV); addCentrifugeToItemStack( @@ -1304,7 +1307,7 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { new int[] { 30 * 100, (int) (7.5 * 100), 20 * 100 }, Voltage.IV); // Walrus Recipe - if (Loader.isModLoaded("ae2fc")) { + if (AE2FluidCraft.isModLoaded()) { addCentrifugeToItemStack( CombType.WALRUS, new ItemStack[] { GT_ModHandler.getModItem("ae2fc", "walrus", 1L, 0) }, @@ -1316,7 +1319,7 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { CombType.SPACE, new ItemStack[] { ItemList.FR_Wax.get(1L), ItemList.FR_RefractoryWax.get(1L), GT_Bees.drop.getStackForType(DropType.OXYGEN), - GT_ModHandler.getModItem(MOD_ID_DC, "item.CoinSpace", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CoinSpace", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 15 * 100, 5 * 100 }, Voltage.HV); addProcessGT(CombType.METEORICIRON, new Materials[] { Materials.MeteoricIron }, Voltage.HV); @@ -1418,24 +1421,24 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { addCentrifugeToItemStack( CombType.MOON, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.MoonStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MoonStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100 }, Voltage.MV, 300); addCentrifugeToItemStack( CombType.MARS, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.MarsStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MarsStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100 }, Voltage.HV, 300); addCentrifugeToItemStack( CombType.JUPITER, - new ItemStack[] { GT_ModHandler.getModItem(MOD_ID_DC, "item.IoStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.EuropaIceDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.EuropaStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.GanymedeStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.CallistoStoneDust", 1L, 0), + new ItemStack[] { GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.IoStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EuropaIceDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EuropaStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.GanymedeStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CallistoStoneDust", 1L, 0), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.CallistoIce, 1L), ItemList.FR_Wax.get(1L) }, new int[] { 30 * 100, 30 * 100, 30 * 100, 30 * 100, 30 * 100, 5 * 100, 50 * 100 }, @@ -1444,95 +1447,95 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { addCentrifugeToItemStack( CombType.MERCURY, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.MercuryCoreDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.MercuryStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MercuryCoreDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MercuryStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 30 * 100 }, Voltage.EV, 300); addCentrifugeToItemStack( CombType.VENUS, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.VenusStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.VenusStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100 }, Voltage.EV, 300); addCentrifugeToItemStack( CombType.SATURN, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.EnceladusStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.TitanStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EnceladusStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TitanStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 30 * 100 }, Voltage.IV, 300); addCentrifugeToItemStack( CombType.URANUS, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.MirandaStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.OberonStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MirandaStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.OberonStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 30 * 100 }, Voltage.IV, 300); addCentrifugeToItemStack( CombType.NEPTUN, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.ProteusStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.TritonStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.ProteusStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TritonStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 30 * 100 }, Voltage.IV, 300); addCentrifugeToItemStack( CombType.PLUTO, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.PlutoStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.PlutoIceDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.PlutoStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.PlutoIceDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 30 * 100 }, Voltage.LuV, 300); addCentrifugeToItemStack( CombType.HAUMEA, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.HaumeaStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.HaumeaStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100 }, Voltage.LuV, 300); addCentrifugeToItemStack( CombType.MAKEMAKE, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.MakeMakeStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MakeMakeStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100 }, Voltage.LuV, 300); addCentrifugeToItemStack( CombType.CENTAURI, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.CentauriASurfaceDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.CentauriAStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CentauriASurfaceDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CentauriAStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 30 * 100 }, Voltage.ZPM, 300); addCentrifugeToItemStack( CombType.TCETI, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.TCetiEStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TCetiEStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100 }, Voltage.ZPM, 300); addCentrifugeToItemStack( CombType.BARNARDA, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.BarnardaEStoneDust", 1L, 0), - GT_ModHandler.getModItem(MOD_ID_DC, "item.BarnardaFStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.BarnardaEStoneDust", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.BarnardaFStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100, 30 * 100 }, Voltage.ZPM, 300); addCentrifugeToItemStack( CombType.VEGA, new ItemStack[] { ItemList.FR_Wax.get(1L), - GT_ModHandler.getModItem(MOD_ID_DC, "item.VegaBStoneDust", 1L, 0) }, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.VegaBStoneDust", 1L, 0) }, new int[] { 50 * 100, 30 * 100 }, Voltage.ZPM, 300); - if (Loader.isModLoaded("GalaxySpace")) { + if (GalaxySpace.isModLoaded()) { addCentrifugeToItemStack( CombType.SEAWEED, new ItemStack[] { ItemList.FR_Wax.get(1L), diff --git a/src/main/java/gregtech/common/items/ItemDrop.java b/src/main/java/gregtech/common/items/ItemDrop.java index 4887e47722..4b615b9f6e 100644 --- a/src/main/java/gregtech/common/items/ItemDrop.java +++ b/src/main/java/gregtech/common/items/ItemDrop.java @@ -1,7 +1,8 @@ package gregtech.common.items; import static gregtech.api.enums.GT_Values.MOD_ID; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.HardcoreEnderExpansion; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; import java.util.List; @@ -13,7 +14,6 @@ import net.minecraft.util.IIcon; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -141,7 +141,7 @@ public class ItemDrop extends Item { addProcessMV( tDrop, Materials.FierySteel.getFluid(200L), - GT_ModHandler.getModItem(MOD_ID_DC, "SnowQueenBloodDrop", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "SnowQueenBloodDrop", 1L, 0), 1500, 48); tDrop = getStackForType(DropType.LAPIS); @@ -180,7 +180,7 @@ public class ItemDrop extends Item { GT_ModHandler.getModItem("ExtraBees", "propolis", 1L, 2), 30); tDrop = getStackForType(DropType.ENDERGOO); - if (Loader.isModLoaded("HardcoreEnderExpansion")) + if (HardcoreEnderExpansion.isModLoaded()) addProcessHV(tDrop, new FluidStack(FluidRegistry.getFluid("endergoo"), 500), GT_Values.NI, 1000); } diff --git a/src/main/java/gregtech/common/items/ItemPropolis.java b/src/main/java/gregtech/common/items/ItemPropolis.java index c2d46a8249..657c6ef99a 100644 --- a/src/main/java/gregtech/common/items/ItemPropolis.java +++ b/src/main/java/gregtech/common/items/ItemPropolis.java @@ -1,7 +1,7 @@ package gregtech.common.items; import static gregtech.api.enums.GT_Values.MOD_ID; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; import java.util.List; @@ -84,9 +84,9 @@ public class ItemPropolis extends Item { tPropolis = getStackForType(PropolisType.Stardust); addProcessHV(tPropolis, GT_ModHandler.getModItem("HardcoreEnderExpansion", "stardust", 1, 0)); tPropolis = getStackForType(PropolisType.Ectoplasma); - addProcessEV(tPropolis, GT_ModHandler.getModItem(MOD_ID_DC, "item.EctoplasmaChip", 1, 0)); + addProcessEV(tPropolis, GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EctoplasmaChip", 1, 0)); tPropolis = getStackForType(PropolisType.Arcaneshard); - addProcessEV(tPropolis, GT_ModHandler.getModItem(MOD_ID_DC, "item.ArcaneShardChip", 1, 0)); + addProcessEV(tPropolis, GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.ArcaneShardChip", 1, 0)); tPropolis = getStackForType(PropolisType.Dragonessence); addProcessIV(tPropolis, GT_ModHandler.getModItem("HardcoreEnderExpansion", "essence", 16, 0)); tPropolis = getStackForType(PropolisType.Enderman); diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java index 3e2a3e69cc..d197c264c7 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java @@ -1,8 +1,8 @@ package gregtech.common.tileentities.generators; import static gregtech.api.enums.ConfigCategories.machineconfig; -import static gregtech.api.enums.GT_Values.MOD_ID_TC; import static gregtech.api.enums.GT_Values.V; +import static gregtech.api.enums.ModIDs.Thaumcraft; import static gregtech.api.enums.Textures.BlockIcons.*; import static gregtech.api.objects.XSTR.XSTR_INSTANCE; import static net.minecraft.util.EnumChatFormatting.GRAY; @@ -46,7 +46,6 @@ import thaumcraft.api.visnet.VisNetHandler; import com.google.common.base.Enums; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTech_API; @@ -72,7 +71,7 @@ interface MagicalEnergyBBListener { public class GT_MetaTileEntity_MagicalEnergyAbsorber extends GT_MetaTileEntity_BasicGenerator implements MagicalEnergyBBListener { - private static final boolean THAUMCRAFT_LOADED = Loader.isModLoaded(MOD_ID_TC); + private static final boolean THAUMCRAFT_LOADED = Thaumcraft.isModLoaded(); private static final ConcurrentHashMap sSubscribedCrystals = new ConcurrentHashMap<>( 4); private static final List sPrimalAspects = (THAUMCRAFT_LOADED) ? Aspect.getPrimalAspects() diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java index bc6f50fde6..595953c06f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java @@ -1,6 +1,6 @@ package gregtech.common.tileentities.machines.basic; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.Railcraft; import static gregtech.api.enums.Textures.BlockIcons.*; import java.util.*; @@ -137,9 +137,11 @@ public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachi addBlacklist(Materials.Graphene.getDust(1)); addBlacklist(ItemList.Circuit_Parts_Vacuum_Tube.get(1L)); addBlacklist(ItemList.Schematic.get(1L)); - addBlacklist(GT_ModHandler.getModItem(MOD_ID_RC, "track", 1L, 0)); - addBlacklist(GT_ModHandler.getModItem(MOD_ID_RC, "track", 1L, 736)); - addBlacklist(GT_ModHandler.getModItem(MOD_ID_RC, "track", 1L, 816)); + if (Railcraft.isModLoaded()) { + addBlacklist(GT_ModHandler.getModItem(Railcraft.modID, "track", 1L, 0)); + addBlacklist(GT_ModHandler.getModItem(Railcraft.modID, "track", 1L, 736)); + addBlacklist(GT_ModHandler.getModItem(Railcraft.modID, "track", 1L, 816)); + } addBlacklist(IC2Items.getItem("mixedMetalIngot")); addBlacklist(GT_ModHandler.getModItem("Railcraft", "machine.alpha", 1L, 14)); // region transformer diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java index 20b42e7bb4..3f37effffa 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java @@ -1,6 +1,8 @@ package gregtech.common.tileentities.machines.basic; import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.ModIDs.GalacticraftCore; +import static gregtech.api.enums.ModIDs.GalacticraftMars; import static gregtech.api.enums.Textures.BlockIcons.*; import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes; @@ -228,36 +230,38 @@ public class GT_MetaTileEntity_Scanner extends GT_MetaTileEntity_BasicMachine { int stackItemID = Item.getIdFromItem(aStack.getItem()); int stackItemDamage = aStack.getItemDamage(); if (stackItemID == Item.getIdFromItem( - Objects.requireNonNull(GT_ModHandler.getModItem(MOD_ID_GC_CORE, "item.schematic", 1L, 0)) + Objects.requireNonNull( + GT_ModHandler.getModItem(GalacticraftCore.modID, "item.schematic", 1L, 0)) .getItem())) { if (stackItemDamage == 0 && aStack.toString().equals( Objects.requireNonNull( - GT_ModHandler.getModItem(MOD_ID_GC_CORE, "item.schematic", 1L, 0)).copy() - .toString())) + GT_ModHandler.getModItem(GalacticraftCore.modID, "item.schematic", 1L, 0)) + .copy().toString())) sTier = "100"; else if (stackItemDamage == 1 && aStack.toString().equals( Objects.requireNonNull( - GT_ModHandler.getModItem(MOD_ID_GC_CORE, "item.schematic", 1L, 1)).copy() - .toString())) + GT_ModHandler.getModItem(GalacticraftCore.modID, "item.schematic", 1L, 1)) + .copy().toString())) sTier = "2"; } else { if (stackItemID == Item.getIdFromItem( Objects.requireNonNull( - GT_ModHandler.getModItem(MOD_ID_GC_MARS, "item.schematic", 1L, 0)).getItem())) { + GT_ModHandler.getModItem(GalacticraftMars.modID, "item.schematic", 1L, 0)) + .getItem())) { if (stackItemDamage == 0 && aStack.toString().equals( Objects.requireNonNull( - GT_ModHandler.getModItem(MOD_ID_GC_MARS, "item.schematic", 1L, 0)).copy() - .toString())) + GT_ModHandler.getModItem(GalacticraftMars.modID, "item.schematic", 1L, 0)) + .copy().toString())) sTier = "3"; else if (stackItemDamage == 1 && aStack.toString().equals( Objects.requireNonNull( - GT_ModHandler.getModItem(MOD_ID_GC_MARS, "item.schematic", 1L, 1)).copy() - .toString())) + GT_ModHandler.getModItem(GalacticraftMars.modID, "item.schematic", 1L, 1)) + .copy().toString())) sTier = "101"; else if (stackItemDamage == 2 && aStack.toString().equals( Objects.requireNonNull( - GT_ModHandler.getModItem(MOD_ID_GC_MARS, "item.schematic", 1L, 2)).copy() - .toString())) + GT_ModHandler.getModItem(GalacticraftMars.modID, "item.schematic", 1L, 2)) + .copy().toString())) sTier = "102"; } else if (aStack.getUnlocalizedName().matches(".*\\d+.*")) sTier = aStack.getUnlocalizedName().split("(?<=\\D)(?=\\d)")[1].substring(0, 1); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java index 6d0b194612..a1e85f9b25 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java @@ -5,7 +5,7 @@ import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlockUn import static com.gtnewhorizon.structurelib.structure.StructureUtility.onElementPass; import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose; import static gregtech.api.enums.GT_HatchElement.*; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_PYROLYSE_OVEN; import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_PYROLYSE_OVEN_ACTIVE; import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_PYROLYSE_OVEN_ACTIVE_GLOW; @@ -23,7 +23,6 @@ import com.gtnewhorizon.structurelib.structure.IStructureElement; import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; -import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.HeatingCoilLevel; @@ -50,8 +49,8 @@ public class GT_MetaTileEntity_PyrolyseOven extends private static final IStructureDefinition STRUCTURE_DEFINITION = createStructureDefinition(); private static IStructureDefinition createStructureDefinition() { - IStructureElement tCasingElement = Loader.isModLoaded(MOD_ID_DC) - ? ofBlockUnlocalizedName(MOD_ID_DC, "gt.blockcasingsNH", 2) + IStructureElement tCasingElement = NewHorizonsCoreMod.isModLoaded() + ? ofBlockUnlocalizedName(NewHorizonsCoreMod.modID, "gt.blockcasingsNH", 2) : ofBlock(GregTech_API.sBlockCasings1, 0); return StructureDefinition.builder() diff --git a/src/main/java/gregtech/common/tools/GT_Tool_Scoop.java b/src/main/java/gregtech/common/tools/GT_Tool_Scoop.java index f0ad65d838..df6a5ef668 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_Scoop.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_Scoop.java @@ -1,5 +1,7 @@ package gregtech.common.tools; +import static gregtech.api.enums.ModIDs.Forestry; + import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.entity.EntityLivingBase; @@ -8,8 +10,6 @@ import net.minecraft.util.ChatComponentText; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.IChatComponent; -import cpw.mods.fml.common.Loader; -import gregtech.api.enums.GT_Values; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; import gregtech.api.items.GT_MetaGenerated_Tool; @@ -110,7 +110,7 @@ public class GT_Tool_Scoop extends GT_Tool { @Override public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) { - if (Loader.isModLoaded(GT_Values.MOD_ID_FR)) { + if (Forestry.isModLoaded()) { aItem.addItemBehavior(aID, new Behaviour_Scoop(200)); } else { aItem.addItemBehavior(aID, new Behaviour_None()); diff --git a/src/main/java/gregtech/loaders/materialprocessing/ProcessingModSupport.java b/src/main/java/gregtech/loaders/materialprocessing/ProcessingModSupport.java index 58808e2162..e876252137 100644 --- a/src/main/java/gregtech/loaders/materialprocessing/ProcessingModSupport.java +++ b/src/main/java/gregtech/loaders/materialprocessing/ProcessingModSupport.java @@ -1,25 +1,23 @@ package gregtech.loaders.materialprocessing; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.*; -import cpw.mods.fml.common.Loader; -import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; public class ProcessingModSupport implements gregtech.api.interfaces.IMaterialHandler { - public static boolean aTGregSupport = Loader.isModLoaded("TGregworks") || Loader.isModLoaded(MOD_ID_DC); - public static boolean aEnableUBCMats = Loader.isModLoaded("UndergroundBiomes") || aTGregSupport; - public static boolean aEnableThaumcraftMats = Loader.isModLoaded("Thaumcraft") || aTGregSupport; - public static boolean aEnableRotaryCraftMats = Loader.isModLoaded("RotaryCraft") || aTGregSupport; - public static boolean aEnableThermalFoundationMats = Loader.isModLoaded("ThermalFoundation") || aTGregSupport; - public static boolean aEnableEnderIOMats = Loader.isModLoaded("EnderIO") || aTGregSupport; - public static boolean aEnableRailcraftMats = Loader.isModLoaded(GT_Values.MOD_ID_RC) || aTGregSupport; - public static boolean aEnableGCMarsMats = Loader.isModLoaded("GalacticraftMars") || aTGregSupport; - public static boolean aEnableTwilightMats = Loader.isModLoaded(GT_Values.MOD_ID_TF) || aTGregSupport; - public static boolean aEnableMetallurgyMats = Loader.isModLoaded("Metallurgy") || aTGregSupport; - public static boolean aEnableProjectRedMats = Loader.isModLoaded("ProjRed|Core") || aTGregSupport; + public static boolean aTGregSupport = TinkersGregworks.isModLoaded() || NewHorizonsCoreMod.isModLoaded(); + public static boolean aEnableUBCMats = UndergroundBiomes.isModLoaded() || aTGregSupport; + public static boolean aEnableThaumcraftMats = Thaumcraft.isModLoaded() || aTGregSupport; + public static boolean aEnableRotaryCraftMats = RotaryCraft.isModLoaded() || aTGregSupport; + public static boolean aEnableThermalFoundationMats = ThermalFondation.isModLoaded() || aTGregSupport; + public static boolean aEnableEnderIOMats = EnderIO.isModLoaded() || aTGregSupport; + public static boolean aEnableRailcraftMats = Railcraft.isModLoaded() || aTGregSupport; + public static boolean aEnableGCMarsMats = GalacticraftMars.isModLoaded() || aTGregSupport; + public static boolean aEnableTwilightMats = TwilightForest.isModLoaded() || aTGregSupport; + public static boolean aEnableMetallurgyMats = Metallurgy.isModLoaded() || aTGregSupport; + public static boolean aEnableProjectRedMats = ProjectRedCore.isModLoaded() || aTGregSupport; public ProcessingModSupport() { Materials.add(this); @@ -140,12 +138,12 @@ public class ProcessingModSupport implements gregtech.api.interfaces.IMaterialHa } // Enable Materials if correct mod is Loaded - Materials.ChromiumDioxide.mHasParentMod = Loader.isModLoaded("computronics"); + Materials.ChromiumDioxide.mHasParentMod = Computronics.isModLoaded(); } @Override public void onComponentInit() { - if (Loader.isModLoaded("computronics")) { + if (Computronics.isModLoaded()) { OrePrefixes.ring.enableComponent(Materials.RedAlloy); OrePrefixes.ring.enableComponent(Materials.NiobiumTitanium); OrePrefixes.foil.enableComponent(Materials.StainlessSteel); diff --git a/src/main/java/gregtech/loaders/misc/GT_Achievements.java b/src/main/java/gregtech/loaders/misc/GT_Achievements.java index 58f56cbd70..59abc0566a 100644 --- a/src/main/java/gregtech/loaders/misc/GT_Achievements.java +++ b/src/main/java/gregtech/loaders/misc/GT_Achievements.java @@ -1,5 +1,7 @@ package gregtech.loaders.misc; +import static gregtech.api.enums.ModIDs.Thaumcraft; + import java.util.concurrent.ConcurrentHashMap; import net.minecraft.entity.player.EntityPlayer; @@ -15,7 +17,6 @@ import net.minecraftforge.fluids.FluidStack; import thaumcraft.api.ThaumcraftApiHelper; import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.PlayerEvent.ItemCraftedEvent; import cpw.mods.fml.common.gameevent.PlayerEvent.ItemSmeltedEvent; @@ -746,7 +747,7 @@ public class GT_Achievements { } else if (data.mMaterial.mMaterial == Materials.Steel) { if (data.mPrefix == OrePrefixes.ingot && stack.stackSize == stack.getMaxStackSize()) { issueAchievement(player, "steel"); - } else if (data.mPrefix == OrePrefixes.nugget && Loader.isModLoaded("Thaumcraft") + } else if (data.mPrefix == OrePrefixes.nugget && Thaumcraft.isModLoaded() && ThaumcraftApiHelper.isResearchComplete(player.getDisplayName(), "GT_IRON_TO_STEEL")) { issueAchievement(player, "steel"); } diff --git a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java index b34527e26f..fc5d79572f 100644 --- a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java +++ b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java @@ -5,7 +5,7 @@ import static forestry.api.core.EnumHumidity.ARID; import static forestry.api.core.EnumHumidity.DAMP; import static forestry.api.core.EnumTemperature.*; import static forestry.core.genetics.alleles.EnumAllele.*; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.*; import static gregtech.loaders.misc.GT_BeeDefinitionReference.*; import java.awt.*; @@ -20,7 +20,6 @@ import net.minecraft.item.ItemStack; import org.apache.commons.lang3.text.WordUtils; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.registry.GameRegistry; import forestry.api.apiculture.*; import forestry.api.core.EnumHumidity; @@ -63,7 +62,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { // organic CLAY(GT_BranchDefinition.ORGANIC, "Clay", true, new Color(0xC8C8DA), new Color(0x0000FF), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 0), 0.30f); beeSpecies.addProduct(new ItemStack(Items.clay_ball, 1), 0.15f); beeSpecies.addSpecialty(GT_ModHandler.getModItem("BiomesOPlenty", "mudball", 1, 0), 0.05f); beeSpecies.setHumidity(DAMP); @@ -78,14 +77,14 @@ public enum GT_BeeDefinition implements IBeeDefinition { tMutation.requireResource(Blocks.clay, 0); // blockStainedHardenedClay }), SLIMEBALL(GT_BranchDefinition.ORGANIC, "SlimeBall", true, new Color(0x4E9E55), new Color(0x00FF15), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 15), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 15), 0.30f); beeSpecies.addProduct(new ItemStack(Items.slime_ball, 1), 0.15f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STICKY), 0.05f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); - if (Loader.isModLoaded("TConstruct")) { - beeSpecies.addProduct(GT_ModHandler.getModItem("TConstruct", "strangeFood", 1, 0), 0.10f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem("TConstruct", "slime.gel", 1, 2), 0.02f); + if (TinkerConstruct.isModLoaded()) { + beeSpecies.addProduct(GT_ModHandler.getModItem(TinkerConstruct.modID, "strangeFood", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(TinkerConstruct.modID, "slime.gel", 1, 2), 0.02f); } }, template -> { AlleleHelper.instance.set(template, FLOWER_PROVIDER, Flowers.MUSHROOMS); @@ -95,14 +94,14 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, FLOWER_PROVIDER, getFlowers(EXTRABEES, "water")); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Marshy"), CLAY, 7); - if (Loader.isModLoaded("TConstruct")) - tMutation.requireResource(GameRegistry.findBlock("TConstruct", "slime.gel"), 1); + if (TinkerConstruct.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(TinkerConstruct.modID, "slime.gel"), 1); }), PEAT(GT_BranchDefinition.ORGANIC, "Peat", true, new Color(0x906237), new Color(0x58300B), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.LIGNIE), 0.30f); - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.15f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "peat", 1, 0), 0.15f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "mulch", 1, 0), 0.05f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 0), 0.15f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(Forestry.modID, "peat", 1, 0), 0.15f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(Forestry.modID, "mulch", 1, 0), 0.05f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); }, template -> { @@ -114,7 +113,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> dis.registerMutation(getSpecies(FORESTRY, "Rural"), CLAY, 10)), STICKYRESIN(GT_BranchDefinition.ORGANIC, "StickyResin", true, new Color(0x2E8F5B), new Color(0xDCC289), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 0), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STICKY), 0.15f); beeSpecies.addSpecialty(ItemList.IC2_Resin.get(1), 0.15f); beeSpecies.setHumidity(EnumHumidity.NORMAL); @@ -144,7 +143,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { tMutation.requireResource("blockCoal"); }), OIL(GT_BranchDefinition.ORGANIC, "Oil", true, new Color(0x4C4C4C), new Color(0x333333), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 0), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 0), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.OIL), 0.75f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -657,7 +656,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { // IC2 COOLANT(GT_BranchDefinition.IC2, "Coolant", false, new Color(0x144F5A), new Color(0x2494A2), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 4), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 4), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.COOLANT), 0.15f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(COLD); @@ -775,7 +774,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), // Alloy REDALLOY(GT_BranchDefinition.GTALLOY, "RedAlloy", false, new Color(0xE60000), new Color(0xB80000), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.REDALLOY), 0.15f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -788,7 +787,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), REDSTONEALLOY(GT_BranchDefinition.GTALLOY, "RedStoneAlloy", false, new Color(0xA50808), new Color(0xE80000), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.REDSTONEALLOY), 0.15f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -801,7 +800,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), CONDUCTIVEIRON(GT_BranchDefinition.GTALLOY, "ConductiveIron", false, new Color(0xCEADA3), new Color(0x817671), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.CONDUCTIVEIRON), 0.15f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(WARM); @@ -815,7 +814,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), ENERGETICALLOY(GT_BranchDefinition.GTALLOY, "EnergeticAlloy", false, new Color(0xFF9933), new Color(0xFFAD5C), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ENERGETICALLOY), 0.15f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -828,7 +827,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), VIBRANTALLOY(GT_BranchDefinition.GTALLOY, "VibrantAlloy", false, new Color(0x86A12D), new Color(0xC4F2AE), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.VIBRANTALLOY), 0.15f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -845,7 +844,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), ELECTRICALSTEEL(GT_BranchDefinition.GTALLOY, "ElectricalSteel", false, new Color(0x787878), new Color(0xD8D8D8), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ELECTRICALSTEEL), 0.15f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -857,7 +856,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { tMutation.requireResource("blockElectricalSteel"); }), DARKSTEEL(GT_BranchDefinition.GTALLOY, "DarkSteel", false, new Color(0x252525), new Color(0x443B44), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.DARKSTEEL), 0.15f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(COLD); @@ -870,7 +869,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), PULSATINGIRON(GT_BranchDefinition.GTALLOY, "PulsatingIron", false, new Color(0x6DD284), new Color(0x006600), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 7), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 7), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.PULSATINGIRON), 0.15f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -923,14 +922,14 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(Explosive, DIAMOND, 2); - if (Loader.isModLoaded("ExtraUtilities")) - tMutation.requireResource(GameRegistry.findBlock("ExtraUtilities", "block_bedrockium"), 0); + if (ExtraUtilities.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(ExtraUtilities.modID, "block_bedrockium"), 0); }), // thaumic THAUMIUMDUST(GT_BranchDefinition.THAUMIC, "ThaumiumDust", true, new Color(0x7A007A), new Color(0x5C005C), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 3), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 3), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.THAUMIUMDUST), 0.20f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -968,7 +967,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { // forest }), AMBER(GT_BranchDefinition.THAUMIC, "Amber", true, new Color(0xEE7700), new Color(0x774B15), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 3), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 3), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.AMBER), 0.20f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -983,7 +982,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }), QUICKSILVER(GT_BranchDefinition.THAUMIC, "Quicksilver", true, new Color(0x7A007A), new Color(0x5C005C), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 3), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 3), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.QUICKSILVER), 0.20f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -996,7 +995,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> dis.registerMutation(THAUMIUMDUST, SILVER, 10)), SALISMUNDUS(GT_BranchDefinition.THAUMIC, "SalisMundus", true, new Color(0xF7ADDE), new Color(0x592582), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 3), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 3), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.SALISMUNDUS), 0.20f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1014,7 +1013,7 @@ public enum GT_BeeDefinition implements IBeeDefinition { // forest }), TAINTED(GT_BranchDefinition.THAUMIC, "Tainted", true, new Color(0x904BB8), new Color(0xE800FF), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 3), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 3), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.TAINTED), 0.20f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1088,8 +1087,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, NOCTURNAL, true); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(MAGICBEES, "TCOrder"), THAUMIUMDUST, 8); - if (Loader.isModLoaded("thaumicbases")) - tMutation.requireResource(GameRegistry.findBlock("thaumicbases", "thauminiteBlock"), 0); + if (ThaumicBases.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(ThaumicBases.modID, "thauminiteBlock"), 0); }), SHADOWMETAL(GT_BranchDefinition.THAUMIC, "ShadowMetal", true, new Color(0x100322), new Color(0x100342), beeSpecies -> { @@ -1108,7 +1107,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis .registerMutation(getSpecies(MAGICBEES, "TCChaos"), getSpecies(MAGICBEES, "TCVoid"), 6); - if (Loader.isModLoaded("TaintedMagic")) tMutation.requireResource("blockShadow"); + if (TaintedMagic.isModLoaded()) { + tMutation.requireResource("blockShadow"); + } }), DIVIDED(GT_BranchDefinition.THAUMIC, "Unstable", true, new Color(0xF0F0F0), new Color(0xDCDCDC), beeSpecies -> { beeSpecies.addProduct(GT_ModHandler.getModItem("ExtraBees", "honeyComb", 1, 61), 0.20f); @@ -1123,8 +1124,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, NOCTURNAL, true); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(DIAMOND, IRON, 3); - if (Loader.isModLoaded("ExtraUtilities")) - tMutation.requireResource(GameRegistry.findBlock("ExtraUtilities", "decorativeBlock1"), 5); + if (ExtraUtilities.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(ExtraUtilities.modID, "decorativeBlock1"), 5); }), CAELESTIS(GT_BranchDefinition.THAUMIC, "Caelestis", true, new Color(0xF0F0F0), new Color(0xDCDCDC), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.CAELESTISRED), 0.60f); @@ -1171,8 +1172,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, EFFECT, AlleleEffect.effectReanimation); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(SHADOWMETAL, SPARKELING, 5); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCrystal"), 6); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCrystal"), 6); }), // radioctive @@ -1246,8 +1247,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(NAQUADAH, THAUMIUMSHARD, 2); - if (Loader.isModLoaded("AdvancedSolarPanel")) - tMutation.requireResource(GameRegistry.findBlock("AdvancedSolarPanel", "BlockAdvSolarPanel"), 2); + if (AdvancedSolarPanel.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(AdvancedSolarPanel.modID, "BlockAdvSolarPanel"), 2); tMutation.addMutationCondition(new GT_Bees.BiomeIDMutationCondition(9, "END Biome")); // sky end biome }), THORIUM(GT_BranchDefinition.RADIOACTIVE, "Thorium", false, new Color(0x005000), new Color(0x001E00), beeSpecies -> { @@ -1360,8 +1361,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(HYDRA, THAUMIUMDUST, 5); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCosmeticSolid"), 4); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCosmeticSolid"), 4); tMutation.restrictTemperature(HELLISH); }), SNOWQUEEN(GT_BranchDefinition.TWILIGHT, "SnowQueen", true, new Color(0xD02001), new Color(0x9C0018), beeSpecies -> { @@ -1373,13 +1374,13 @@ public enum GT_BeeDefinition implements IBeeDefinition { beeSpecies.setNocturnal(); }, template -> {}, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(URGHAST, SALISMUNDUS, 4); - if (Loader.isModLoaded("thaumicbases")) - tMutation.requireResource(GameRegistry.findBlock("thaumicbases", "blockSalisMundus"), 0); + if (ThaumicBases.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(ThaumicBases.modID, "blockSalisMundus"), 0); tMutation.restrictTemperature(ICY); }), // HEE ENDDUST(GT_BranchDefinition.HEE, "End Dust", true, new Color(0xCC00FA), new Color(0x003A7D), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ENDDUST), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1388,12 +1389,12 @@ public enum GT_BeeDefinition implements IBeeDefinition { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Ended"), STAINLESSSTEEL, 8); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "end_powder_ore"), 0); + if (HardcoreEnderExpansion.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "end_powder_ore"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), ENDIUM(GT_BranchDefinition.HEE, "Endium", true, new Color(0xa0ffff), new Color(0x2F5A6C), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ENDIUM), 0.10f); beeSpecies.addSpecialty(GT_Bees.propolis.getStackForType(PropolisType.Endium), 0.15f); beeSpecies.addSpecialty(GT_Bees.drop.getStackForType(DropType.ENDERGOO), 0.10f); @@ -1403,11 +1404,11 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.NORMAL), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Ended"), THAUMIUMDUST, 8); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) tMutation.requireResource("blockHeeEndium"); + if (HardcoreEnderExpansion.isModLoaded()) tMutation.requireResource("blockHeeEndium"); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), STARDUST(GT_BranchDefinition.HEE, "Star Dust", true, new Color(0xffff00), new Color(0xDCBE13), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.STARDUST), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1419,12 +1420,12 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Ended"), ZINC, 8); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "stardust_ore"), 0); + if (HardcoreEnderExpansion.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "stardust_ore"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), ECTOPLASMA(GT_BranchDefinition.HEE, "Ectoplasma", true, new Color(0xDCB0E5), new Color(0x381C40), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ECTOPLASMA), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1436,13 +1437,13 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(FORESTRY, "Ended"), ENDDUST, 5); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "spooky_log"), 0); + if (HardcoreEnderExpansion.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "spooky_log"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), ARCANESHARDS(GT_BranchDefinition.HEE, "Arcane Shards", true, new Color(0x9010AD), new Color(0x333D82), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ARCANESHARD), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1454,13 +1455,13 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(THAUMIUMSHARD, ENDDUST, 5); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "laboratory_floor"), 0); + if (HardcoreEnderExpansion.isModLoaded()) tMutation + .requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "laboratory_floor"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), DRAGONESSENCE(GT_BranchDefinition.HEE, "Dragonessence", true, new Color(0xFFA12B), new Color(0x911ECE), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.DRAGONESSENCE), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1473,12 +1474,12 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(ECTOPLASMA, ARCANESHARDS, 4); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "essence_altar"), 1); + if (HardcoreEnderExpansion.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "essence_altar"), 1); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), FIREESSENCE(GT_BranchDefinition.HEE, "Fireessence", true, new Color(0xD41238), new Color(0xFFA157), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.FIREESSENSE), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HELLISH); @@ -1491,12 +1492,12 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(FIRESTONE, ARCANESHARDS, 4); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "essence_altar"), 2); + if (HardcoreEnderExpansion.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "essence_altar"), 2); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), ENDERMANHEAD(GT_BranchDefinition.HEE, "Enderman", true, new Color(0x161616), new Color(0x6200e7), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.ENDERMAN), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1509,12 +1510,12 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(ENDERIUM, STARDUST, 4); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "ender_goo"), 0); + if (HardcoreEnderExpansion.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "ender_goo"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), SILVERFISH(GT_BranchDefinition.HEE, "Silverfisch", true, new Color(0xEE053D), new Color(0x000000), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.SILVERFISH), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(EnumTemperature.NORMAL); @@ -1527,12 +1528,12 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(ECTOPLASMA, STARDUST, 5); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("HardcoreEnderExpansion")) - tMutation.requireResource(GameRegistry.findBlock("HardcoreEnderExpansion", "ender_goo"), 0); + if (HardcoreEnderExpansion.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(HardcoreEnderExpansion.modID, "ender_goo"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), RUNE(GT_BranchDefinition.HEE, "Rune", true, new Color(0xE31010), new Color(0x0104D9), beeSpecies -> { - beeSpecies.addProduct(GT_ModHandler.getModItem(GT_Values.MOD_ID_FR, "beeCombs", 1, 8), 0.30f); + beeSpecies.addProduct(GT_ModHandler.getModItem(Forestry.modID, "beeCombs", 1, 8), 0.30f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.RUNEI), 0.025f); beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.RUNEII), 0.0125f); beeSpecies.setHumidity(ARID); @@ -1546,8 +1547,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IMutationCustom tMutation = dis.registerMutation(DRAGONESSENCE, STARDUST, 2).setIsSecret(); tMutation.restrictHumidity(ARID); - if (Loader.isModLoaded("EnderStorage")) - tMutation.requireResource(GameRegistry.findBlock("EnderStorage", "enderChest"), 0); + if (EnderStorage.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(EnderStorage.modID, "enderChest"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(1, "End")); // End Dim }), // Walrus Bee, 100% Combchance, Parents: Catty and Watery @@ -1565,8 +1566,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, dis -> { IBeeMutationCustom tMutation = dis .registerMutation(getSpecies(MAGICBEES, "Watery"), getSpecies(MAGICBEES, "Catty"), 45, 2); - if (Loader.isModLoaded("extracells")) - tMutation.requireResource(GameRegistry.findBlock("extracells", "walrus"), 0); + if (ExtraCells2.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(ExtraCells2.modID, "walrus"), 0); + } }), // Space Bees SPACE(GT_BranchDefinition.SPACE, "Space", true, new Color(0x003366), new Color(0xC0C0C0), beeSpecies -> { @@ -1619,8 +1621,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(CALLISTO, LEAD, 7); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.Ledox"), 0); + if (NewHorizonsCoreMod.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.Ledox"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(35, "Europa")); // Europa Dim } }), @@ -1637,8 +1639,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(CALLISTO, getSpecies(EXTRABEES, "freezing"), 7); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.CallistoColdIce"), 0); + if (NewHorizonsCoreMod.isModLoaded()) tMutation.requireResource( + GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.CallistoColdIce"), + 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(45, "Callisto")); // Callisto // Dim } @@ -1655,8 +1658,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(IO, MITHRIL, 6); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.Mytryl"), 0); + if (NewHorizonsCoreMod.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.Mytryl"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(36, "IO")); // IO Dim } }), @@ -1672,8 +1675,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(VENUS, OSMIUM, 6); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.Quantinum"), 0); + if (NewHorizonsCoreMod.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.Quantinum"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(39, "Venus")); // Venus Dim } }), @@ -1688,8 +1691,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(LEAD, OBERON, 5); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "metalsblock"), 6); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "metalsblock"), 6); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(46, "Oberon")); // Oberon Dim } }), @@ -1706,8 +1709,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(ENCELADUS, EMERALD, 3); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.MysteriousCrystal"), 0); + if (NewHorizonsCoreMod.isModLoaded()) tMutation.requireResource( + GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.MysteriousCrystal"), + 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(41, "Enceladus")); // Enceladus // Dim } @@ -1725,8 +1729,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(PLUTO, PLUTONIUM, 2); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.BlackPlutonium"), 0); + if (NewHorizonsCoreMod.isModLoaded()) tMutation.requireResource( + GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.BlackPlutonium"), + 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(49, "Pluto")); // Pluto Dim } }), @@ -1749,299 +1754,335 @@ public enum GT_BeeDefinition implements IBeeDefinition { // Planet Line MOON(GT_BranchDefinition.PLANET, "Moon", false, new Color(0x373735), new Color(0x7E7E78), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.MOON), 0.35f); - if (Loader.isModLoaded(MOD_ID_DC)) - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.MoonStoneDust", 1, 0), 0.10f); + if (NewHorizonsCoreMod.isModLoaded()) beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MoonStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(COLD); beeSpecies.setNocturnal(); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(SPACE, CLAY, 25); - if (Loader.isModLoaded("GalacticraftCore")) - tMutation.requireResource(GameRegistry.findBlock("GalacticraftCore", "tile.moonBlock"), 4); + if (GalacticraftCore.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(GalacticraftCore.modID, "tile.moonBlock"), 4); + } tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(28, "Moon")); // Moon Dim }), MARS(GT_BranchDefinition.PLANET, "Mars", false, new Color(0x220D05), new Color(0x3A1505), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.MARS), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.MarsStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MarsStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); beeSpecies.setNocturnal(); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MOON, IRON, 20); - if (Loader.isModLoaded("GalacticraftMars")) - tMutation.requireResource(GameRegistry.findBlock("GalacticraftMars", "tile.mars"), 5); + if (GalacticraftMars.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(GalacticraftMars.modID, "tile.mars"), 5); + } tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(29, "Mars")); // Mars Dim }), PHOBOS(GT_BranchDefinition.PLANET, "Phobos", true, new Color(0x220D05), new Color(0x7a5706), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.MARS), 0.25f); - if (Loader.isModLoaded(MOD_ID_DC)) - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.PhobosStoneDust", 1, 0), 0.10f); + if (NewHorizonsCoreMod.isModLoaded()) beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.PhobosStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MARS, MOON, 20); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "phobosblocks"), 2); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "phobosblocks"), 2); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(38, "Phobos")); // Phobos Dim }), DEIMOS(GT_BranchDefinition.PLANET, "Deimos", true, new Color(0x220D05), new Color(0x7a3206), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.MARS), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.DeimosStoneDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.DeimosStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(HOT); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MARS, SPACE, 20); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "deimosblocks"), 1); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "deimosblocks"), 1); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(40, "Deimos")); // Deimos Dim }), CERES(GT_BranchDefinition.PLANET, "Ceres", true, new Color(0x3ca5b7), new Color(0x1e7267), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.JUPITER), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.CeresStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CeresStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MARS, METEORICIRON, 20); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "ceresblocks"), 1); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "ceresblocks"), 1); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(42, "Ceres")); // Ceres Dim }), JUPITER(GT_BranchDefinition.PLANET, "Jupiter", false, new Color(0x734B2E), new Color(0xD0CBC4), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.JUPITER), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.CallistoStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.CallistoIceDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.IoStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EuropaStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EuropaIceDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.GanymedeStoneDust", 1, 0), 0.05f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CallistoStoneDust", 1, 0), + 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CallistoIceDust", 1, 0), 0.05f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.IoStoneDust", 1, 0), 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EuropaStoneDust", 1, 0), 0.05f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EuropaIceDust", 1, 0), 0.05f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.GanymedeStoneDust", 1, 0), + 0.05f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); beeSpecies.setNocturnal(); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MARS, DESH, 15); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.Ledox"), 0); + if (NewHorizonsCoreMod.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.Ledox"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(30, "Asteriods")); // Asteriods Dim }), IO(GT_BranchDefinition.PLANET, "IO", true, new Color(0x734B2E), new Color(0xe5701b), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.JUPITER), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.IoStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.IoStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HELLISH); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(JUPITER, getSpecies(EXTRABEES, "volcanic"), 15); tMutation.restrictTemperature(HELLISH); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "ioblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "ioblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(36, "IO")); // IO Dim }), EUROPA(GT_BranchDefinition.PLANET, "Europa", true, new Color(0x5982ea), new Color(0x0b36a3), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.JUPITER), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EuropaStoneDust", 1, 0), 0.10f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EuropaIceDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EuropaStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EuropaIceDust", 1, 0), 0.10f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(ICY); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(JUPITER, IRON, 15); tMutation.restrictTemperature(ICY); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "europagrunt"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "europagrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(35, "Europa")); // Europa Dim }), GANYMEDE(GT_BranchDefinition.PLANET, "Ganymede", true, new Color(0x3d1b10), new Color(0x190c07), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.JUPITER), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.GanymedeStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.GanymedeStoneDust", 1, 0), + 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(COLD); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(JUPITER, TITANIUM, 15); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "ganymedeblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "ganymedeblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(43, "Ganymede")); // Ganymede Dim }), CALLISTO(GT_BranchDefinition.PLANET, "Callisto", true, new Color(0x0f333d), new Color(0x0d84a5), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.JUPITER), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.CallistoStoneDust", 1, 0), 0.10f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.CallistoIceDust", 1, 0), 0.10f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CallistoStoneDust", 1, 0), + 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CallistoIceDust", 1, 0), 0.10f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(ICY); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(JUPITER, getSpecies(EXTRABEES, "artic"), 15); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "callistoblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "callistoblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(45, "Callisto")); // Callisto Dim }), SATURN(GT_BranchDefinition.PLANET, "Saturn", false, new Color(0xD2A472), new Color(0xF8C37B), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SATURN), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.TitanStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EnceladusStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EnceladusIceDust", 1, 0), 0.05f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TitanStoneDust", 1, 0), 0.05f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EnceladusStoneDust", 1, 0), + 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EnceladusIceDust", 1, 0), 0.05f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(COLD); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(JUPITER, LEDOX, 25, 2); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.Quantinum"), 0); + if (NewHorizonsCoreMod.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.Quantinum"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(30, "Asteriods")); // Asteriods Dim }), ENCELADUS(GT_BranchDefinition.PLANET, "Enceladus", true, new Color(0xD2A472), new Color(0x193fa0), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SATURN), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EnceladusStoneDust", 1, 0), 0.10f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.EnceladusIceDust", 1, 0), 0.10f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EnceladusStoneDust", 1, 0), + 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EnceladusIceDust", 1, 0), 0.10f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(ICY); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(SATURN, CHROME, 25, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "enceladusblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "enceladusblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(41, "Enceladus")); // Enceladus Dim }), TITAN(GT_BranchDefinition.PLANET, "Titan", true, new Color(0xa0641b), new Color(0x7c1024), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SATURN), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.TitanStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TitanStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(SATURN, NICKEL, 25, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "titanblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "titanblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(44, "Titan")); // Titan Dim }), URANUS(GT_BranchDefinition.PLANET, "Uranus", false, new Color(0x75C0C9), new Color(0x84D8EC), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.URANUS), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.MirandaStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.OberonStoneDust", 1, 0), 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MirandaStoneDust", 1, 0), 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.OberonStoneDust", 1, 0), 0.05f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(ICY); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(SATURN, TRINIUM, 10); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "metalsblock"), 6); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "metalsblock"), 6); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(30, "Asteroids")); // Asteroids Dim }), MIRANDA(GT_BranchDefinition.PLANET, "Miranda", true, new Color(0x75C0C9), new Color(0x0d211c), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.URANUS), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.MirandaStoneDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MirandaStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(ICY); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(URANUS, TIN, 10); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "mirandablocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "mirandablocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(86, "Miranda")); // Miranda Dim }), OBERON(GT_BranchDefinition.PLANET, "Oberon", true, new Color(0x4A4033), new Color(0xB5A288), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.URANUS), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.OberonStoneDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.OberonStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(ICY); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(URANUS, IRIDIUM, 10); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "oberonblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "oberonblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(46, "Oberon")); // Oberon Dim }), NEPTUNE(GT_BranchDefinition.PLANET, "Neptune", false, new Color(0x334CFF), new Color(0x576DFF), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.NEPTUN), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.ProteusStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.TritonStoneDust", 1, 0), 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.ProteusStoneDust", 1, 0), 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TritonStoneDust", 1, 0), 0.05f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(COLD); beeSpecies.setNocturnal(); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(URANUS, ORIHARUKON, 7); - if (Loader.isModLoaded(MOD_ID_DC)) - tMutation.requireResource(GameRegistry.findBlock(MOD_ID_DC, "tile.MysteriousCrystal"), 0); + if (NewHorizonsCoreMod.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(NewHorizonsCoreMod.modID, "tile.MysteriousCrystal"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(30, "Asteroids")); // Asteroids Dim }), PROTEUS(GT_BranchDefinition.PLANET, "Proteus", true, new Color(0x334CFF), new Color(0x592610), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.NEPTUN), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.ProteusStoneDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.ProteusStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(EnumHumidity.NORMAL); beeSpecies.setTemperature(COLD); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(NEPTUNE, COPPER, 7); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "proteusblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "proteusblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(47, "Proteus")); // Proteus Dim }), TRITON(GT_BranchDefinition.PLANET, "Triton", true, new Color(0x334CFF), new Color(0x421118), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.NEPTUN), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.TritonStoneDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TritonStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(ICY); beeSpecies.setNocturnal(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(NEPTUNE, GOLD, 7); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "tritonblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "tritonblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(48, "Triton")); // Triton Dim }), PLUTO(GT_BranchDefinition.PLANET, "Pluto", false, new Color(0x34271E), new Color(0x69503D), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.PLUTO), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.PlutoStoneDust", 1, 0), 0.10f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.PlutoIceDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.PlutoStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.PlutoIceDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(ICY); beeSpecies.setNocturnal(); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(NEPTUNE, PLUTONIUM, 5); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "plutoblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "plutoblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(49, "Pluto")); // Pluto Dim }), HAUMEA(GT_BranchDefinition.PLANET, "Haumea", false, new Color(0x1C1413), new Color(0x392B28), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.HAUMEA), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.HaumeaStoneDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.HaumeaStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(ICY); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(PLUTO, NAQUADAH, 7, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "haumeablocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "haumeablocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(83, "Haumea")); // Haumea Dim }), MAKEMAKE(GT_BranchDefinition.PLANET, "MakeMake", false, new Color(0x301811), new Color(0x120A07), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.MAKEMAKE), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.MakeMakeStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.MakeMakeStoneDust", 1, 0), + 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(PLUTO, NAQUADRIA, 7, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "makemakegrunt"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "makemakegrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(25, "MakeMake")); // MakeMake Dim }), CENTAURI(GT_BranchDefinition.PLANET, "Centauri", false, new Color(0x2F2A14), new Color(0xB06B32), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.CENTAURI), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.CentauriASurfaceDust", 1, 0), 0.05f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CentauriASurfaceDust", 1, 0), + 0.05f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HELLISH); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MAKEMAKE, DESH, 3); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "acentauribbgrunt"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "acentauribbgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(33, "Kuiper Belt")); // Kuiper Belt Dim }), ACENTAURI(GT_BranchDefinition.PLANET, "aCentauri", false, new Color(0x2F2A14), new Color(0xa01e14), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.CENTAURI), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.CentauriASurfaceDust", 1, 0), 0.10f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CentauriASurfaceDust", 1, 0), + 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HELLISH); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), new Consumer() { @@ -2049,40 +2090,43 @@ public enum GT_BeeDefinition implements IBeeDefinition { @Override public void accept(GT_BeeDefinition dis) { IBeeMutationCustom tMutation = dis.registerMutation(CENTAURI, INFINITYCATALYST, 3); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "acentauribbgrunt"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "acentauribbgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(31, "aCentauri")); // aCentauri Dim } }), TCETI(GT_BranchDefinition.PLANET, "tCeti", false, new Color(0x46241A), new Color(0x7B412F), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.TCETI), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.TCetiEStoneDust", 1, 0), 0.05f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TCetiEStoneDust", 1, 0), 0.05f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); beeSpecies.setNocturnal(); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MAKEMAKE, HAUMEA, 5, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "tcetieblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "tcetieblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(33, "Kuiper Belt")); // Kuiper Belt Dim }), TCETIE(GT_BranchDefinition.PLANET, "tCetiE", false, new Color(0x2d561b), new Color(0x0c0f60), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.TCETI), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.TCetiEStoneDust", 1, 0), 0.10f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TCetiEStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(TCETI, getSpecies(MAGICBEES, "TCWater"), 5, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "tcetieblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "tcetieblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(85, "tCeti E")); // tCeti E Dim }), // Parents: TCETI and TCETIE, 25% combchance, needs Damp Humidity and Normal temperature. Is Mycophilic SEAWEED(GT_BranchDefinition.PLANET, "SeaWeed", true, new Color(0xCBCBCB), new Color(0x83FF83), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.SEAWEED), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.TCetiEStoneDust", 1, 0), 0.15f); + beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TCetiEStoneDust", 1, 0), 0.15f); beeSpecies.setHumidity(DAMP); beeSpecies.setTemperature(EnumTemperature.NORMAL); beeSpecies.setHasEffect(); @@ -2095,22 +2139,26 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, EFFECT, AlleleEffect.effectMycophilic); }, dis -> { IBeeMutationCustom tMutation = dis.registerMutation(TCETI, TCETIE, 5, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "tcetieblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "tcetieblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(85, "tCeti E")); // tCeti E Dim }), BARNARDA(GT_BranchDefinition.PLANET, "Barnarda", false, new Color(0x0D5A0D), new Color(0xE6C18D), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.BARNARDA), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.BarnardaEStoneDust", 1, 0), 0.05f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.BarnardaFStoneDust", 1, 0), 0.05f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.BarnardaEStoneDust", 1, 0), + 0.05f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.BarnardaFStoneDust", 1, 0), + 0.05f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MAKEMAKE, THORIUM, 3, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "barnardaEgrunt"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "barnardaEgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(33, "Kuiper Belt")); // Kuiper Belt Dim }), BARNARDAC(GT_BranchDefinition.PLANET, "BarnardaC", false, new Color(0x0D5A0D), new Color(0x473f0a), beeSpecies -> { @@ -2119,59 +2167,63 @@ public enum GT_BeeDefinition implements IBeeDefinition { beeSpecies.setTemperature(HOT); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(BARNARDA, AMERICIUM, 3, 2); - if (Loader.isModLoaded("GalaxySpace")) { - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "barnardaEgrunt"), 0); + if (GalaxySpace.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "barnardaEgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(32, "Barnarda C")); // Barnarda C Dim } }), BARNARDAE(GT_BranchDefinition.PLANET, "BarnardaE", false, new Color(0x0D5A0D), new Color(0x4c1f0a), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.BARNARDA), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.BarnardaEStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.BarnardaEStoneDust", 1, 0), + 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(BARNARDA, DIVIDED, 3, 2); - if (Loader.isModLoaded("GalaxySpace")) { - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "barnardaEgrunt"), 0); + if (GalaxySpace.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "barnardaEgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(81, "Barnard E")); // "Barnard E Dim } }), BARNARDAF(GT_BranchDefinition.PLANET, "BarnardaF", false, new Color(0x0D5A0D), new Color(0x1e0b49), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.BARNARDA), 0.25f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.BarnardaFStoneDust", 1, 0), 0.10f); + beeSpecies.addSpecialty( + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.BarnardaFStoneDust", 1, 0), + 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(HOT); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(BARNARDA, NEUTRONIUM, 3, 2); - if (Loader.isModLoaded("GalaxySpace")) { - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "barnardaFgrunt"), 0); + if (GalaxySpace.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "barnardaFgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(82, "Barnard F")); // "Barnard F Dim } }), VEGA(GT_BranchDefinition.PLANET, "Vega", false, new Color(0x1A2036), new Color(0xB5C0DE), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.VEGA), 0.35f); - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.VegaBStoneDust", 1, 0), 0.05f); + beeSpecies.addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.VegaBStoneDust", 1, 0), 0.05f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(COLD); beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(MAKEMAKE, NAQUADAH, 2); - if (Loader.isModLoaded("GalaxySpace")) { - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "vegabgrunt"), 0); + if (GalaxySpace.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "vegabgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(33, "Kuiper Belt")); // Kuiper Belt // Dim } }), VEGAB(GT_BranchDefinition.PLANET, "VegaB", false, new Color(0x1A2036), new Color(0x81e261), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.VEGA), 0.35f); - if (Loader.isModLoaded(MOD_ID_DC)) - beeSpecies.addSpecialty(GT_ModHandler.getModItem(MOD_ID_DC, "item.VegaBStoneDust", 1, 0), 0.10f); + if (NewHorizonsCoreMod.isModLoaded()) beeSpecies + .addSpecialty(GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.VegaBStoneDust", 1, 0), 0.10f); beeSpecies.setHumidity(ARID); beeSpecies.setTemperature(COLD); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(VEGA, NAQUADRIA, 2); - if (Loader.isModLoaded("GalaxySpace")) { - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "vegabgrunt"), 0); + if (GalaxySpace.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "vegabgrunt"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(84, "VegaB")); // VegaB Dim } }), @@ -2182,8 +2234,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(JUPITER, TUNGSTEN, 25, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "mercuryblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "mercuryblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(37, "Mercury")); // Mercury Dim }), VENUS(GT_BranchDefinition.PLANET, "Venus", false, new Color(0x4A4033), new Color(0xB5A288), beeSpecies -> { @@ -2193,8 +2245,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { beeSpecies.setHasEffect(); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(JUPITER, MITHRIL, 25, 2); - if (Loader.isModLoaded("GalaxySpace")) - tMutation.requireResource(GameRegistry.findBlock("GalaxySpace", "venusblocks"), 0); + if (GalaxySpace.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(GalaxySpace.modID, "venusblocks"), 0); tMutation.addMutationCondition(new GT_Bees.DimensionMutationCondition(39, "Venus")); // Venus Dim }), @@ -2210,8 +2262,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { beeSpecies.setJubilanceProvider(GT_JubilanceMegaApiary.instance); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(NEUTRONIUM, BARNARDAF, 7, 10); - if (Loader.isModLoaded("Avaritia")) - tMutation.requireResource(GameRegistry.findBlock("Avaritia", "Resource_Block"), 0); + if (Avaritia.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Avaritia.modID, "Resource_Block"), 0); }), INFINITYCATALYST(GT_BranchDefinition.PLANET, "InfinityCatalyst", false, new Color(0xFFFFFF), new Color(0xFFFFFF), beeSpecies -> { @@ -2227,8 +2279,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { AlleleHelper.instance.set(template, EFFECT, getEffect(EXTRABEES, "blindness")); }, dis -> { IMutationCustom tMutation = dis.registerMutation(DOB, COSMICNEUTRONIUM, 3, 10).setIsSecret(); - if (Loader.isModLoaded("Avaritia")) - tMutation.requireResource(GameRegistry.findBlock("Avaritia", "Resource_Block"), 1); + if (Avaritia.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(Avaritia.modID, "Resource_Block"), 1); + } }), INFINITY(GT_BranchDefinition.PLANET, "Infinity", false, new Color(0xFFFFFF), new Color(0xFFFFFF), beeSpecies -> { beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.INFINITY), 0.015f); @@ -2240,8 +2293,9 @@ public enum GT_BeeDefinition implements IBeeDefinition { beeSpecies.setJubilanceProvider(GT_JubilanceMegaApiary.instance); }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(INFINITYCATALYST, COSMICNEUTRONIUM, 1, 10); - if (Loader.isModLoaded("avaritiaddons")) - tMutation.requireResource(GameRegistry.findBlock("avaritiaddons", "InfinityChest"), 0); + if (AvaritiaAddons.isModLoaded()) { + tMutation.requireResource(GameRegistry.findBlock(AvaritiaAddons.modID, "InfinityChest"), 0); + } }), KEVLAR(GT_BranchDefinition.IC2, "kevlar", false, new Color(0x2d542f), new Color(0xa2baa3), beeSpecies -> { beeSpecies.addSpecialty(GT_Bees.combs.getStackForType(CombType.KEVLAR), 0.075f); @@ -2274,8 +2328,6 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(MAGICBEES, "Watery"), ENDDUST, 10); tMutation.restrictTemperature(ICY); - // if (Loader.isModLoaded("TwilightForest")) - // tMutation.requireResource(GameRegistry.findBlock("TwilightForest", "Aurora Block"), 0); }), // Argon bee, Humidity: normal, Temperature: Icy, Parents: Helium & Phobos, Mutationrate: 8%, Combrate: 50% ARGON(GT_BranchDefinition.NOBLEGAS, "Argon", false, new Color(0x89D9E1), new Color(0xBDA5C2), beeSpecies -> { @@ -2376,8 +2428,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { IBeeMutationCustom tMutation = dis .registerMutation(getSpecies(MAGICBEES, "Supernatural"), getSpecies(MAGICBEES, "Windy"), 15); tMutation.restrictTemperature(HOT); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCrystal"), 0); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCrystal"), 0); }), FIRE(GT_BranchDefinition.INFUSEDSHARD, "Fire", false, new Color(0xED3801), new Color(0x3B0E00), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.INFUSEDIGNIS), 0.30f); @@ -2386,8 +2438,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(getSpecies(MAGICBEES, "Supernatural"), AIR, 15); tMutation.restrictTemperature(HELLISH); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCrystal"), 1); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCrystal"), 1); }), WATER(GT_BranchDefinition.INFUSEDSHARD, "Water", false, new Color(0x0090FF), new Color(0x002542), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.INFUSEDAQUA), 0.30f); @@ -2396,8 +2448,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(FIRE, AIR, 15); tMutation.restrictTemperature(ICY); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCrystal"), 2); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCrystal"), 2); }), EARTH(GT_BranchDefinition.INFUSEDSHARD, "Earth", false, new Color(0x008600), new Color(0x003300), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.INFUSEDTERRA), 0.30f); @@ -2406,8 +2458,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(WATER, FIRE, 15); tMutation.restrictTemperature(WARM); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCrystal"), 3); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCrystal"), 3); }), ORDER(GT_BranchDefinition.INFUSEDSHARD, "Order", false, new Color(0x8A97B0), new Color(0x5C5F62), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.INFUSEDORDO), 0.30f); @@ -2416,8 +2468,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(EARTH, FIRE, 15); tMutation.restrictTemperature(ICY); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCrystal"), 4); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCrystal"), 4); }), CHAOS(GT_BranchDefinition.INFUSEDSHARD, "Chaos", false, new Color(0x2E2E41), new Color(0x232129), beeSpecies -> { beeSpecies.addProduct(GT_Bees.combs.getStackForType(CombType.INFUSEDPERDITIO), 0.30f); @@ -2426,8 +2478,8 @@ public enum GT_BeeDefinition implements IBeeDefinition { }, template -> AlleleHelper.instance.set(template, LIFESPAN, Lifespan.SHORTEST), dis -> { IBeeMutationCustom tMutation = dis.registerMutation(ORDER, FIRE, 15); tMutation.restrictTemperature(ICY); - if (Loader.isModLoaded("Thaumcraft")) - tMutation.requireResource(GameRegistry.findBlock("Thaumcraft", "blockCrystal"), 5); + if (Thaumcraft.isModLoaded()) + tMutation.requireResource(GameRegistry.findBlock(Thaumcraft.modID, "blockCrystal"), 5); }), NETHERSHARD(GT_BranchDefinition.INFUSEDSHARD, "Nethershard", false, new Color(0xBE0135), new Color(0x350211), beeSpecies -> { diff --git a/src/main/java/gregtech/loaders/misc/GT_Bees.java b/src/main/java/gregtech/loaders/misc/GT_Bees.java index 3b3849f588..c79702d72e 100644 --- a/src/main/java/gregtech/loaders/misc/GT_Bees.java +++ b/src/main/java/gregtech/loaders/misc/GT_Bees.java @@ -1,11 +1,10 @@ package gregtech.loaders.misc; -import static gregtech.api.enums.GT_Values.MOD_ID_FR; +import static gregtech.api.enums.ModIDs.Forestry; import net.minecraft.world.World; import net.minecraft.world.biome.BiomeGenBase; -import cpw.mods.fml.common.Loader; import forestry.api.apiculture.EnumBeeChromosome; import forestry.api.core.IClimateProvider; import forestry.api.genetics.*; @@ -42,19 +41,22 @@ public class GT_Bees { public static ItemComb combs; public GT_Bees() { - if (Loader.isModLoaded(MOD_ID_FR) && GT_Mod.gregtechproxy.mGTBees) { - GT_AlleleHelper.initialisation(); - setupGTAlleles(); - propolis = new ItemPropolis(); - propolis.initPropolisRecipes(); - pollen = new ItemPollen(); - drop = new ItemDrop(); - drop.initDropsRecipes(); - combs = new ItemComb(); - combs.initCombsRecipes(); - combs.registerOreDict(); - GT_BeeDefinition.initBees(); + if (!(Forestry.isModLoaded() && GT_Mod.gregtechproxy.mGTBees)) { + return; } + + GT_AlleleHelper.initialisation(); + setupGTAlleles(); + propolis = new ItemPropolis(); + propolis.initPropolisRecipes(); + pollen = new ItemPollen(); + drop = new ItemDrop(); + drop.initDropsRecipes(); + combs = new ItemComb(); + combs.initCombsRecipes(); + combs.registerOreDict(); + GT_BeeDefinition.initBees(); + } private static void setupGTAlleles() { diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java index 84fbf9c05d..8ff11d5121 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java @@ -1,6 +1,6 @@ package gregtech.loaders.oreprocessing; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; @@ -228,7 +228,7 @@ public class ProcessingCrafting implements gregtech.api.interfaces.IOreRecipeReg GT_Values.RA.addLaserEngraverRecipe( GT_OreDictUnificator.get(OrePrefixes.foil, Materials.RedAlloy, 1L), GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(MOD_ID_DC, "item.EtchedLowVoltageWiring", 1L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.EtchedLowVoltageWiring", 1L, 0), 200, 16); GT_Values.RA.addLaserEngraverRecipe( diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java index 1b7440b2af..de46e9d2f1 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java @@ -1,10 +1,9 @@ package gregtech.loaders.oreprocessing; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.Railcraft; import net.minecraft.item.ItemStack; -import cpw.mods.fml.common.Loader; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -21,7 +20,7 @@ public class ProcessingSlab implements gregtech.api.interfaces.IOreRecipeRegistr public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { if (aOreDictName.startsWith("slabWood")) { - if (Loader.isModLoaded(MOD_ID_RC)) { + if (Railcraft.isModLoaded()) { GT_Values.RA.addChemicalBathRecipe( GT_Utility.copyAmount(3L, aStack), Materials.Creosote.getFluid(300L), diff --git a/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java index 7a5b960b3a..c05002a14d 100644 --- a/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java @@ -1,5 +1,9 @@ package gregtech.loaders.postload; +import static gregtech.api.enums.ModIDs.*; +import static gregtech.api.enums.ModIDs.GraviSuite; +import static gregtech.api.util.GT_ModHandler.getModItem; + import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; @@ -11,7 +15,6 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; -import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.ConfigCategories; @@ -157,12 +160,14 @@ public class GT_CraftingRecipeLoader implements Runnable { ItemStack tStack = GT_ModHandler .removeRecipe(new ItemStack(Blocks.planks, 1, 0), null, null, new ItemStack(Blocks.planks, 1, 0)); if (tStack != null) { - GT_ModHandler.addCraftingRecipe( - GT_Utility.copyAmount( - GT_Mod.gregtechproxy.mNerfedWoodPlank ? tStack.stackSize : tStack.stackSize * 5 / 4, - tStack), - bits_no_remove_buffered, - new Object[] { "s", "P", "P", 'P', OrePrefixes.plank.get(Materials.Wood) }); + GT_ModHandler + .addCraftingRecipe( + GT_Utility.copyAmount( + GT_Mod.gregtechproxy.mNerfedWoodPlank ? tStack.stackSize + : tStack.stackSize * 5L / 4, + tStack), + bits_no_remove_buffered, + new Object[] { "s", "P", "P", 'P', OrePrefixes.plank.get(Materials.Wood) }); GT_ModHandler.addCraftingRecipe( GT_Utility.copyAmount( GT_Mod.gregtechproxy.mNerfedWoodPlank ? tStack.stackSize / 2 : tStack.stackSize, @@ -1342,66 +1347,6 @@ public class GT_CraftingRecipeLoader implements Runnable { OrePrefixes.dust.get(Materials.Coal) }); } if (GT_Mod.gregtechproxy.mNerfDustCrafting) { - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustTiny, - // Materials.YttriumBariumCuprate, 5L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dustTiny.get(Materials.Yttrium), OrePrefixes.dustTiny.get(Materials.Barium), - // OrePrefixes.dustTiny.get(Materials.Barium), OrePrefixes.dustTiny.get(Materials.AnyCopper), - // OrePrefixes.dustTiny.get(Materials.AnyCopper), OrePrefixes.dustTiny.get(Materials.AnyCopper)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.YttriumBariumCuprate, 23L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Yttrium), OrePrefixes.dust.get(Materials.Barium), - // OrePrefixes.dust.get(Materials.Barium), OrePrefixes.dust.get(Materials.AnyCopper), - // OrePrefixes.dust.get(Materials.AnyCopper), OrePrefixes.dust.get(Materials.AnyCopper)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 8L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.TungstenSteel), - // OrePrefixes.dust.get(Materials.TungstenSteel), OrePrefixes.dust.get(Materials.TungstenSteel), - // OrePrefixes.dust.get(Materials.TungstenSteel), OrePrefixes.dust.get(Materials.TungstenSteel), - // OrePrefixes.dust.get(Materials.Chrome), OrePrefixes.dust.get(Materials.Molybdenum), - // OrePrefixes.dust.get(Materials.Molybdenum), OrePrefixes.dust.get(Materials.Vanadium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSE, 8L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.Cobalt), - // OrePrefixes.dust.get(Materials.Manganese), OrePrefixes.dust.get(Materials.Silicon)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSS, 8L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.Iridium), - // OrePrefixes.dust.get(Materials.Iridium), OrePrefixes.dust.get(Materials.Osmium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustTiny, - // Materials.StainlessSteel, 8L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dustTiny.get(Materials.Iron), OrePrefixes.dustTiny.get(Materials.Iron), - // OrePrefixes.dustTiny.get(Materials.Iron), OrePrefixes.dustTiny.get(Materials.Iron), - // OrePrefixes.dustTiny.get(Materials.Iron), OrePrefixes.dustTiny.get(Materials.Iron), - // OrePrefixes.dustTiny.get(Materials.Nickel), OrePrefixes.dustTiny.get(Materials.Manganese), - // OrePrefixes.dustTiny.get(Materials.Chrome)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.StainlessSteel, 8L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Iron), OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Iron), OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Iron), OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.Manganese), - // OrePrefixes.dust.get(Materials.Chrome)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.TungstenSteel, 7L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Tungsten),OrePrefixes.dust.get(Materials.Steel)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.TungstenCarbide, 7L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Tungsten),OrePrefixes.dust.get(Materials.Carbon)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.VanadiumGallium, 15L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Vanadium),OrePrefixes.dust.get(Materials.Vanadium),OrePrefixes.dust.get(Materials.Vanadium),OrePrefixes.dust.get(Materials.Gallium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.NiobiumTitanium, 7L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Niobium),OrePrefixes.dust.get(Materials.Titanium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.Osmiridium, 15L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Osmium),OrePrefixes.dust.get(Materials.Iridium),OrePrefixes.dust.get(Materials.Iridium),OrePrefixes.dust.get(Materials.Iridium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.Electrum, 6L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Silver), - // OrePrefixes.dust.get(Materials.Gold)}); GT_ModHandler.removeRecipeByOutputDelayed(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 1L)); GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 3L), @@ -1434,71 +1379,7 @@ public class GT_CraftingRecipeLoader implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cupronickel, 6L), bits_no_remove_buffered, new Object[] { OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.AnyCopper) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustSmall, - // Materials.Nichrome, 15L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Nickel), - // OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.Nickel), - // OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.Chrome)}); } else { - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustTiny, - // Materials.YttriumBariumCuprate, 6L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dustTiny.get(Materials.Yttrium), OrePrefixes.dustTiny.get(Materials.Barium), - // OrePrefixes.dustTiny.get(Materials.Barium), OrePrefixes.dustTiny.get(Materials.AnyCopper), - // OrePrefixes.dustTiny.get(Materials.AnyCopper), OrePrefixes.dustTiny.get(Materials.AnyCopper)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.YttriumBariumCuprate, 6L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Yttrium), OrePrefixes.dust.get(Materials.Barium), - // OrePrefixes.dust.get(Materials.Barium), OrePrefixes.dust.get(Materials.AnyCopper), - // OrePrefixes.dust.get(Materials.AnyCopper), OrePrefixes.dust.get(Materials.AnyCopper)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 9L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.TungstenSteel), - // OrePrefixes.dust.get(Materials.TungstenSteel), OrePrefixes.dust.get(Materials.TungstenSteel), - // OrePrefixes.dust.get(Materials.TungstenSteel), OrePrefixes.dust.get(Materials.TungstenSteel), - // OrePrefixes.dust.get(Materials.Chrome), OrePrefixes.dust.get(Materials.Molybdenum), - // OrePrefixes.dust.get(Materials.Molybdenum), OrePrefixes.dust.get(Materials.Vanadium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSE, 9L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.Cobalt), - // OrePrefixes.dust.get(Materials.Manganese), OrePrefixes.dust.get(Materials.Silicon)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSS, 9L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.HSSG), - // OrePrefixes.dust.get(Materials.HSSG), OrePrefixes.dust.get(Materials.Iridium), - // OrePrefixes.dust.get(Materials.Iridium), OrePrefixes.dust.get(Materials.Osmium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.StainlessSteel, 1L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dustTiny.get(Materials.Iron), OrePrefixes.dustTiny.get(Materials.Iron), - // OrePrefixes.dustTiny.get(Materials.Iron), OrePrefixes.dustTiny.get(Materials.Iron), - // OrePrefixes.dustTiny.get(Materials.Iron), OrePrefixes.dustTiny.get(Materials.Iron), - // OrePrefixes.dustTiny.get(Materials.Nickel), OrePrefixes.dustTiny.get(Materials.Manganese), - // OrePrefixes.dustTiny.get(Materials.Chrome)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.StainlessSteel, 9L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Iron), OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Iron), OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Iron), OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.Manganese), - // OrePrefixes.dust.get(Materials.Chrome)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.TungstenSteel, 2L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Tungsten),OrePrefixes.dust.get(Materials.Steel)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.TungstenCarbide, 2L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Tungsten),OrePrefixes.dust.get(Materials.Carbon)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.VanadiumGallium, 4L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Vanadium),OrePrefixes.dust.get(Materials.Vanadium),OrePrefixes.dust.get(Materials.Vanadium),OrePrefixes.dust.get(Materials.Gallium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.NiobiumTitanium, 2L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Niobium),OrePrefixes.dust.get(Materials.Titanium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmiridium, - // 4L), bits_no_remove_buffered, new - // Object[]{OrePrefixes.dust.get(Materials.Osmium),OrePrefixes.dust.get(Materials.Iridium),OrePrefixes.dust.get(Materials.Iridium),OrePrefixes.dust.get(Materials.Iridium)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Electrum, - // 2L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Silver), - // OrePrefixes.dust.get(Materials.Gold)}); GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 4L), bits_no_remove_buffered, @@ -1530,10 +1411,7 @@ public class GT_CraftingRecipeLoader implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cupronickel, 2L), bits_no_remove_buffered, new Object[] { OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.AnyCopper) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nichrome, - // 5L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Nickel), - // OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.Nickel), - // OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.Chrome)}); + } GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RoseGold, 4L), @@ -1559,29 +1437,7 @@ public class GT_CraftingRecipeLoader implements Runnable { new Object[] { OrePrefixes.dust.get(Materials.Bismuth), OrePrefixes.dust.get(Materials.Zinc), OrePrefixes.dust.get(Materials.AnyCopper), OrePrefixes.dust.get(Materials.AnyCopper), OrePrefixes.dust.get(Materials.AnyCopper) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, - // 4L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Nickel), - // OrePrefixes.dust.get(Materials.BlackBronze), OrePrefixes.dust.get(Materials.Steel), - // OrePrefixes.dust.get(Materials.Steel), OrePrefixes.dust.get(Materials.Steel)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RedSteel, 6L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.SterlingSilver), - // OrePrefixes.dust.get(Materials.BismuthBronze), OrePrefixes.dust.get(Materials.Steel), - // OrePrefixes.dust.get(Materials.Steel), OrePrefixes.dust.get(Materials.BlackSteel), - // OrePrefixes.dust.get(Materials.BlackSteel), OrePrefixes.dust.get(Materials.BlackSteel), - // OrePrefixes.dust.get(Materials.BlackSteel)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlueSteel, 6L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.RoseGold), - // OrePrefixes.dust.get(Materials.Brass), OrePrefixes.dust.get(Materials.Steel), - // OrePrefixes.dust.get(Materials.Steel), OrePrefixes.dust.get(Materials.BlackSteel), - // OrePrefixes.dust.get(Materials.BlackSteel), OrePrefixes.dust.get(Materials.BlackSteel), - // OrePrefixes.dust.get(Materials.BlackSteel)}); - - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ultimet, 9L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Cobalt), - // OrePrefixes.dust.get(Materials.Cobalt), OrePrefixes.dust.get(Materials.Cobalt), - // OrePrefixes.dust.get(Materials.Cobalt), OrePrefixes.dust.get(Materials.Cobalt), - // OrePrefixes.dust.get(Materials.Chrome), OrePrefixes.dust.get(Materials.Chrome), - // OrePrefixes.dust.get(Materials.Nickel), OrePrefixes.dust.get(Materials.Molybdenum)}); + GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CobaltBrass, 8L), bits_no_remove_buffered, @@ -1590,25 +1446,7 @@ public class GT_CraftingRecipeLoader implements Runnable { OrePrefixes.dust.get(Materials.Brass), OrePrefixes.dust.get(Materials.Brass), OrePrefixes.dust.get(Materials.Brass), OrePrefixes.dust.get(Materials.Aluminium), OrePrefixes.dust.get(Materials.Cobalt) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Kanthal, 3L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Aluminium), OrePrefixes.dust.get(Materials.Chrome)}); - - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ultimet, 1L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dustTiny.get(Materials.Cobalt), - // OrePrefixes.dustTiny.get(Materials.Cobalt), OrePrefixes.dustTiny.get(Materials.Cobalt), - // OrePrefixes.dustTiny.get(Materials.Cobalt), OrePrefixes.dustTiny.get(Materials.Cobalt), - // OrePrefixes.dustTiny.get(Materials.Chrome), OrePrefixes.dustTiny.get(Materials.Chrome), - // OrePrefixes.dustTiny.get(Materials.Nickel), OrePrefixes.dustTiny.get(Materials.Molybdenum)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CobaltBrass, - // 1L), bits_no_remove_buffered, new Object[]{OrePrefixes.dustTiny.get(Materials.Brass), - // OrePrefixes.dustTiny.get(Materials.Brass), OrePrefixes.dustTiny.get(Materials.Brass), - // OrePrefixes.dustTiny.get(Materials.Brass), OrePrefixes.dustTiny.get(Materials.Brass), - // OrePrefixes.dustTiny.get(Materials.Brass), OrePrefixes.dustTiny.get(Materials.Brass), - // OrePrefixes.dustTiny.get(Materials.Aluminium), OrePrefixes.dustTiny.get(Materials.Cobalt)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Kanthal, - // 3L), bits_no_remove_buffered, new Object[]{OrePrefixes.dustTiny.get(Materials.Iron), - // OrePrefixes.dustTiny.get(Materials.Aluminium), OrePrefixes.dustTiny.get(Materials.Chrome)}); + GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DamascusSteel, 2L), bits_no_remove_buffered, @@ -1658,20 +1496,13 @@ public class GT_CraftingRecipeLoader implements Runnable { bits_no_remove_buffered, new Object[] { OrePrefixes.dust.get(Materials.ConductiveIron), OrePrefixes.dust.get(Materials.Silver), OrePrefixes.dust.get(Materials.BlackSteel) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.VibrantAlloy, - // 2L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.EnergeticAlloy), - // OrePrefixes.dust.get(Materials.EnderEye), OrePrefixes.dust.get(Materials.Chrome)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.VividAlloy, - // 2L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.EnergeticSilver), - // OrePrefixes.dust.get(Materials.EnderEye), OrePrefixes.dust.get(Materials.Chrome)}); + GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.ElectricalSteel, 2L), bits_no_remove_buffered, new Object[] { OrePrefixes.dust.get(Materials.Steel), OrePrefixes.dust.get(Materials.Coal), OrePrefixes.dust.get(Materials.Silicon) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PulsatingIron, - // 2L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.EnderPearl), OrePrefixes.dust.get(Materials.RedstoneAlloy)}); + GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soularium, 2L), bits_no_remove_buffered, @@ -1682,18 +1513,7 @@ public class GT_CraftingRecipeLoader implements Runnable { bits_no_remove_buffered, new Object[] { OrePrefixes.dust.get(Materials.ElectricalSteel), OrePrefixes.dust.get(Materials.Coal), OrePrefixes.dust.get(Materials.Obsidian) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderiumBase, - // 3L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Tin), - // OrePrefixes.dust.get(Materials.Tin), OrePrefixes.dust.get(Materials.Silver), - // OrePrefixes.dust.get(Materials.Platinum)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Enderium, 3L), - // bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.EnderiumBase), - // OrePrefixes.dust.get(Materials.EnderiumBase), OrePrefixes.dust.get(Materials.Thaumium), - // OrePrefixes.dust.get(Materials.EnderPearl)}); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.ShadowIron, - // 3L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Iron), - // OrePrefixes.dust.get(Materials.Thaumium), OrePrefixes.dust.get(Materials.Thaumium), - // OrePrefixes.dust.get(Materials.Thaumium)}); + GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Manyullyn, 3L), bits_no_remove_buffered, @@ -1701,9 +1521,7 @@ public class GT_CraftingRecipeLoader implements Runnable { OrePrefixes.dust.get(Materials.Ardite), OrePrefixes.dust.get(Materials.Ardite), OrePrefixes.dust.get(Materials.Cobalt), OrePrefixes.dust.get(Materials.Cobalt), OrePrefixes.dust.get(Materials.Cobalt), OrePrefixes.dust.get(Materials.Cobalt) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.AstralSilver, - // 1L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Silver), - // OrePrefixes.dust.get(Materials.Silver), OrePrefixes.dust.get(Materials.Thaumium)}); + GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Haderoth, 1L), bits_no_remove_buffered, @@ -1713,13 +1531,6 @@ public class GT_CraftingRecipeLoader implements Runnable { bits_no_remove_buffered, new Object[] { OrePrefixes.dust.get(Materials.Platinum), OrePrefixes.dust.get(Materials.Orichalcum) }); - // GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.VanadiumSteel, - // 9L), bits_no_remove_buffered, new Object[]{OrePrefixes.dust.get(Materials.Steel), - // OrePrefixes.dust.get(Materials.Steel), OrePrefixes.dust.get(Materials.Steel), - // OrePrefixes.dust.get(Materials.Steel), OrePrefixes.dust.get(Materials.Steel), - // OrePrefixes.dust.get(Materials.Steel), OrePrefixes.dust.get(Materials.Steel), - // OrePrefixes.dust.get(Materials.Vanadium), OrePrefixes.dust.get(Materials.Chrome)}); - GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IronWood, 2L), bits_no_remove_buffered, @@ -1797,7 +1608,7 @@ public class GT_CraftingRecipeLoader implements Runnable { "splitterCableItem", "electrolyzer", "cutter" }) .map(x -> GT_ModHandler.getIC2Item(x, 1L)).collect(Collectors.toList()); - if (Loader.isModLoaded("NotEnoughItems")) { + if (NotEnoughItems.isModLoaded()) { iToRemoveAndHide.forEach(item -> { codechicken.nei.api.API.hideItem(item); GT_ModHandler.removeRecipeByOutputDelayed(item); @@ -1866,10 +1677,7 @@ public class GT_CraftingRecipeLoader implements Runnable { new Object[] { "RBR", "CMC", 'C', OrePrefixes.cableGt01.get(Materials.Copper), 'R', OrePrefixes.dust.get(Materials.Redstone), 'B', OrePrefixes.battery.get(Materials.Basic), 'M', GT_ModHandler.getIC2Item("machine", 1L) }); - // GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("advBattery", 1L), bits_no_remove_buffered, new - // Object[]{"CTC", "TST", "TLT", 'C', OrePrefixes.cableGt01.get(Materials.Copper), 'S', - // OrePrefixes.dust.get(Materials.Sulfur), 'L', OrePrefixes.dust.get(Materials.Lead), 'T', - // GT_ModHandler.getIC2Item("casingbronze", 1L)}); + GT_ModHandler.addCraftingRecipe( GT_ModHandler.getIC2Item("boatElectric", 1L), bits_no_remove_buffered, @@ -1982,7 +1790,7 @@ public class GT_CraftingRecipeLoader implements Runnable { OrePrefixes.dust.get(Materials.Silver), 'E', ItemList.IC2_Energium_Dust.get(1L) }); } - if (Loader.isModLoaded("NotEnoughItems")) { + if (NotEnoughItems.isModLoaded()) { codechicken.nei.api.API.hideItem(GT_ModHandler.getIC2Item("reactorUraniumSimple", 1L, 1)); codechicken.nei.api.API.hideItem(GT_ModHandler.getIC2Item("reactorUraniumDual", 1L, 1)); codechicken.nei.api.API.hideItem(GT_ModHandler.getIC2Item("reactorUraniumQuad", 1L, 1)); @@ -2259,38 +2067,14 @@ public class GT_CraftingRecipeLoader implements Runnable { } GT_ModHandler.removeRecipeByOutputDelayed(GT_ModHandler.getIC2Item("diamondDrill", 1L)); - // GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("diamondDrill", 1L), bits_no_remove_buffered, new - // Object[]{" D ", "DMD", "TAT", 'M', GT_ModHandler.getIC2Item("miningDrill", 1L, 32767), 'D', - // OreDictNames.craftingIndustrialDiamond, 'T', OrePrefixes.plate.get(Materials.Titanium), 'A', - // OrePrefixes.circuit.get(Materials.Advanced)}); GT_ModHandler.removeRecipeByOutputDelayed(GT_ModHandler.getIC2Item("miningDrill", 1L)); - // GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("miningDrill", 1L), bits_no_remove_buffered, new - // Object[]{" S ", "SCS", "SBS", 'C', OrePrefixes.circuit.get(Materials.Basic), 'B', - // OrePrefixes.battery.get(Materials.Basic), 'S', - // GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.harderrecipes, "electricsteeltools", true) ? - // OrePrefixes.plate.get(Materials.StainlessSteel) : OrePrefixes.plate.get(Materials.Iron)}); GT_ModHandler.removeRecipeByOutputDelayed(GT_ModHandler.getIC2Item("chainsaw", 1L)); - // GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("chainsaw", 1L), bits_no_remove_buffered, new - // Object[]{"BS ", "SCS", " SS", 'C', OrePrefixes.circuit.get(Materials.Basic), 'B', - // OrePrefixes.battery.get(Materials.Basic), 'S', - // GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.harderrecipes, "electricsteeltools", true) ? - // OrePrefixes.plate.get(Materials.StainlessSteel) : OrePrefixes.plate.get(Materials.Iron)}); GT_ModHandler.removeRecipeByOutputDelayed(GT_ModHandler.getIC2Item("electricHoe", 1L)); - // GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("electricHoe", 1L), bits_no_remove_buffered, new - // Object[]{"SS ", " C ", " B ", 'C', OrePrefixes.circuit.get(Materials.Basic), 'B', - // OrePrefixes.battery.get(Materials.Basic), 'S', - // GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.harderrecipes, "electricsteeltools", true) ? - // OrePrefixes.plate.get(Materials.StainlessSteel) : OrePrefixes.plate.get(Materials.Iron)}); GT_ModHandler.removeRecipeByOutputDelayed(GT_ModHandler.getIC2Item("electricTreetap", 1L)); - // GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("electricTreetap", 1L), bits_no_remove_buffered, new - // Object[]{" B ", "SCS", "S ", 'C', OrePrefixes.circuit.get(Materials.Basic), 'B', - // OrePrefixes.battery.get(Materials.Basic), 'S', - // GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.harderrecipes, "electricsteeltools", true) ? - // OrePrefixes.plate.get(Materials.StainlessSteel) : OrePrefixes.plate.get(Materials.Iron)}); GT_Log.out.println("GT_Mod: Removing Q-Armor Recipes if configured."); if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "QHelmet", false)) { @@ -2306,23 +2090,23 @@ public class GT_CraftingRecipeLoader implements Runnable { GT_ModHandler.removeRecipeByOutputDelayed(GT_ModHandler.getIC2Item("quantumBoots", 1L)); } - if (Loader.isModLoaded("GraviSuite")) { + if (GraviSuite.isModLoaded()) { GT_ModHandler.removeRecipeByOutputDelayed( - GT_ModHandler.getModItem("GraviSuite", "advNanoChestPlate", 1, GT_Values.W)); + GT_ModHandler.getModItem(GraviSuite.modID, "advNanoChestPlate", 1, GT_Values.W)); GT_ModHandler.addCraftingRecipe( - GT_ModHandler.getModItem("GraviSuite", "advNanoChestPlate", 1, GT_Values.W), + GT_ModHandler.getModItem(GraviSuite.modID, "advNanoChestPlate", 1, GT_Values.W), bits_no_remove_buffered, new Object[] { "CJC", "TNT", "WPW", 'C', OrePrefixes.plateAlloy.get(Materials.Advanced), 'T', OrePrefixes.plate.get(Materials.TungstenSteel), 'J', - GT_ModHandler.getModItem("GraviSuite", "advJetpack", 1, GT_Values.W), 'N', + GT_ModHandler.getModItem(GraviSuite.modID, "advJetpack", 1, GT_Values.W), 'N', GT_ModHandler.getModItem("IC2", "itemArmorNanoChestplate", 1, GT_Values.W), 'W', OrePrefixes.wireGt12.get(Materials.Platinum), 'P', OrePrefixes.circuit.get(Materials.Elite) }); - GT_ModHandler - .removeRecipeByOutputDelayed(GT_ModHandler.getModItem("GraviSuite", "advLappack", 1, GT_Values.W)); + GT_ModHandler.removeRecipeByOutputDelayed( + GT_ModHandler.getModItem(GraviSuite.modID, "advLappack", 1, GT_Values.W)); GT_ModHandler.addCraftingRecipe( - GT_ModHandler.getModItem("GraviSuite", "advLappack", 1, GT_Values.W), + GT_ModHandler.getModItem(GraviSuite.modID, "advLappack", 1, GT_Values.W), bits_no_remove_buffered, new Object[] { "CEC", "EJE", "WPW", 'C', OrePrefixes.plateAlloy.get(Materials.Carbon), 'J', GT_ModHandler.getModItem("IC2", "itemArmorEnergypack", 1L, GT_Values.W), 'E', @@ -2330,10 +2114,10 @@ public class GT_CraftingRecipeLoader implements Runnable { OrePrefixes.wireGt04.get(Materials.Platinum), 'P', OrePrefixes.circuit.get(Materials.Data) }); - GT_ModHandler - .removeRecipeByOutputDelayed(GT_ModHandler.getModItem("GraviSuite", "advJetpack", 1, GT_Values.W)); + GT_ModHandler.removeRecipeByOutputDelayed( + GT_ModHandler.getModItem(GraviSuite.modID, "advJetpack", 1, GT_Values.W)); GT_ModHandler.addCraftingRecipe( - GT_ModHandler.getModItem("GraviSuite", "advJetpack", 1, GT_Values.W), + GT_ModHandler.getModItem(GraviSuite.modID, "advJetpack", 1, GT_Values.W), bits_no_remove_buffered, new Object[] { "CJC", "EXE", "YZY", 'C', OrePrefixes.plateAlloy.get(Materials.Carbon), 'J', GT_ModHandler.getModItem("IC2", "itemArmorJetpackElectric", 1, GT_Values.W), 'E', @@ -2358,13 +2142,39 @@ public class GT_CraftingRecipeLoader implements Runnable { 44, 24); - if (Loader.isModLoaded("bartworks")) { + if (BartWorks.isModLoaded()) { GT_ModHandler.addCraftingRecipe( ItemList.Casing_Advanced_Rhodium_Palladium.get(1L), bits, new Object[] { "PhP", "PFP", aTextPlateWrench, 'P', - GT_ModHandler.getModItem("bartworks", "gt.bwMetaGeneratedplate", 1L, 88), 'F', + GT_ModHandler.getModItem(BartWorks.modID, "gt.bwMetaGeneratedplate", 1L, 88), 'F', OrePrefixes.frameGt.get(Materials.Chrome) }); } + + if (Forestry.isModLoaded()) { + ItemStack[] coverIDs = { ItemList.Plank_Larch.get(2L), ItemList.Plank_Teak.get(2L), + ItemList.Plank_Acacia_Green.get(2L), ItemList.Plank_Lime.get(2L), ItemList.Plank_Chestnut.get(2L), + ItemList.Plank_Wenge.get(2L), ItemList.Plank_Baobab.get(2L), ItemList.Plank_Sequoia.get(2L), + ItemList.Plank_Kapok.get(2L), ItemList.Plank_Ebony.get(2L), ItemList.Plank_Mahagony.get(2L), + ItemList.Plank_Balsa.get(2L), ItemList.Plank_Willow.get(2L), ItemList.Plank_Walnut.get(2L), + ItemList.Plank_Greenheart.get(2L), ItemList.Plank_Cherry.get(2L), ItemList.Plank_Mahoe.get(2L), + ItemList.Plank_Poplar.get(2L), ItemList.Plank_Palm.get(2L), ItemList.Plank_Papaya.get(2L), + ItemList.Plank_Pine.get(2L), ItemList.Plank_Plum.get(2L), ItemList.Plank_Maple.get(2L), + ItemList.Plank_Citrus.get(2L) }; + for (int i = 0; i < coverIDs.length; i++) { + ItemStack slabWood = getModItem(Forestry.modID, "slabs", 1, i); + ItemStack slabWoodFireproof = getModItem(Forestry.modID, "slabsFireproof", 1, i); + + GT_ModHandler.addCraftingRecipe( + coverIDs[i], + GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, + new Object[] { "s ", " P", 'P', slabWood }); + + GT_ModHandler.addCraftingRecipe( + coverIDs[i], + GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, + new Object[] { "s ", " P", 'P', slabWoodFireproof }); + } + } } } diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index ca518cd4a3..2d9e2b859a 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -1,8 +1,8 @@ package gregtech.loaders.postload; -import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.ModIDs.NotEnoughItems; -import cpw.mods.fml.common.Loader; +import gregtech.api.enums.Materials; import gregtech.loaders.postload.chains.GT_BauxiteRefineChain; import gregtech.loaders.postload.chains.GT_NaniteChain; import gregtech.loaders.postload.chains.GT_PCBFactoryRecipes; @@ -10,35 +10,16 @@ import gregtech.loaders.postload.recipes.*; public class GT_MachineRecipeLoader implements Runnable { - public static final String aTextAE = "appliedenergistics2"; - public static final String aTextAEMM = "item.ItemMultiMaterial"; - public static final String aTextForestry = "Forestry"; - public static final String aTextEBXL = "ExtrabiomesXL"; public static final String aTextTCGTPage = "gt.research.page.1."; - public static final Boolean isNEILoaded = Loader.isModLoaded("NotEnoughItems"); - public static final Boolean isThaumcraftLoaded = Loader.isModLoaded("Thaumcraft"); - public static final Boolean isBartWorksLoaded = Loader.isModLoaded("bartworks"); - public static final Boolean isGTNHLanthanidLoaded = Loader.isModLoaded("gtnhlanth"); - public static final Boolean isGTPPLoaded = Loader.isModLoaded(MOD_ID_GTPP); - public static final Boolean isGalaxySpaceLoaded = Loader.isModLoaded("GalaxySpace"); - public static final Boolean isGalacticraftMarsLoaded = Loader.isModLoaded("GalacticraftMars"); - public static final Boolean isIronChestLoaded = Loader.isModLoaded("IronChest"); - public static final Boolean isCoremodLoaded = Loader.isModLoaded(MOD_ID_DC); - public static final Boolean isBuildCraftFactoryLoaded = Loader.isModLoaded("BuildCraft|Factory"); - public static final Boolean isIronTankLoaded = Loader.isModLoaded("irontank"); - public static final Boolean isExtraUtilitiesLoaded = Loader.isModLoaded("ExtraUtilities"); - public static final Boolean isEBXLLoaded = Loader.isModLoaded(GT_MachineRecipeLoader.aTextEBXL); - public static final Boolean isRailcraftLoaded = Loader.isModLoaded(MOD_ID_RC); - public static final Boolean isForestryloaded = Loader.isModLoaded(GT_MachineRecipeLoader.aTextForestry); - public static final Boolean isIC2NuclearControlLoaded = Loader.isModLoaded("IC2NuclearControl"); - public static final Boolean isAvaritiaAddonsLoaded = Loader.isModLoaded("avaritiaddons"); - public static final Boolean isTinkersConstructLoaded = Loader.isModLoaded("TConstruct"); - public static final Boolean isHardcoreEnderExpansionLoaded = Loader.isModLoaded("HardcoreEnderExpansion"); - public static final Boolean isForestryLoaded = Loader.isModLoaded(MOD_ID_FR); + public static final Boolean isNEILoaded = NotEnoughItems.isModLoaded(); + /** @deprecated AE2 is a required dependency now */ @Deprecated public static final Boolean isAE2Loaded = true; + public static final Materials[] solderingMats = new Materials[] { Materials.Lead, Materials.SolderingAlloy, + Materials.Tin }; + @Override public void run() { new AlloySmelterRecipes().run(); diff --git a/src/main/java/gregtech/loaders/postload/GT_PostLoad.java b/src/main/java/gregtech/loaders/postload/GT_PostLoad.java index 7fc271128d..70da4835d2 100644 --- a/src/main/java/gregtech/loaders/postload/GT_PostLoad.java +++ b/src/main/java/gregtech/loaders/postload/GT_PostLoad.java @@ -1,7 +1,7 @@ package gregtech.loaders.postload; -import static gregtech.api.enums.GT_Values.MOD_ID_FR; import static gregtech.api.enums.GT_Values.VP; +import static gregtech.api.enums.ModIDs.*; import java.lang.reflect.InvocationTargetException; import java.util.Arrays; @@ -23,7 +23,6 @@ import net.minecraftforge.fluids.FluidStack; import com.google.common.base.Stopwatch; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.ProgressManager; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -153,7 +152,9 @@ public class GT_PostLoad { public static void addFakeRecipes() { GT_Log.out.println("GT_Mod: Adding Fake Recipes for NEI"); - if (Loader.isModLoaded(MOD_ID_FR)) GT_Forestry_Compat.populateFakeNeiRecipes(); + if (Forestry.isModLoaded()) { + GT_Forestry_Compat.populateFakeNeiRecipes(); + } if (ItemList.IC2_Crop_Seeds.get(1L) != null) { GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( @@ -217,34 +218,32 @@ public class GT_PostLoad { 1000, 30, 0); - if (Loader.isModLoaded("GalacticraftCore")) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes - .addFakeRecipe( - false, - new ItemStack[] { Objects.requireNonNull( - GT_ModHandler.getModItem("GalacticraftCore", "item.schematic", 1, Short.MAX_VALUE)) - .setStackDisplayName("Any Schematic") }, - new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Schematic") }, - ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to"), - null, - null, - 36000, - 480, - 0); - if (Loader.isModLoaded("GalacticraftMars")) - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( - false, - new ItemStack[] { Objects.requireNonNull( - GT_ModHandler.getModItem("GalacticraftMars", "item.schematic", 1, Short.MAX_VALUE)) - .setStackDisplayName("Any Schematic") }, - new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Schematic") }, - ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to"), - null, - null, - 36000, - 480, - 0); - if (Loader.isModLoaded("GalaxySpace")) { + if (GalacticraftCore.isModLoaded()) { + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( + false, + new ItemStack[] { Objects.requireNonNull( + GT_ModHandler.getModItem(GalacticraftCore.modID, "item.schematic", 1, Short.MAX_VALUE)) + .setStackDisplayName("Any Schematic") }, + new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Schematic") }, + ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to"), + null, + null, + 36000, + 480, + 0); + if (GalacticraftMars.isModLoaded()) GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( + false, + new ItemStack[] { Objects.requireNonNull( + GT_ModHandler.getModItem(GalacticraftMars.modID, "item.schematic", 1, Short.MAX_VALUE)) + .setStackDisplayName("Any Schematic") }, + new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Schematic") }, + ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to"), + null, + null, + 36000, + 480, + 0); + if (GalaxySpace.isModLoaded()) { for (int i = 4; i < 9; i++) { GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( false, @@ -519,7 +518,7 @@ public class GT_PostLoad { GT_OreDictUnificator.get(ItemList.Block_SSFUEL.get(1)), GT_OreDictUnificator.get(ItemList.Block_MSSFUEL.get(1)), GT_OreDictUnificator.get(OrePrefixes.rod, Materials.Blaze, 1)); - if (Loader.isModLoaded("Thaumcraft")) { + if (Thaumcraft.isModLoaded()) { GT_Recipe.GT_Recipe_Map.sLargeBoilerFakeFuels .addSolidRecipe(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1)); } diff --git a/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java b/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java index f5dd2dcc05..be48d7b45b 100644 --- a/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java +++ b/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java @@ -1,7 +1,7 @@ package gregtech.loaders.postload.chains; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; -import static gregtech.api.enums.GT_Values.MOD_ID_GTPP; +import static gregtech.api.enums.ModIDs.GTPlusPlus; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; import static gregtech.api.util.GT_ModHandler.getModItem; import net.minecraft.item.ItemStack; @@ -19,9 +19,9 @@ public class GT_NaniteChain { public static void run() { - ItemStack aUVTierLens = getModItem(MOD_ID_DC, "item.MysteriousCrystalLens", 0); - ItemStack aUHVTierLens = getModItem(MOD_ID_DC, "item.ChromaticLens", 0); - ItemStack aUEVTierLens = getModItem(MOD_ID_DC, "item.RadoxPolymerLens", 0); + ItemStack aUVTierLens = getModItem(NewHorizonsCoreMod.modID, "item.MysteriousCrystalLens", 0); + ItemStack aUHVTierLens = getModItem(NewHorizonsCoreMod.modID, "item.ChromaticLens", 0); + ItemStack aUEVTierLens = getModItem(NewHorizonsCoreMod.modID, "item.RadoxPolymerLens", 0); ItemStack aUIVTierLens = ItemList.EnergisedTesseract.get(0); ItemStack aUMVTierLens = GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Dilithium, 0, false); @@ -101,13 +101,13 @@ public class GT_NaniteChain { // Glowstone Nanites - Used in the optical circuit line GT_Values.RA.addNanoForgeRecipe( - new ItemStack[] { aUEVTierLens, getModItem(MOD_ID_GTPP, "blockCompressedObsidian", 8, 7), // Double - // compressed - // glowstone - // blocks - // (yes, it's - // not - // obsidian) + new ItemStack[] { aUEVTierLens, getModItem(GTPlusPlus.modID, "blockCompressedObsidian", 8, 7), // Double + // compressed + // glowstone + // blocks + // (yes, it's + // not + // obsidian) ItemList.Circuit_Chip_SoC2.get(64) }, new FluidStack[] { Materials.UUMatter.getFluid(50000) }, new ItemStack[] { Materials.Glowstone.getNanite(64) }, @@ -145,9 +145,10 @@ public class GT_NaniteChain { GT_Values.RA.addNanoForgeRecipe( new ItemStack[] { aUMVTierLens, getModItem("bartworks", "gt.bwMetaGeneratedlens", 0, 36), // Magneto // lens - getModItem(MOD_ID_GTPP, "MU-metaitem.01", 0, 32105), // Quantum Anomaly, couldn't find any - // better naming - Materials.WhiteDwarfMatter.getBlocks(8), getModItem(MOD_ID_DC, "item.PicoWafer", 32), + getModItem(GTPlusPlus.modID, "MU-metaitem.01", 0, 32105), // Quantum Anomaly, couldn't find any + // better naming + Materials.WhiteDwarfMatter.getBlocks(8), + getModItem(NewHorizonsCoreMod.modID, "item.PicoWafer", 32), getModItem("GoodGenerator", "huiCircuit", 1, 4) // Paradox circuit }, new FluidStack[] { Materials.UUMatter.getFluid(500_000), Materials.RawStarMatter.getFluid(50_000), @@ -163,9 +164,10 @@ public class GT_NaniteChain { GT_Values.RA.addNanoForgeRecipe( new ItemStack[] { aUMVTierLens, getModItem("bartworks", "gt.bwMetaGeneratedlens", 0, 36), // Magneto // lens - getModItem(MOD_ID_GTPP, "MU-metaitem.01", 0, 32105), // Quantum Anomaly, couldn't find any - // better naming - Materials.BlackDwarfMatter.getBlocks(8), getModItem(MOD_ID_DC, "item.PicoWafer", 32), + getModItem(GTPlusPlus.modID, "MU-metaitem.01", 0, 32105), // Quantum Anomaly, couldn't find any + // better naming + Materials.BlackDwarfMatter.getBlocks(8), + getModItem(NewHorizonsCoreMod.modID, "item.PicoWafer", 32), getModItem("GoodGenerator", "huiCircuit", 1, 4) // Paradox circuit }, new FluidStack[] { Materials.UUMatter.getFluid(500_000), Materials.RawStarMatter.getFluid(50_000), @@ -181,7 +183,7 @@ public class GT_NaniteChain { GT_Values.RA.addNanoForgeRecipe( new ItemStack[] { aUMVTierLens, // Quantum Anomaly, couldn't find any better naming. - getModItem(MOD_ID_GTPP, "MU-metaitem.01", 0, 32105), Materials.Universium.getBlocks(8), + getModItem(GTPlusPlus.modID, "MU-metaitem.01", 0, 32105), Materials.Universium.getBlocks(8), ItemList.Optically_Perfected_CPU.get(16), ItemList.Optically_Compatible_Memory.get(16), getModItem("GoodGenerator", "huiCircuit", 1, 4) // Paradox circuit diff --git a/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java b/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java index 38406215ec..3cb705cc2a 100644 --- a/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java +++ b/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java @@ -1,6 +1,6 @@ package gregtech.loaders.postload.chains; -import static gregtech.api.enums.GT_Values.MOD_ID_GTPP; +import static gregtech.api.enums.ModIDs.GTPlusPlus; import java.util.ArrayList; import java.util.List; @@ -10,7 +10,6 @@ import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; -import cpw.mods.fml.common.Loader; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -59,14 +58,14 @@ public class GT_PCBFactoryRecipes { 30 * 20, (int) GT_Values.VP[9]); GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_ModHandler.getModItem(MOD_ID_GTPP, "blockFrameGtCelestialTungsten", 1), + new ItemStack[] { GT_ModHandler.getModItem(GTPlusPlus.modID, "blockFrameGtCelestialTungsten", 1), Materials.get("Quantum").getPlates(6) }, null, ItemList.RadiationProofPhotolithographicFrameworkCasing.get(1), 30 * 20, (int) GT_Values.VP[11]); GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_ModHandler.getModItem(MOD_ID_GTPP, "blockFrameGtHypogen", 1), + new ItemStack[] { GT_ModHandler.getModItem(GTPlusPlus.modID, "blockFrameGtHypogen", 1), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Infinity, 2), Materials.Thulium.getPlates(6) }, Materials.SpaceTime.getMolten(144 * 8), @@ -526,7 +525,7 @@ public class GT_PCBFactoryRecipes { mTier3BitMap | mBioUpgradeBitMap); } - if (Loader.isModLoaded("miscutils")) { + if (GTPlusPlus.isModLoaded()) { // Optical Circuit Board for (int tier = 7; tier <= GT_PCBFactoryManager.mTiersOfPlastics; tier++) { int amountOfBoards = (int) Math.ceil(8 * (Math.sqrt(Math.pow(2, tier - 7)))); diff --git a/src/main/java/gregtech/loaders/postload/recipes/AlloySmelterRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AlloySmelterRecipes.java index d64825965d..8a203768a1 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AlloySmelterRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AlloySmelterRecipes.java @@ -1,5 +1,8 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; @@ -7,7 +10,6 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.objects.MaterialStack; -import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; public class AlloySmelterRecipes implements Runnable { @@ -56,41 +58,51 @@ public class AlloySmelterRecipes implements Runnable { @Override public void run() { - for (MaterialStack[] tMats : mAlloySmelterList) { - ItemStack tDust1 = GT_OreDictUnificator.get(OrePrefixes.dust, tMats[0].mMaterial, tMats[0].mAmount); - ItemStack tDust2 = GT_OreDictUnificator.get(OrePrefixes.dust, tMats[1].mMaterial, tMats[1].mAmount); - ItemStack tIngot1 = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[0].mMaterial, tMats[0].mAmount); - ItemStack tIngot2 = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[1].mMaterial, tMats[1].mAmount); - ItemStack tOutputIngot = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[2].mMaterial, tMats[2].mAmount); - if (tOutputIngot != GT_Values.NI) { - GT_ModHandler - .addAlloySmelterRecipe(tIngot1, tDust2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); - GT_ModHandler - .addAlloySmelterRecipe(tIngot1, tIngot2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); - GT_ModHandler - .addAlloySmelterRecipe(tDust1, tIngot2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); - GT_ModHandler - .addAlloySmelterRecipe(tDust1, tDust2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); + for (MaterialStack[] materials : mAlloySmelterList) { + ItemStack dust1 = GT_OreDictUnificator.get(OrePrefixes.dust, materials[0].mMaterial, materials[0].mAmount); + ItemStack dust2 = GT_OreDictUnificator.get(OrePrefixes.dust, materials[1].mMaterial, materials[1].mAmount); + ItemStack ingot1 = GT_OreDictUnificator + .get(OrePrefixes.ingot, materials[0].mMaterial, materials[0].mAmount); + ItemStack ingot2 = GT_OreDictUnificator + .get(OrePrefixes.ingot, materials[1].mMaterial, materials[1].mAmount); + ItemStack outputIngot = GT_OreDictUnificator + .get(OrePrefixes.ingot, materials[2].mMaterial, materials[2].mAmount); + if (outputIngot != GT_Values.NI) { + GT_Values.RA.stdBuilder().itemInputs(ingot1, dust2).itemOutputs(outputIngot).noFluidInputs() + .noFluidOutputs().duration((int) materials[2].mAmount * 50).eut(16).addTo(sAlloySmelterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ingot1, ingot2).itemOutputs(outputIngot).noFluidInputs() + .noFluidOutputs().duration((int) materials[2].mAmount * 50).eut(16).addTo(sAlloySmelterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(dust1, ingot2).itemOutputs(outputIngot).noFluidInputs() + .noFluidOutputs().duration((int) materials[2].mAmount * 50).eut(16).addTo(sAlloySmelterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(dust1, dust2).itemOutputs(outputIngot).noFluidInputs() + .noFluidOutputs().duration((int) materials[2].mAmount * 50).eut(16).addTo(sAlloySmelterRecipes); + } } - GT_Values.RA.addAlloySmelterRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lead, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2L), - ItemList.TE_Hardened_Glass.get(2L), - 200, - 16); - GT_Values.RA.addAlloySmelterRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Lead, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2L), - ItemList.TE_Hardened_Glass.get(2L), - 200, - 16); - GT_Values.RA.addAlloySmelterRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1L), - 200, - 8); // We use rubber + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lead, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2L)) + .itemOutputs(ItemList.TE_Hardened_Glass.get(2L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(16).addTo(sAlloySmelterRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Lead, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2L)) + .itemOutputs(ItemList.TE_Hardened_Glass.get(2L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(16).addTo(sAlloySmelterRecipes); + + // We use rubber + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 3L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1L)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(8).addTo(sAlloySmelterRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ArcFurnaceRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ArcFurnaceRecipes.java index 632fe5d385..90dc6a9678 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ArcFurnaceRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ArcFurnaceRecipes.java @@ -1,9 +1,10 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.Railcraft; import static gregtech.api.util.GT_ModHandler.getModItem; - -import net.minecraft.item.ItemStack; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; @@ -12,348 +13,300 @@ public class ArcFurnaceRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Block_TungstenSteelReinforced.get(1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 2), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Concrete, 1) }, - null, - 160, - 96); - - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Long_Distance_Pipeline_Fluid.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 19L) }, - null, - 180, - (int) TierEU.RECIPE_MV); - - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Long_Distance_Pipeline_Item.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 12L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 7L) }, - null, - 180, - (int) TierEU.RECIPE_MV); - - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Long_Distance_Pipeline_Fluid_Pipe.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 2L) }, - null, - 10, - (int) TierEU.RECIPE_MV); - - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Long_Distance_Pipeline_Item_Pipe.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tin, 1L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 1L) }, - null, - 10, - (int) TierEU.RECIPE_MV); - - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_Cupronickel.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Cupronickel, 8), + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Block_TungstenSteelReinforced.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Concrete, 1)) + .noFluidInputs().noFluidOutputs().duration(8 * SECONDS).eut(96).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Fluid.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 19L)).noFluidInputs() + .noFluidOutputs().duration(9 * SECONDS).eut((int) TierEU.RECIPE_MV).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Item.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 12L), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 7L)) + .noFluidInputs().noFluidOutputs().duration(9 * SECONDS).eut((int) TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Fluid_Pipe.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 2L)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut((int) TierEU.RECIPE_MV).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Item_Pipe.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tin, 1L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 1L)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut((int) TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Cupronickel.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Cupronickel, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 2) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_Kanthal.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Kanthal, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 2)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Kanthal.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Kanthal, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Cupronickel, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_Nichrome.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Nichrome, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Nichrome.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Nichrome, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Kanthal, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_TungstenSteel.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TPV, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_TungstenSteel.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TPV, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Nichrome, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 5) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_HSSG.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.HSSG, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 5)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_HSSG.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.HSSG, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TPV, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 6) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_HSSS.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.HSSS, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 6)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_HSSS.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.HSSS, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.HSSG, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 7) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_Naquadah.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 7)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Naquadah.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.HSSS, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 8) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_NaquadahAlloy.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NaquadahAlloy, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 8)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_NaquadahAlloy.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NaquadahAlloy, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 9) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_Trinium.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Trinium, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 9)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Trinium.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Trinium, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NaquadahAlloy, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 10) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_ElectrumFlux.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ElectrumFlux, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 10)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_ElectrumFlux.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ElectrumFlux, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Trinium, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 11) }, - null, - 300, - 360); - GT_Values.RA.addArcFurnaceRecipe( - ItemList.Casing_Coil_AwakenedDraconium.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.DraconiumAwakened, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 11)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_AwakenedDraconium.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.DraconiumAwakened, 8), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ElectrumFlux, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 12) }, - null, - 300, - 360); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 0), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 2L) }, - null, - 150, - 90); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 150, - 90); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 2), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Bronze, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 6) }, - null, - 150, - 90); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 13), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 2L) }, - null, - 180, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 14), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 180, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 15), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 6L) }, - null, - 180, - (int) TierEU.RECIPE_MV); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 0), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Aluminium, 2L) }, - null, - 210, - 150); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3) }, - null, - 210, - 150); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 2), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 6L) }, - null, - 210, - 150); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 3), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.StainlessSteel, 2L) }, - null, - 240, - 180); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 4), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.StainlessSteel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 240, - 180); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 5), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.StainlessSteel, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.StainlessSteel, 6L) }, - null, - 240, - 180); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 6), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 2L) }, - null, - 270, - 210); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 7), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 270, - 210); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 8), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Titanium, 6L) }, - null, - 270, - 210); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 9), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 2L) }, - null, - 300, - 240); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 10), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 300, - 240); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 11), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.TungstenSteel, 6L) }, - null, - 300, - 240); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 12), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Palladium, 2L) }, - null, - 330, - 270); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 13), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Palladium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 330, - 270); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 14), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NiobiumTitanium, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Chrome, 6L) }, - null, - 330, - 270); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 0), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 2L) }, - null, - 360, - 300); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 360, - 300); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 2), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Enderium, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iridium, 6L) }, - null, - 360, - 300); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 3), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Osmium, 2L) }, - null, - 360, - 330); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 4), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Osmium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 360, - 330); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 5), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Osmium, 6L) }, - null, - 360, - 330); - - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 6), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Neutronium, 2L) }, - null, - 360, - 360); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 7), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Neutronium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3) }, - null, - 360, - 360); - GT_Values.RA.addArcFurnaceRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 8), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Neutronium, 12L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Neutronium, 6L) }, - null, - 360, - 360); - - GT_Values.RA.addSimpleArcFurnaceRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1L), - Materials.Oxygen.getGas(2000L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3) }, - null, - 1200, - (int) TierEU.RECIPE_LV); + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 12)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 2L)).noFluidInputs() + .noFluidOutputs().duration(7 * SECONDS + 10 * TICKS).eut(90).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(7 * SECONDS + 10 * TICKS).eut(90).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Bronze, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 6)) + .noFluidInputs().noFluidOutputs().duration(7 * SECONDS + 10 * TICKS).eut(90).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 13)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 2L)).noFluidInputs() + .noFluidOutputs().duration(9 * SECONDS).eut((int) TierEU.RECIPE_MV).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 14)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(9 * SECONDS).eut((int) TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 15)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 6L)) + .noFluidInputs().noFluidOutputs().duration(9 * SECONDS).eut((int) TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Aluminium, 2L)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS + 10 * TICKS).eut(150).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS + 10 * TICKS).eut(150).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 6L)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS + 10 * TICKS).eut(150) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 3)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.StainlessSteel, 2L)).noFluidInputs() + .noFluidOutputs().duration(12 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.StainlessSteel, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(12 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 5)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.StainlessSteel, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.StainlessSteel, 6L)) + .noFluidInputs().noFluidOutputs().duration(12 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 6)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 2L)).noFluidInputs() + .noFluidOutputs().duration(13 * SECONDS + 10 * TICKS).eut(210).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 7)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(13 * SECONDS + 10 * TICKS).eut(210) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 8)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Titanium, 6L)) + .noFluidInputs().noFluidOutputs().duration(13 * SECONDS + 10 * TICKS).eut(210) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 2L)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 10)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 11)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.TungstenSteel, 6L)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 12)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Palladium, 2L)).noFluidInputs() + .noFluidOutputs().duration(16 * SECONDS + 10 * TICKS).eut(270).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 13)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Palladium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(16 * SECONDS + 10 * TICKS).eut(270) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 14)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NiobiumTitanium, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Chrome, 6L)) + .noFluidInputs().noFluidOutputs().duration(16 * SECONDS + 10 * TICKS).eut(270) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 2L)).noFluidInputs() + .noFluidOutputs().duration(18 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(18 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Enderium, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iridium, 6L)) + .noFluidInputs().noFluidOutputs().duration(18 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 3)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Osmium, 2L)).noFluidInputs() + .noFluidOutputs().duration(18 * SECONDS).eut(330).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Osmium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(18 * SECONDS).eut(330).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 5)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Osmium, 6L)) + .noFluidInputs().noFluidOutputs().duration(18 * SECONDS).eut(330).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 6)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Neutronium, 2L)).noFluidInputs() + .noFluidOutputs().duration(18 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 7)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Neutronium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .noFluidInputs().noFluidOutputs().duration(18 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 8)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Neutronium, 12L), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Neutronium, 6L)) + .noFluidInputs().noFluidOutputs().duration(18 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sArcFurnaceRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3)) + .fluidInputs(Materials.Oxygen.getGas(2000L)).noFluidOutputs().duration(60 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sArcFurnaceRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java index 7aa2ab89a8..c76b2a90f4 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java @@ -1,9 +1,10 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.*; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.*; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.*; +import static gregtech.loaders.postload.GT_MachineRecipeLoader.solderingMats; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -18,4523 +19,5093 @@ import gregtech.api.enums.*; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class AssemblerRecipes implements Runnable { @Override public void run() { - Materials LuVMat = isBartWorksLoaded ? Materials.get("Ruridit") : Materials.Osmiridium; - this.withBartWorks(); this.withGalacticraftMars(); - this.withoutGTPPRecipes(); - this.loadRailcraftRecipes(); - this.withGalaxySPace(); - this.addBusAndHatchRecipes(); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1L), - Materials.Concrete.getMolten(144L), - ItemList.Block_Plascrete.get(1L), - 200, - 48); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1L), - Materials.Concrete.getMolten(144L), - ItemList.Block_Plascrete.get(1L), - 200, - 48); + this.withRailcraft(); + this.withGalaxySpace(); + this.withGTNHLanthAndGTPP(); + this.loadInputBusesRecipes(); + this.loadInputHatchesRecipes(); + this.loadOutputBusesRecipes(); + this.loadOutputHatchesRecipes(); + this.withIC2NuclearControl(); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1)) + .itemOutputs(ItemList.Block_Plascrete.get(1)).fluidInputs(Materials.Concrete.getMolten(144)) + .noFluidOutputs().duration(10 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1)) + .itemOutputs(ItemList.Block_Plascrete.get(1)).fluidInputs(Materials.Concrete.getMolten(144)) + .noFluidOutputs().duration(10 * SECONDS).eut(48).addTo(sAssemblerRecipes); for (byte i = 0; i < 16; i = (byte) (i + 1)) { for (int j = 0; j < Dyes.VALUES[i].getSizeOfFluidList(); j++) { - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.string, 3), - GT_Utility.getIntegratedCircuit(3), - Dyes.VALUES[i].getFluidDye(j, 24L), - new ItemStack(Blocks.carpet, 2, 15 - i), - 128, - 5); - } - } + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.string, 3), GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(new ItemStack(Blocks.carpet, 2, 15 - i)) + .fluidInputs(Dyes.VALUES[i].getFluidDye(j, 24)).noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(5).addTo(sAssemblerRecipes); + } + } + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride, 1), + ItemList.Paper_Printed_Pages.get(1)) + .itemOutputs(new ItemStack(Items.written_book, 1, 0)).fluidInputs(Materials.Glue.getFluid(20)) + .noFluidOutputs().duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3)) + .itemOutputs(new ItemStack(Items.book, 1, 0)).fluidInputs(Materials.Glue.getFluid(20)).noFluidOutputs() + .duration(20 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getIC2Item("carbonMesh", 4), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Zinc, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Component_Filter.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Zinc, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Component_Filter.get(1)).fluidInputs(Materials.Plastic.getFluid(144)) + .noFluidOutputs().duration(1 * MINUTES + 20 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 64), + ItemList.Circuit_Silicon_Wafer2.get(32), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphene, 64)) + .fluidInputs(Materials.AdvancedGlue.getFluid(500)).noFluidOutputs().duration(2 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 64), + ItemList.Circuit_Silicon_Wafer3.get(8), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphene, 64)) + .fluidInputs(Materials.AdvancedGlue.getFluid(250)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_LV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Basic), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_LV.get(1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_MV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_MV.get(1)).noFluidInputs().noFluidOutputs() + .duration(17 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_HV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Advanced), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_HV.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_EV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Data), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_EV.get(1)).noFluidInputs().noFluidOutputs() + .duration(12 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_IV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Elite), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_IV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Master), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_LuV.get(1)).noFluidInputs().noFluidOutputs() + .duration(7 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Ultimate), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_ZPM.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.SuperconductorUHV), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.FluidRegulator_UV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(500000).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Steam_Valve_LV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Basic), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Steam_Regulator_LV.get(1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Steam_Valve_MV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Steam_Regulator_MV.get(1)).noFluidInputs().noFluidOutputs() + .duration(17 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Steam_Valve_HV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Advanced), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Steam_Regulator_HV.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Steam_Valve_EV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Data), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Steam_Regulator_EV.get(1)).noFluidInputs().noFluidOutputs() + .duration(12 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Steam_Valve_IV.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Elite), 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Steam_Regulator_IV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_LV.get(1), + ItemList.Electric_Motor_LV.get(1), + GT_OreDictUnificator.get(OrePrefixes.gear.get(Materials.Steel), 2), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.Steam_Valve_LV.get(1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_MV.get(1), + ItemList.Electric_Motor_MV.get(1), + GT_OreDictUnificator.get(OrePrefixes.gear.get(Materials.Aluminium), 2), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.Steam_Valve_MV.get(1)).noFluidInputs().noFluidOutputs() + .duration(17 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + { // limiting lifetime of the variables + ItemStack flask = ItemList.VOLUMETRIC_FLASK.get(1); + NBTTagCompound nbtFlask = new NBTTagCompound(); + int[] capacities = new int[] { 144, 288, 576, 720, 864, 72, 648, 936, 250, 500, 1000 }; + int[] circuitConfigurations = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 24 }; + for (int i = 0; i < capacities.length; i++) { + nbtFlask.setInteger("Capacity", capacities[i]); + flask.setTagCompound(nbtFlask); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.VOLUMETRIC_FLASK.get(1), + GT_Utility.getIntegratedCircuit(circuitConfigurations[i])) + .itemOutputs(flask).noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); + } + } + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Bronze, 1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Bronze, 1), + ItemList.Electric_Motor_LV.get(1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_LV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Steel, 1), + ItemList.Electric_Motor_MV.get(1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_MV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), + ItemList.Electric_Motor_HV.get(1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_HV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Titanium, 1), + ItemList.Electric_Motor_EV.get(1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_EV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.TungstenSteel, 1), + ItemList.Electric_Motor_IV.get(1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_IV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Enderium, 1), + ItemList.Electric_Motor_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Enderium, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_LuV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Naquadah, 1), + ItemList.Electric_Motor_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.NaquadahAlloy, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_ZPM.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.NetherStar, 1), + ItemList.Electric_Motor_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_UV.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(500000).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MAX.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.MysteriousCrystal, 1), + ItemList.Electric_Motor_UHV.get(1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.CosmicNeutronium, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Hatch_Muffler_MAX.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(2000000).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.redstone_torch, 2, 32767), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1)) + .itemOutputs(new ItemStack(Items.repeater, 1, 0)).fluidInputs(Materials.Concrete.getMolten(144)) + .noFluidOutputs().duration(4 * SECONDS).eut(10).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.leather, 1, 32767), new ItemStack(Items.lead, 1, 32767)) + .itemOutputs(new ItemStack(Items.name_tag, 1, 0)).fluidInputs(Materials.Glue.getFluid(72)) + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(NewHorizonsCoreMod.modID, "item.ArtificialLeather", 1L, 0), + new ItemStack(Items.lead, 1, 32767)) + .itemOutputs(new ItemStack(Items.name_tag, 1, 0)).fluidInputs(Materials.Glue.getFluid(72)) + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 8), + new ItemStack(Items.compass, 1, 32767)) + .itemOutputs(new ItemStack(Items.map, 1, 0)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tantalum, 1), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Manganese, 1)) + .itemOutputs(ItemList.Battery_RE_ULV_Tantalum.get(8)).fluidInputs(Materials.Plastic.getMolten(144)) + .noFluidOutputs().duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.charmOfLife1", 4L, 0), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(getModItem(TwilightForest.modID, "item.charmOfLife2", 1L, 0)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.charmOfKeeping1", 4L, 0), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(getModItem(TwilightForest.modID, "item.charmOfKeeping2", 1L, 0)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.charmOfKeeping2", 4L, 0), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(getModItem(TwilightForest.modID, "item.charmOfKeeping3", 1L, 0)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.charmOfLife2", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(TwilightForest.modID, "item.charmOfLife1", 4L, 0)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.charmOfKeeping2", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(TwilightForest.modID, "item.charmOfKeeping1", 4L, 0)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.charmOfKeeping3", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(TwilightForest.modID, "item.charmOfKeeping2", 4L, 0)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 16), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 20)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 23)) + .fluidInputs(Materials.Redstone.getMolten(144)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 17), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 20)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 24)) + .fluidInputs(Materials.Redstone.getMolten(144)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 18), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 20)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 22)) + .fluidInputs(Materials.Redstone.getMolten(144)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 1), + new ItemStack(Blocks.sand, 1, 32767)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 2L, 0)).noFluidInputs() + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 1), + new ItemStack(Blocks.sand, 1, 32767)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 2L, 600)).noFluidInputs() + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Fluix, 1), + new ItemStack(Blocks.sand, 1, 32767)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 2L, 1200)).noFluidInputs() + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.FR_Wax.get(6), new ItemStack(Items.string, 1, 32767)) + .itemOutputs(getModItem(Forestry.modID, "candle", 24L, 0)).fluidInputs(Materials.Water.getFluid(600)) + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.FR_Wax.get(2), ItemList.FR_Silk.get(1)) + .itemOutputs(getModItem(Forestry.modID, "candle", 8L, 0)).fluidInputs(Materials.Water.getFluid(200)) + .noFluidOutputs().duration(16 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.FR_Silk.get(9), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(getModItem(Forestry.modID, "craftingMaterial", 1L, 3)) + .fluidInputs(Materials.Water.getFluid(500)).noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(Forestry.modID, "propolis", 5L, 2), GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(getModItem(Forestry.modID, "craftingMaterial", 1L, 1)).noFluidInputs().noFluidOutputs() + .duration(16 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(Forestry.modID, "sturdyMachine", 1L, 0), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Diamond, 4)) + .itemOutputs(ItemList.FR_Casing_Hardened.get(1)).fluidInputs(Materials.Water.getFluid(5000)) + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(32).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Bronze, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.FR_Casing_Sturdy.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1), + new ItemStack(Blocks.wool, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.torch, 6, 0)).fluidInputs(Materials.Creosote.getFluid(1000)) + .noFluidOutputs().duration(20 * SECONDS).eut(1).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(Forestry.modID, "craftingMaterial", 5L, 1), GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1)).noFluidInputs() + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.piston, 1, 32767), new ItemStack(Items.slime_ball, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.sticky_piston, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.piston, 1, 32767), ItemList.IC2_Resin.get(1)) + .itemOutputs(new ItemStack(Blocks.sticky_piston, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.piston, 1, 32767), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Blocks.sticky_piston, 1, 0)).fluidInputs(Materials.Glue.getFluid(100)) + .noFluidOutputs().duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 3), + GT_ModHandler.getIC2Item("carbonMesh", 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Duct_Tape.get(1)).fluidInputs(Materials.Glue.getFluid(300)).noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StyreneButadieneRubber, 2), + GT_ModHandler.getIC2Item("carbonMesh", 2), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Duct_Tape.get(1)).fluidInputs(Materials.Glue.getFluid(200)).noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Silicone, 1), + GT_ModHandler.getIC2Item("carbonMesh", 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Duct_Tape.get(1)).fluidInputs(Materials.Glue.getFluid(100)).noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + // Maintenance Hatch Recipes Using BrainTech + Refined Glue. Info: One BrainTech Recipe Is In GT+ü Originally. + // The Maintenance Hatch Recipe using SuperGlue is there. + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Hull_LV.get(1), ItemList.Duct_Tape.get(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Maintenance.get(1)).fluidInputs(Materials.Glue.getFluid(1000)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3), + new ItemStack(Items.leather, 1, 32767)) + .itemOutputs(new ItemStack(Items.book, 1, 0)).fluidInputs(Materials.Glue.getFluid(20)).noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3), + getModItem(NewHorizonsCoreMod.modID, "item.ArtificialLeather", 1L, 0)) + .itemOutputs(new ItemStack(Items.book, 1, 0)).fluidInputs(Materials.Glue.getFluid(20)).noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.Paper, 1)) + .itemOutputs(new ItemStack(Items.book, 1, 0)).fluidInputs(Materials.Glue.getFluid(20)).noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Paper_Printed_Pages.get(1), new ItemStack(Items.leather, 1, 32767)) + .itemOutputs(new ItemStack(Items.written_book, 1, 0)).fluidInputs(Materials.Glue.getFluid(20)) + .noFluidOutputs().duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Paper_Printed_Pages.get(1), + getModItem(NewHorizonsCoreMod.modID, "item.ArtificialLeather", 1L, 0)) + .itemOutputs(new ItemStack(Items.written_book, 1, 0)).fluidInputs(Materials.Glue.getFluid(20)) + .noFluidOutputs().duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Tin, 4)) + .itemOutputs(ItemList.Cell_Universal_Fluid.get(1)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Baked_Cake.get(1), new ItemStack(Items.egg, 1, 0)) + .itemOutputs(new ItemStack(Items.cake, 1, 0)).fluidInputs(Materials.Milk.getFluid(3000)) + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Bun.get(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Food_Sliced_Buns.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Bread.get(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Food_Sliced_Breads.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Baguette.get(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Food_Sliced_Baguettes.get(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Buns.get(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Food_Sliced_Bun.get(2)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Breads.get(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Food_Sliced_Bread.get(2)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Baguettes.get(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Food_Sliced_Baguette.get(2)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Food_Sliced_Bun.get(2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1)) + .itemOutputs(ItemList.Food_Burger_Meat.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Food_Sliced_Buns.get(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1)) + .itemOutputs(ItemList.Food_Burger_Meat.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Bun.get(2), ItemList.Food_Chum.get(1)) + .itemOutputs(ItemList.Food_Burger_Chum.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Buns.get(1), ItemList.Food_Chum.get(1)) + .itemOutputs(ItemList.Food_Burger_Chum.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Bun.get(2), ItemList.Food_Sliced_Cheese.get(3)) + .itemOutputs(ItemList.Food_Burger_Cheese.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Sliced_Buns.get(1), ItemList.Food_Sliced_Cheese.get(3)) + .itemOutputs(ItemList.Food_Burger_Cheese.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Food_Flat_Dough.get(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1)) + .itemOutputs(ItemList.Food_Raw_Pizza_Meat.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Flat_Dough.get(1), ItemList.Food_Sliced_Cheese.get(3)) + .itemOutputs(ItemList.Food_Raw_Pizza_Cheese.get(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + // SC craft + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Pentacadmiummagnesiumhexaoxid, 3), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.StainlessSteel, 2), + ItemList.Electric_Pump_MV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 3)) + .fluidInputs(Materials.Helium.getGas(2000)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Titaniumonabariumdecacoppereikosaoxid, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Titanium, 4), + ItemList.Electric_Pump_HV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 6)) + .fluidInputs(Materials.Helium.getGas(4000)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Uraniumtriplatinid, 9), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.TungstenSteel, 6), + ItemList.Electric_Pump_EV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 9)) + .fluidInputs(Materials.Helium.getGas(6000)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Vanadiumtriindinid, 12), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NiobiumTitanium, 8), + ItemList.Electric_Pump_IV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 12)) + .fluidInputs(Materials.Helium.getGas(8000)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get( + OrePrefixes.wireGt01, + Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, + 15), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Enderium, 10), + ItemList.Electric_Pump_LuV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 15)) + .fluidInputs(Materials.Helium.getGas(12000)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 18), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Naquadah, 12), + ItemList.Electric_Pump_ZPM.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 18)) + .fluidInputs(Materials.Helium.getGas(16000)).noFluidOutputs().duration(1 * MINUTES + 20 * SECONDS) + .eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuvwire, 21), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Neutronium, 14), + ItemList.Electric_Pump_UV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 21)) + .fluidInputs(Materials.Helium.getGas(20000)).noFluidOutputs().duration(1 * MINUTES + 20 * SECONDS) + .eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuhvwire, 24), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Bedrockium, 16), + ItemList.Electric_Pump_UHV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUHV, 24)) + .fluidInputs(Materials.Helium.getGas(24000)).noFluidOutputs().duration(2 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.IronMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Lead, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.ULV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.IronMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.LV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SteelMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Aluminium, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SteelMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.EnergeticAlloy, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.HV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.NeodymiumMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.TungstenSteel, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.EV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.NeodymiumMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Iridium, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.IV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + Materials LuVMat = BartWorks.isModLoaded() ? Materials.get("Ruridit") : Materials.Osmiridium; + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.LuV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.ZPM_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.ElectrumFlux, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.UV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(500000).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Tritanium, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.UHV_Coil.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(2000000).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 6), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Wood, 2)) + .fluidInputs(Materials.Glue.getFluid(10)).noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 3), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Wood, 4)) + .fluidInputs(Materials.Glue.getFluid(20)).noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 1), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Wood, 6)) + .fluidInputs(Materials.Glue.getFluid(60)).noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 4), + GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Advanced, 4), + GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Diamond, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Ingot_IridiumAlloy.get(1)).noFluidInputs().noFluidOutputs().duration(60 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iridium, 1), + ItemList.Electric_Motor_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Iridium, 1), + ItemList.Component_Filter.get(8), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Iridium, 8)) + .itemOutputs(ItemList.Casing_Vent_T2.get(1)).noFluidInputs().noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + if (!GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "torchesFromCoal", false)) { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1), + new ItemStack(Items.coal, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.torch, 4)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(1).addTo(sAssemblerRecipes); + } + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 2), + GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Steel, 1)) + .itemOutputs(new ItemStack(Blocks.light_weighted_pressure_plate, 1)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 2), + GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Steel, 1)) + .itemOutputs(new ItemStack(Blocks.heavy_weighted_pressure_plate, 1)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 6), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Items.iron_door, 1)).noFluidInputs().noFluidOutputs().duration(30 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 7), + GT_Utility.getIntegratedCircuit(7)) + .itemOutputs(new ItemStack(Items.cauldron, 1)).noFluidInputs().noFluidOutputs().duration(35 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("ironFence", 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 3), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(new ItemStack(Blocks.iron_bars, 4)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 6), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Items.iron_door, 1)).noFluidInputs().noFluidOutputs().duration(30 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 7), + GT_Utility.getIntegratedCircuit(7)) + .itemOutputs(new ItemStack(Items.cauldron, 1)).noFluidInputs().noFluidOutputs().duration(35 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("ironFence", 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 3), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(new ItemStack(Blocks.iron_bars, 4)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 3), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(new ItemStack(Blocks.fence, 1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Iron, 2)) + .itemOutputs(new ItemStack(Blocks.tripwire_hook, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2)) + .itemOutputs(new ItemStack(Blocks.tripwire_hook, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 3), + new ItemStack(Items.string, 3, 32767)) + .itemOutputs(new ItemStack(Items.bow, 1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(4) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 3), + ItemList.Component_Minecart_Wheels_Iron.get(2)) + .itemOutputs(new ItemStack(Items.minecart, 1)).noFluidInputs().noFluidOutputs().duration(25 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 3), + ItemList.Component_Minecart_Wheels_Iron.get(2)) + .itemOutputs(new ItemStack(Items.minecart, 1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 3), + ItemList.Component_Minecart_Wheels_Steel.get(2)) + .itemOutputs(new ItemStack(Items.minecart, 1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Iron, 2)) + .itemOutputs(ItemList.Component_Minecart_Wheels_Iron.get(1)).noFluidInputs().noFluidOutputs() + .duration(25 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2)) + .itemOutputs(ItemList.Component_Minecart_Wheels_Iron.get(1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Steel, 2)) + .itemOutputs(ItemList.Component_Minecart_Wheels_Steel.get(1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.hopper, 1, 32767)) + .itemOutputs(new ItemStack(Items.hopper_minecart, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.tnt, 1, 32767)) + .itemOutputs(new ItemStack(Items.tnt_minecart, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.chest, 1, 32767)) + .itemOutputs(new ItemStack(Items.chest_minecart, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.trapped_chest, 1, 32767)) + .itemOutputs(new ItemStack(Items.chest_minecart, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.furnace, 1, 32767)) + .itemOutputs(new ItemStack(Items.furnace_minecart, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tripwire_hook, 1), new ItemStack(Blocks.chest, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.trapped_chest, 1)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stone, 1, 0), GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(new ItemStack(Blocks.stonebrick, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.sandstone, 1, 0), GT_Utility.getIntegratedCircuit(23)) + .itemOutputs(new ItemStack(Blocks.sandstone, 1, 2)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.sandstone, 1, 1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Blocks.sandstone, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.sandstone, 1, 2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Blocks.sandstone, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(GT_ModHandler.getIC2Item("machine", 1)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 5 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_ULV.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 5 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_LV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_MV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_HV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_EV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_IV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Chrome, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_LuV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_ZPM.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_UV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 8), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.Casing_MAX.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Invar, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Invar, 1)) + .itemOutputs(ItemList.Casing_HeatProof.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1)) + .itemOutputs(ItemList.Casing_SolidSteel.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1)) + .itemOutputs(ItemList.Casing_FrostProof.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1)) + .itemOutputs(ItemList.Casing_RobustTungstenSteel.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1)) + .itemOutputs(ItemList.Casing_CleanStainlessSteel.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Titanium, 1)) + .itemOutputs(ItemList.Casing_StableTitanium.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmiridium, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 1)) + .itemOutputs(ItemList.Casing_MiningOsmiridium.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1)) + .itemOutputs(ItemList.Casing_MiningNeutronium.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BlackPlutonium, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackPlutonium, 1)) + .itemOutputs(ItemList.Casing_MiningBlackPlutonium.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 4), ItemList.Casing_LuV.get(1)) + .itemOutputs(ItemList.Casing_Fusion.get(1)).fluidInputs(Materials.HSSG.getMolten(288)).noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Americium, 4), + ItemList.Casing_Fusion.get(1)) + .itemOutputs(ItemList.Casing_Fusion2.get(1)).fluidInputs(Materials.NaquadahAlloy.getMolten(288)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Magnalium, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlueSteel, 1)) + .itemOutputs(ItemList.Casing_Turbine.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 6), + ItemList.Casing_Turbine.get(1)) + .itemOutputs(ItemList.Casing_Turbine1.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6), + ItemList.Casing_Turbine.get(1)) + .itemOutputs(ItemList.Casing_Turbine2.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6), + ItemList.Casing_Turbine.get(1)) + .itemOutputs(ItemList.Casing_Turbine3.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 6), + ItemList.Casing_Turbine.get(1)) + .itemOutputs(ItemList.Casing_TurbineGasAdvanced.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_SolidSteel.get(1), GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(ItemList.Casing_Chemically_Inert.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(216)).noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iridium, 1)) + .itemOutputs(ItemList.Casing_Advanced_Iridium.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + if (GT_Mod.gregtechproxy.mHardMachineCasings) { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Lead, 2), + ItemList.Casing_ULV.get(1)) + .itemOutputs(ItemList.Hull_ULV.get(1)).fluidInputs(Materials.Plastic.getMolten(288)) + .noFluidOutputs().duration(1 * SECONDS + 5 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 2), + ItemList.Casing_LV.get(1)) + .itemOutputs(ItemList.Hull_LV.get(1)).fluidInputs(Materials.Plastic.getMolten(288)).noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2), + ItemList.Casing_MV.get(1)) + .itemOutputs(ItemList.Hull_MV.get(1)).fluidInputs(Materials.Plastic.getMolten(288)).noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2), + ItemList.Casing_MV.get(1)) + .itemOutputs(ItemList.Hull_MV.get(1)).fluidInputs(Materials.Plastic.getMolten(288)).noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 2), + ItemList.Casing_HV.get(1)) + .itemOutputs(ItemList.Hull_HV.get(1)).fluidInputs(Materials.Plastic.getMolten(288)).noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2), + ItemList.Casing_EV.get(1)) + .itemOutputs(ItemList.Hull_EV.get(1)).fluidInputs(Materials.Plastic.getMolten(288)).noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 2), + ItemList.Casing_IV.get(1)) + .itemOutputs(ItemList.Hull_IV.get(1)).fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)) + .noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.VanadiumGallium, 2), + ItemList.Casing_LuV.get(1)) + .itemOutputs(ItemList.Hull_LuV.get(1)).fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)) + .noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 2), + ItemList.Casing_ZPM.get(1)) + .itemOutputs(ItemList.Hull_ZPM.get(1)).fluidInputs(Materials.Polybenzimidazole.getMolten(288)) + .noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.NaquadahAlloy, 2), + ItemList.Casing_UV.get(1)) + .itemOutputs(ItemList.Hull_UV.get(1)).fluidInputs(Materials.Polybenzimidazole.getMolten(288)) + .noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUV, 2), + ItemList.Casing_MAX.get(1)) + .itemOutputs(ItemList.Hull_MAX.get(1)).fluidInputs(Materials.Polybenzimidazole.getMolten(288)) + .noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + } else { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Lead, 2), + ItemList.Casing_ULV.get(1)) + .itemOutputs(ItemList.Hull_ULV.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 5 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 2), + ItemList.Casing_LV.get(1)) + .itemOutputs(ItemList.Hull_LV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2), + ItemList.Casing_MV.get(1)) + .itemOutputs(ItemList.Hull_MV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2), + ItemList.Casing_MV.get(1)) + .itemOutputs(ItemList.Hull_MV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 2), + ItemList.Casing_HV.get(1)) + .itemOutputs(ItemList.Hull_HV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2), + ItemList.Casing_EV.get(1)) + .itemOutputs(ItemList.Hull_EV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 2), + ItemList.Casing_IV.get(1)) + .itemOutputs(ItemList.Hull_IV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.VanadiumGallium, 2), + ItemList.Casing_LuV.get(1)) + .itemOutputs(ItemList.Hull_LuV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 2), + ItemList.Casing_ZPM.get(1)) + .itemOutputs(ItemList.Hull_ZPM.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.NaquadahAlloy, 2), + ItemList.Casing_UV.get(1)) + .itemOutputs(ItemList.Hull_UV.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUV, 2), + ItemList.Casing_MAX.get(1)) + .itemOutputs(ItemList.Hull_MAX.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + } + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 1)) + .itemOutputs(ItemList.Battery_Hull_LV.get(1)).fluidInputs(Materials.Plastic.getMolten(144)) + .noFluidOutputs().duration(40 * SECONDS).eut(1).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 3)) + .itemOutputs(ItemList.Battery_Hull_MV.get(1)).fluidInputs(Materials.Plastic.getMolten(432)) + .noFluidOutputs().duration(1 * MINUTES + 20 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 3)) + .itemOutputs(ItemList.Battery_Hull_MV.get(1)).fluidInputs(Materials.Plastic.getMolten(432)) + .noFluidOutputs().duration(1 * MINUTES + 20 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 4), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 9)) + .itemOutputs(ItemList.Battery_Hull_HV.get(1)).fluidInputs(Materials.Plastic.getMolten(1296)) + .noFluidOutputs().duration(2 * MINUTES + 40 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.string, 4, 32767), new ItemStack(Items.slime_ball, 1, 32767)) + .itemOutputs(new ItemStack(Items.lead, 2)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.IC2_Compressed_Coal_Ball.get(8), new ItemStack(Blocks.brick_block, 1)) + .itemOutputs(ItemList.IC2_Compressed_Coal_Chunk.get(1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("waterMill", 2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_ModHandler.getIC2Item("generator", 1)).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES + 20 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("batPack", 1L, 32767), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.IC2_ReBattery.get(6)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("carbonFiber", 2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_ModHandler.getIC2Item("carbonMesh", 1)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 4), + GT_ModHandler.getIC2Item("generator", 1)) + .itemOutputs(GT_ModHandler.getIC2Item("waterMill", 2)).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES + 20 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 5), + new ItemStack(Blocks.chest, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.hopper)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 5), + new ItemStack(Blocks.trapped_chest, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.hopper)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 5), + new ItemStack(Blocks.chest, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.hopper)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 5), + new ItemStack(Blocks.trapped_chest, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.hopper)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Magnalium, 2), + GT_ModHandler.getIC2Item("generator", 1)) + .itemOutputs(GT_ModHandler.getIC2Item("windMill", 1)).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES + 20 * SECONDS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1), + new ItemStack(Items.blaze_powder, 1, 0)) + .itemOutputs(new ItemStack(Items.ender_eye, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 6), + new ItemStack(Items.blaze_rod, 1, 0)) + .itemOutputs(new ItemStack(Items.ender_eye, 6, 0)).noFluidInputs().noFluidOutputs() + .duration(2 * MINUTES + 5 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gear, Materials.CobaltBrass, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1)) + .itemOutputs(ItemList.Component_Sawblade_Diamond.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES + 20 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 4)) + .itemOutputs(new ItemStack(Blocks.redstone_lamp, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(1).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(new ItemStack(Blocks.redstone_torch, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(1).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 4)) + .itemOutputs(new ItemStack(Items.compass, 1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 4)) + .itemOutputs(new ItemStack(Items.compass, 1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 4)) + .itemOutputs(new ItemStack(Items.clock, 1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1)) + .itemOutputs(new ItemStack(Blocks.torch, 2)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(1).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1)) + .itemOutputs(new ItemStack(Blocks.torch, 6)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(1).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1), ItemList.IC2_Resin.get(1)) + .itemOutputs(new ItemStack(Blocks.torch, 6)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(1).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 8), + new ItemStack(Items.flint, 1)) + .itemOutputs(ItemList.IC2_Compressed_Coal_Ball.get(1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4).addTo(sAssemblerRecipes); + + if (!GT_Mod.gregtechproxy.mDisableIC2Cables) { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getIC2Item("tinCableItem", 1), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("insulatedTinCableItem", 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getIC2Item("copperCableItem", 1), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("insulatedCopperCableItem", 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getIC2Item("goldCableItem", 1), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2)) + .itemOutputs(GT_ModHandler.getIC2Item("insulatedGoldCableItem", 1)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(2).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getIC2Item("ironCableItem", 1), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 3)) + .itemOutputs(GT_ModHandler.getIC2Item("insulatedIronCableItem", 1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sAssemblerRecipes); + } + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Wood, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(new ItemStack(Items.wooden_sword, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Stone, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(new ItemStack(Items.stone_sword, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(new ItemStack(Items.iron_sword, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(new ItemStack(Items.golden_sword, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Diamond, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(new ItemStack(Items.diamond_sword, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Bronze, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(ItemList.Tool_Sword_Bronze.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1)) + .itemOutputs(ItemList.Tool_Sword_Steel.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Wood, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.wooden_pickaxe, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Stone, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.stone_pickaxe, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.iron_pickaxe, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.golden_pickaxe, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Diamond, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.diamond_pickaxe, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Bronze, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Pickaxe_Bronze.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Pickaxe_Steel.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Wood, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.wooden_shovel, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Stone, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.stone_shovel, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.iron_shovel, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.golden_shovel, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Diamond, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.diamond_shovel, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Bronze, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Shovel_Bronze.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Shovel_Steel.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Wood, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.wooden_axe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Stone, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.stone_axe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.iron_axe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.golden_axe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Diamond, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.diamond_axe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Bronze, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Axe_Bronze.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Axe_Steel.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Wood, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.wooden_hoe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Stone, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.stone_hoe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.iron_hoe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.golden_hoe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Diamond, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(new ItemStack(Items.diamond_hoe, 1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Bronze, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Hoe_Bronze.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2)) + .itemOutputs(ItemList.Tool_Hoe_Steel.getUndamaged(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + // fuel rod assembler recipes + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.ThoriumCell_1.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.ThoriumCell_2.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.ThoriumCell_1.get(4), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Steel, 6), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(ItemList.ThoriumCell_4.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.ThoriumCell_2.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.ThoriumCell_4.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Uraniumcell_1.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Uraniumcell_2.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Uraniumcell_1.get(4), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Steel, 6), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(ItemList.Uraniumcell_4.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Uraniumcell_2.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.Uraniumcell_4.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Moxcell_1.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Moxcell_2.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Moxcell_1.get(4), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Steel, 6), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(ItemList.Moxcell_4.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Moxcell_2.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.Moxcell_4.get(1)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.NaquadahCell_1.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.NaquadahCell_2.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(400).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.NaquadahCell_1.get(4), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 6), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(ItemList.NaquadahCell_4.get(1)).noFluidInputs().noFluidOutputs() + .duration(7 * SECONDS + 10 * TICKS).eut(400).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.NaquadahCell_2.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.NaquadahCell_4.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(400).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.MNqCell_1.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.MNqCell_2.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(400) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.MNqCell_1.get(4), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 6), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(ItemList.MNqCell_4.get(1)).noFluidInputs().noFluidOutputs() + .duration(7 * SECONDS + 10 * TICKS).eut(400).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.MNqCell_2.get(2), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.MNqCell_4.get(1)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(400) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Neutronium, 8), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Iridium, 4)) + .itemOutputs(ItemList.neutroniumHeatCapacitor.get(1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.NaquadahAlloy.getPlates(8), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1)) + .itemOutputs(ItemList.RadiantNaquadahAlloyCasing.get(1)).noFluidInputs().noFluidOutputs() + .duration(10 * TICKS).eut(400000).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.KevlarFiber.get(8), GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.WovenKevlar.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + ItemStack[] plates = new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L) }; + + for (Materials tMat : solderingMats) { + int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 + : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; + + for (ItemStack tPlate : plates) { + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.lever, 1, 32767), tPlate, GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Cover_Controller.get(1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(40 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.redstone_torch, 1, 32767), + tPlate, + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Cover_ActivityDetector.get(1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(40 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.heavy_weighted_pressure_plate, 1, 32767), + tPlate, + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Cover_FluidDetector.get(1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(40 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.light_weighted_pressure_plate, 1, 32767), + tPlate, + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Cover_ItemDetector.get(1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(40 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("ecMeter", 1), tPlate, GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Cover_EnergyDetector.get(1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(40 * SECONDS) + .eut(16).addTo(sAssemblerRecipes); + } + + } + } + + /** + * Adds recipes for input buses from ULV to UHV + */ + public void loadInputBusesRecipes() { + // ULV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_ULV.get(1)).fluidInputs(Materials.Glue.getFluid(1 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_ULV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(1 * HALF_INGOT)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_ULV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_ULV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(4)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + } + + // LV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_LV.get(1)).fluidInputs(Materials.Glue.getFluid(5 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_LV.get(1)).fluidInputs(Materials.Plastic.getFluid(1 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_LV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_LV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(9)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + } + + // MV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_MV.get(1)).fluidInputs(Materials.Plastic.getFluid(2 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_MV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_MV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + } + + // HV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_HV.get(1)).fluidInputs(Materials.Plastic.getFluid(3 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_HV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_HV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * QUARTER_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + } + + // EV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_EV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_EV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + } + + // IV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_IV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_IV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + } + + // LuV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_LuV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_LuV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + } + + // ZPM input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ZPM.get(1), + getModItem(IronChests.modID, "BlockIronChest", 2, 5), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_ZPM.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + } + + // UV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_UV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 2, 6), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_UV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + } + + // UHV input bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MAX.get(1), + getModItem(AvaritiaAddons.modID, "CompressedChest", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_Bus_MAX.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + } + } + + /** + * Adds recipes for output buses from ULV to UHV + */ + public void loadOutputBusesRecipes() { + + /* + * those early exits prevents further hatches recipes from being registered, but it's probably fine, as that + * means we aren't in full pack + */ + + if (!NewHorizonsCoreMod.isModLoaded()) { + return; + } + + // ULV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)).fluidInputs(Materials.Glue.getFluid(1 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(1 * HALF_INGOT)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + getModItem(NewHorizonsCoreMod.modID, "BabyChest", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(4)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + } + + // LV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)).fluidInputs(Materials.Glue.getFluid(5 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(1 * INGOTS)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + new ItemStack(Blocks.chest), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(9)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + } + + if (!IronChests.isModLoaded()) { + return; + } + + // MV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 3), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(2 * INGOTS)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 3), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 3), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + } + + // HV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 0), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_HV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(3 * INGOTS)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 0), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_HV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 0), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_HV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * QUARTER_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + } + + // EV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_EV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_EV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + } + + // IV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_IV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_IV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + } + + // LuV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 2), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LuV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 1, 2), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LuV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + } + + // ZPM output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ZPM.get(1), + getModItem(IronChests.modID, "BlockIronChest", 2, 5), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ZPM.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + } + + // UV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_UV.get(1), + getModItem(IronChests.modID, "BlockIronChest", 2, 6), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_UV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + } + + if (!AvaritiaAddons.isModLoaded()) { + return; + } + + // UHV output bus + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MAX.get(1), + getModItem(AvaritiaAddons.modID, "CompressedChest", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MAX.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + } + } + + /** + * Adds recipes for input hatches from ULV to UHV + */ + public void loadInputHatchesRecipes() { + // ULV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_ULV.get(1)).fluidInputs(Materials.Glue.getFluid(1 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_ULV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(1 * HALF_INGOT)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_ULV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_ULV.get(1)).fluidInputs(Materials.Polybenzimidazole.getFluid(4)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + } + + /* + * those early exits prevents further hatches recipes from being registered, but it's probably fine, as that + * means we aren't in full pack + */ + + if (!BuildCraftFactory.isModLoaded()) { + return; + } + + // LV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_LV.get(1)).fluidInputs(Materials.Glue.getFluid(5 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_LV.get(1)).fluidInputs(Materials.Plastic.getFluid(1 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_LV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_LV.get(1)).fluidInputs(Materials.Polybenzimidazole.getFluid(9)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + } + + if (!IronTanks.isModLoaded()) { + return; + } + + // MV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronTanks.modID, "copperTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_MV.get(1)).fluidInputs(Materials.Plastic.getFluid(2 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronTanks.modID, "copperTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_MV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronTanks.modID, "copperTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_MV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + } + + // HV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronTanks.modID, "ironTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_HV.get(1)).fluidInputs(Materials.Plastic.getFluid(3 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronTanks.modID, "ironTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_HV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronTanks.modID, "ironTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_HV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * QUARTER_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + } + + // EV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronTanks.modID, "silverTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_EV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronTanks.modID, "silverTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_EV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + } + + // IV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronTanks.modID, "goldTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_IV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronTanks.modID, "goldTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_IV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + } + + // LuV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronTanks.modID, "diamondTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_LuV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronTanks.modID, "diamondTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_LuV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + } + + // ZPM input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ZPM.get(1), + getModItem(IronTanks.modID, "obsidianTank", 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_ZPM.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + } + + // UV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_UV.get(1), + ItemList.Super_Tank_LV.get(1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_UV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + } + + // UHV input hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MAX.get(1), + ItemList.Super_Tank_MV.get(1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Hatch_Input_MAX.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + } + } + + /** + * Adds recipes for output hatches from ULV to UHV + */ + public void loadOutputHatchesRecipes() { + // ULV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)).fluidInputs(Materials.Glue.getFluid(1 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(1 * HALF_INGOT)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ULV.get(1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ULV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(4)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_ULV).addTo(sAssemblerRecipes); + } + + /* + * those early exits prevents further hatches recipes from being registered, but it's probably fine, as that + * means we aren't in full pack + */ + + if (!BuildCraftFactory.isModLoaded()) { + return; + } + + // LV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)).fluidInputs(Materials.Glue.getFluid(5 * INGOTS)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(1 * INGOTS)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LV.get(1), + getModItem(BuildCraftFactory.modID, "tankBlock", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(9)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + } + + if (!IronTanks.isModLoaded()) { + return; + } + + // MV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronTanks.modID, "copperTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(2 * INGOTS)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronTanks.modID, "copperTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MV.get(1), + getModItem(IronTanks.modID, "copperTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * EIGHTH_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + } + + // HV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronTanks.modID, "ironTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_HV.get(1)) + .fluidInputs(Materials.Plastic.getFluid(3 * INGOTS)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronTanks.modID, "ironTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_HV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + getModItem(IronTanks.modID, "ironTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_HV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * QUARTER_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + } + + // EV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronTanks.modID, "silverTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_EV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_EV.get(1), + getModItem(IronTanks.modID, "silverTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_EV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * HALF_INGOT)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + } + + // IV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronTanks.modID, "goldTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_IV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_IV.get(1), + getModItem(IronTanks.modID, "goldTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_IV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(1 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + } + + // LuV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronTanks.modID, "diamondTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LuV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_LuV.get(1), + getModItem(IronTanks.modID, "diamondTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_LuV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(2 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + } + + // ZPM output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_ZPM.get(1), + getModItem(IronTanks.modID, "obsidianTank", 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_ZPM.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(4 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + } + + // UV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_UV.get(1), + ItemList.Super_Tank_LV.get(1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_UV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(8 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + } + + // UHV output hatch + { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_MAX.get(1), + ItemList.Super_Tank_MV.get(1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Hatch_Output_Bus_MAX.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getFluid(16 * INGOTS)).noFluidOutputs() + .duration(24 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + } + } + + /** + * Load all Railcraft recipes for GT Machines + */ + private void withRailcraft() { + if (!Railcraft.isModLoaded()) return; + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { new ItemStack(Blocks.stone_slab, 1, 0), ItemList.RC_Rebar.get(1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Tie_Stone.get(1)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { new ItemStack(Blocks.stone_slab, 1, 7), ItemList.RC_Rebar.get(1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Tie_Stone.get(1)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(8).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.RC_Rail_HS.get(16)).fluidInputs(Materials.Blaze.getMolten(216)).noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(ItemList.RC_Rail_HS.get(8)).fluidInputs(Materials.ConductiveIron.getMolten(432)) + .noFluidOutputs().duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(ItemList.RC_Rail_HS.get(32)).fluidInputs(Materials.VibrantAlloy.getMolten(216)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(ItemList.RC_Rail_HS.get(64)).fluidInputs(Materials.CrystallineAlloy.getMolten(216)) + .noFluidOutputs().duration(5 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Rail_Standard.get(3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.RC_Rail_Adv.get(8)).fluidInputs(Materials.Redstone.getMolten(216)) + .noFluidOutputs().duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Rail_Standard.get(3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.RC_Rail_Adv.get(16)).fluidInputs(Materials.RedAlloy.getMolten(216)) + .noFluidOutputs().duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Rail_Standard.get(3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.RC_Rail_Adv.get(32)).fluidInputs(Materials.ConductiveIron.getMolten(216)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Rail_Standard.get(3), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(ItemList.RC_Rail_Adv.get(64)).fluidInputs(Materials.VibrantAlloy.getMolten(216)) + .noFluidOutputs().duration(5 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Copper, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Gold, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(2)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(4).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Electrum, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(4)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(8)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride, 1), - ItemList.Paper_Printed_Pages.get(1L), - Materials.Glue.getFluid(20L), - new ItemStack(Items.written_book, 1, 0), - 32, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3), - Materials.Glue.getFluid(20L), - new ItemStack(Items.book, 1, 0), - 20, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_ModHandler.getIC2Item("carbonMesh", 4L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Zinc, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.Component_Filter.get(1L), - 1600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 64), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Zinc, 16L), - GT_Utility.getIntegratedCircuit(1) }, - Materials.Plastic.getFluid(144), - ItemList.Component_Filter.get(1), - 1600, - 16); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 64), - ItemList.Circuit_Silicon_Wafer2.get(32L), GT_Utility.getIntegratedCircuit(1) }, - Materials.AdvancedGlue.getFluid(500L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphene, 64), - 3200, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 64), - ItemList.Circuit_Silicon_Wafer3.get(8L), GT_Utility.getIntegratedCircuit(1) }, - Materials.AdvancedGlue.getFluid(250L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphene, 64), - 800, - 7920); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_LV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Basic), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_LV.get(1L), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_MV.get(1L), - 350, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Advanced), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_HV.get(1L), - 300, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Data), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_EV.get(1L), - 250, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Elite), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_LuV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Master), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_LuV.get(1L), - 150, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_ZPM.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Ultimate), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_ZPM.get(1L), - 100, - (int) TierEU.RECIPE_ZPM); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_UV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.SuperconductorUHV), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.FluidRegulator_UV.get(1L), - 50, - 500000); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Steam_Valve_LV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Basic), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Steam_Regulator_LV.get(1L), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Steam_Valve_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Steam_Regulator_MV.get(1L), - 350, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Steam_Valve_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Advanced), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Steam_Regulator_HV.get(1L), - 300, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Steam_Valve_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Data), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Steam_Regulator_EV.get(1L), - 250, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Steam_Valve_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Elite), 2L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Steam_Regulator_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_LV.get(1L), ItemList.Electric_Motor_LV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.gear.get(Materials.Steel), 2L), - GT_Utility.getIntegratedCircuit(5) }, - GT_Values.NF, - ItemList.Steam_Valve_LV.get(1L), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_MV.get(1L), ItemList.Electric_Motor_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.gear.get(Materials.Aluminium), 2L), - GT_Utility.getIntegratedCircuit(5) }, - GT_Values.NF, - ItemList.Steam_Valve_MV.get(1L), - 350, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_HV.get(1L), ItemList.Electric_Motor_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.gear.get(Materials.StainlessSteel), 2L), - GT_Utility.getIntegratedCircuit(5) }, - GT_Values.NF, - ItemList.Steam_Valve_HV.get(1L), - 300, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_EV.get(1L), ItemList.Electric_Motor_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.gear.get(Materials.Titanium), 2L), - GT_Utility.getIntegratedCircuit(5) }, - GT_Values.NF, - ItemList.Steam_Valve_EV.get(1L), - 250, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_IV.get(1L), ItemList.Electric_Motor_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.gear.get(Materials.TungstenSteel), 2L), - GT_Utility.getIntegratedCircuit(5) }, - GT_Values.NF, - ItemList.Steam_Valve_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 4L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Basic), 4), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Schematic.get(1L), - 600, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 3L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Schematic.get(1L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Advanced), 1), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Schematic.get(1L), - 150, - 48); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 1L), - ItemList.Circuit_Chip_LPIC.get(2L), ItemList.HV_Coil.get(2L), - ItemList.Reactor_Coolant_He_1.get(1L), ItemList.Electric_Pump_HV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Energy_HV.get(1L), - 200, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 1L), - ItemList.Circuit_Chip_PIC.get(2L), ItemList.EV_Coil.get(2L), - ItemList.Reactor_Coolant_He_1.get(1L), ItemList.Electric_Pump_EV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Energy_EV.get(1L), - 200, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 1L), - ItemList.Circuit_Chip_HPIC.get(2L), ItemList.IV_Coil.get(2L), - ItemList.Reactor_Coolant_He_3.get(1L), ItemList.Electric_Pump_IV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Energy_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 1L), - ItemList.Circuit_Chip_LPIC.get(2L), ItemList.HV_Coil.get(2L), - ItemList.Reactor_Coolant_NaK_1.get(1L), ItemList.Electric_Pump_HV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Energy_HV.get(1L), - 200, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 1L), - ItemList.Circuit_Chip_PIC.get(2L), ItemList.EV_Coil.get(2L), - ItemList.Reactor_Coolant_NaK_1.get(1L), ItemList.Electric_Pump_EV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Energy_EV.get(1L), - 200, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 1L), - ItemList.Circuit_Chip_HPIC.get(2L), ItemList.IV_Coil.get(2L), - ItemList.Reactor_Coolant_NaK_3.get(1L), ItemList.Electric_Pump_IV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Energy_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Gold, 1L), - ItemList.Circuit_Chip_LPIC.get(2L), ItemList.HV_Coil.get(2L), - ItemList.Reactor_Coolant_He_1.get(1L), ItemList.Electric_Pump_HV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Dynamo_HV.get(1L), - 200, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Aluminium, 1L), - ItemList.Circuit_Chip_PIC.get(2L), ItemList.EV_Coil.get(2L), - ItemList.Reactor_Coolant_He_1.get(1L), ItemList.Electric_Pump_EV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Dynamo_EV.get(1L), - 200, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Vanadiumtriindinid, 1L), - ItemList.Circuit_Chip_HPIC.get(2L), ItemList.IV_Coil.get(2L), - ItemList.Reactor_Coolant_He_3.get(1L), ItemList.Electric_Pump_IV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Dynamo_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Gold, 1L), - ItemList.Circuit_Chip_LPIC.get(2L), ItemList.HV_Coil.get(2L), - ItemList.Reactor_Coolant_NaK_1.get(1L), ItemList.Electric_Pump_HV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Dynamo_HV.get(1L), - 200, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Aluminium, 1L), - ItemList.Circuit_Chip_PIC.get(2L), ItemList.EV_Coil.get(2L), - ItemList.Reactor_Coolant_NaK_1.get(1L), ItemList.Electric_Pump_EV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Dynamo_EV.get(1L), - 200, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Vanadiumtriindinid, 1L), - ItemList.Circuit_Chip_HPIC.get(2L), ItemList.IV_Coil.get(2L), - ItemList.Reactor_Coolant_NaK_3.get(1L), ItemList.Electric_Pump_IV.get(1L) }, - GT_Values.NF, - ItemList.Hatch_Dynamo_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Steel, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 6L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.Steel, 2L), - GT_Utility.getIntegratedCircuit(2) }, - Materials.Tin.getMolten(144L), - ItemList.Long_Distance_Pipeline_Fluid.get(2L), - 300, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Tin, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 6L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.Steel, 2L), - GT_Utility.getIntegratedCircuit(2) }, - Materials.Tin.getMolten(144L), - ItemList.Long_Distance_Pipeline_Item.get(2L), - 300, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Steel, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 9L), - GT_Utility.getIntegratedCircuit(24) }, - Materials.Tin.getMolten(144L), - ItemList.Long_Distance_Pipeline_Fluid_Pipe.get(64L), - 600, - 24); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Tin, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 9L), - GT_Utility.getIntegratedCircuit(24) }, - Materials.Tin.getMolten(144L), - ItemList.Long_Distance_Pipeline_Item_Pipe.get(64L), - 600, - 24); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeQuadruple, Materials.StainlessSteel, 1L), - ItemList.Hull_EV.get(1L), GT_Utility.getIntegratedCircuit(4) }, - Materials.Glass.getMolten(2304L), - ItemList.Hatch_Input_Multi_2x2_EV.get(1L), - 600, - 24); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeQuadruple, Materials.Titanium, 1L), - ItemList.Hull_IV.get(1L), GT_Utility.getIntegratedCircuit(4) }, - Materials.Glass.getMolten(2304L), - ItemList.Hatch_Input_Multi_2x2_IV.get(1L), - 600, - 24); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeQuadruple, Materials.TungstenSteel, 1L), - ItemList.Hull_LuV.get(1L), GT_Utility.getIntegratedCircuit(4) }, - Materials.Polytetrafluoroethylene.getMolten(2304L), - ItemList.Hatch_Input_Multi_2x2_LuV.get(1L), - 600, - 24); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeQuadruple, Materials.NiobiumTitanium, 1L), - ItemList.Hull_ZPM.get(1L), GT_Utility.getIntegratedCircuit(4) }, - Materials.Polytetrafluoroethylene.getMolten(2304L), - ItemList.Hatch_Input_Multi_2x2_ZPM.get(1L), - 600, - 24); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeQuadruple, Materials.MysteriousCrystal, 1L), - ItemList.Hull_UV.get(1L), GT_Utility.getIntegratedCircuit(4) }, - Materials.Polybenzimidazole.getMolten(2304L), - ItemList.Hatch_Input_Multi_2x2_UV.get(1L), - 600, - 24); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeQuadruple, Materials.Neutronium, 1L), - ItemList.Hull_MAX.get(1L), GT_Utility.getIntegratedCircuit(4) }, - Materials.Polybenzimidazole.getMolten(2304L), - ItemList.Hatch_Input_Multi_2x2_UHV.get(1L), - 600, - 24); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 4L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1L), - ItemList.Robot_Arm_IV.get(2L), GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Casing_Gearbox_TungstenSteel.get(1L), - 200, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(16)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(48).addTo(sAssemblerRecipes); - { // limiting lifetime of the variables - ItemStack flask = ItemList.VOLUMETRIC_FLASK.get(1); - NBTTagCompound nbtFlask = new NBTTagCompound(); - nbtFlask.setInteger("Capacity", 144); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(1), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 288); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(2), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 576); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(3), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 720); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(4), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 864); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(5), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 72); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(6), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 648); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(7), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 936); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(8), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 250); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(10), - flask, - 10, - (int) TierEU.RECIPE_LV); - nbtFlask.setInteger("Capacity", 500); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - ItemList.VOLUMETRIC_FLASK.get(1), - GT_Utility.getIntegratedCircuit(11), - flask, - 10, - (int) TierEU.RECIPE_LV); - // make the 1000L recipe actually in - ItemStack flask500 = flask.copy(); - nbtFlask.setInteger("Capacity", 1000); - flask.setTagCompound(nbtFlask); - GT_Values.RA.addAssemblerRecipe( - flask500, - GT_Utility.getIntegratedCircuit(24), - flask, - 10, - (int) TierEU.RECIPE_LV); - } + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.HSSG, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(32)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(64).addTo(sAssemblerRecipes); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_LV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Bronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Bronze, 1L), - ItemList.Electric_Motor_LV.get(1L), GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_LV.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Steel, 1L), - ItemList.Electric_Motor_MV.get(1L), GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_MV.get(1L), - 200, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1L), - ItemList.Electric_Motor_HV.get(1L), GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_HV.get(1L), - 200, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Titanium, 1L), - ItemList.Electric_Motor_EV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_EV.get(1L), - 200, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.TungstenSteel, 1L), - ItemList.Electric_Motor_IV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_IV.get(1L), - 200, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_LuV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Enderium, 1L), - ItemList.Electric_Motor_LuV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Enderium, 1L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_LuV.get(1L), - 200, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_ZPM.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Naquadah, 1L), - ItemList.Electric_Motor_ZPM.get(1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.NaquadahAlloy, 1L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_ZPM.get(1L), - 200, - (int) TierEU.RECIPE_ZPM); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_UV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.NetherStar, 1L), - ItemList.Electric_Motor_UV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_UV.get(1L), - 200, - 500000); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_MAX.get(1L), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.MysteriousCrystal, 1L), - ItemList.Electric_Motor_UHV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.CosmicNeutronium, 1L), - GT_Utility.getIntegratedCircuit(3) }, - GT_Values.NF, - ItemList.Hatch_Muffler_MAX.get(1L), - 200, - 2000000); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.redstone_torch, 2, 32767), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - Materials.Concrete.getMolten(144L), - new ItemStack(Items.repeater, 1, 0), - 80, - 10); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.leather, 1, 32767), - new ItemStack(Items.lead, 1, 32767), - Materials.Glue.getFluid(72L), - new ItemStack(Items.name_tag, 1, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem(MOD_ID_DC, "item.ArtificialLeather", 1L, 0), - new ItemStack(Items.lead, 1, 32767), - Materials.Glue.getFluid(72L), - new ItemStack(Items.name_tag, 1, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 8L), - new ItemStack(Items.compass, 1, 32767), - GT_Values.NF, - new ItemStack(Items.map, 1, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tantalum, 1L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Manganese, 1L), - Materials.Plastic.getMolten(144L), - ItemList.Battery_RE_ULV_Tantalum.get(8L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - getModItem("TwilightForest", "item.charmOfLife1", 4L, 0), - GT_Utility.getIntegratedCircuit(4), - GT_Values.NF, - getModItem("TwilightForest", "item.charmOfLife2", 1L, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem("TwilightForest", "item.charmOfKeeping1", 4L, 0), - GT_Utility.getIntegratedCircuit(4), - GT_Values.NF, - getModItem("TwilightForest", "item.charmOfKeeping2", 1L, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem("TwilightForest", "item.charmOfKeeping2", 4L, 0), - GT_Utility.getIntegratedCircuit(4), - GT_Values.NF, - getModItem("TwilightForest", "item.charmOfKeeping3", 1L, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem("TwilightForest", "item.charmOfLife2", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - getModItem("TwilightForest", "item.charmOfLife1", 4L, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem("TwilightForest", "item.charmOfKeeping2", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - getModItem("TwilightForest", "item.charmOfKeeping1", 4L, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem("TwilightForest", "item.charmOfKeeping3", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - getModItem("TwilightForest", "item.charmOfKeeping2", 4L, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 16), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 20), - Materials.Redstone.getMolten(144L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 23), - 64, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 17), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 20), - Materials.Redstone.getMolten(144L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 24), - 64, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 18), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 20), - Materials.Redstone.getMolten(144L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 22), - 64, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 1L), - new ItemStack(Blocks.sand, 1, 32767), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 2L, 0), - 64, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 1L), - new ItemStack(Blocks.sand, 1, 32767), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 2L, 600), - 64, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Fluix, 1L), - new ItemStack(Blocks.sand, 1, 32767), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 2L, 1200), - 64, - 8); - GT_Values.RA.addAssemblerRecipe( - ItemList.FR_Wax.get(6L), - new ItemStack(Items.string, 1, 32767), - Materials.Water.getFluid(600L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "candle", 24L, 0), - 64, - 8); - GT_Values.RA.addAssemblerRecipe( - ItemList.FR_Wax.get(2L), - ItemList.FR_Silk.get(1L), - Materials.Water.getFluid(200L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "candle", 8L, 0), - 16, - 8); - GT_Values.RA.addAssemblerRecipe( - ItemList.FR_Silk.get(9L), - GT_Utility.getIntegratedCircuit(9), - Materials.Water.getFluid(500L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "craftingMaterial", 1L, 3), - 64, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "propolis", 5L, 2), - GT_Utility.getIntegratedCircuit(5), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextForestry, "craftingMaterial", 1L, 1), - 16, - 8); - GT_Values.RA.addAssemblerRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "sturdyMachine", 1L, 0), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Diamond, 4L), - Materials.Water.getFluid(5000L), - ItemList.FR_Casing_Hardened.get(1L), - 64, - 32); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Bronze, 8L), - GT_Utility.getIntegratedCircuit(8), - GT_Values.NF, - ItemList.FR_Casing_Sturdy.get(1L), - 32, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Blocks.wool, 1, 32767), - Materials.Creosote.getFluid(1000L), - new ItemStack(Blocks.torch, 6, 0), - 400, - 1); - GT_Values.RA.addAssemblerRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "craftingMaterial", 5L, 1), - GT_Utility.getIntegratedCircuit(5), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), - 64, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.piston, 1, 32767), - new ItemStack(Items.slime_ball, 1, 32767), - GT_Values.NF, - new ItemStack(Blocks.sticky_piston, 1, 0), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.piston, 1, 32767), - ItemList.IC2_Resin.get(1L), - GT_Values.NF, - new ItemStack(Blocks.sticky_piston, 1, 0), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.piston, 1, 32767), - GT_Utility.getIntegratedCircuit(1), - Materials.Glue.getFluid(100L), - new ItemStack(Blocks.sticky_piston, 1, 0), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 3L), - GT_ModHandler.getIC2Item("carbonMesh", 3L), GT_Utility.getIntegratedCircuit(1) }, - Materials.Glue.getFluid(300L), - ItemList.Duct_Tape.get(1L), - 100, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StyreneButadieneRubber, 2L), - GT_ModHandler.getIC2Item("carbonMesh", 2L), GT_Utility.getIntegratedCircuit(2) }, - Materials.Glue.getFluid(200L), - ItemList.Duct_Tape.get(1L), - 100, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Silicone, 1L), - GT_ModHandler.getIC2Item("carbonMesh", 1L), GT_Utility.getIntegratedCircuit(3) }, - Materials.Glue.getFluid(100L), - ItemList.Duct_Tape.get(1L), - 100, - (int) TierEU.RECIPE_EV); - // Maintenance Hatch Recipes Using BrainTech + Refined Glue. Info: One BrainTech Recipe Is In GT+ü Originally. - // The Maintenance Hatch Recipe using SuperGlue is there. - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Hull_LV.get(1), ItemList.Duct_Tape.get(2), - GT_Utility.getIntegratedCircuit(2) }, - Materials.Glue.getFluid(1000L), - ItemList.Hatch_Maintenance.get(1L), - 100, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), - new ItemStack(Items.leather, 1, 32767), - Materials.Glue.getFluid(20L), - new ItemStack(Items.book, 1, 0), - 32, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), - getModItem(MOD_ID_DC, "item.ArtificialLeather", 1L, 0), - Materials.Glue.getFluid(20L), - new ItemStack(Items.book, 1, 0), - 32, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), - GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.Paper, 1L), - Materials.Glue.getFluid(20L), - new ItemStack(Items.book, 1, 0), - 32, - 8); - GT_Values.RA.addAssemblerRecipe( - ItemList.Paper_Printed_Pages.get(1L), - new ItemStack(Items.leather, 1, 32767), - Materials.Glue.getFluid(20L), - new ItemStack(Items.written_book, 1, 0), - 32, - 8); - GT_Values.RA.addAssemblerRecipe( - ItemList.Paper_Printed_Pages.get(1L), - getModItem(MOD_ID_DC, "item.ArtificialLeather", 1L, 0), - Materials.Glue.getFluid(20L), - new ItemStack(Items.written_book, 1, 0), - 32, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Tin, 4L) }, - GT_Values.NF, - ItemList.Cell_Universal_Fluid.get(1L), - 128, - 8); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Baked_Cake.get(1L), - new ItemStack(Items.egg, 1, 0), - Materials.Milk.getFluid(3000L), - new ItemStack(Items.cake, 1, 0), - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Bun.get(2L), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NF, - ItemList.Food_Sliced_Buns.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Bread.get(2L), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NF, - ItemList.Food_Sliced_Breads.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Baguette.get(2L), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NF, - ItemList.Food_Sliced_Baguettes.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Buns.get(1L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - ItemList.Food_Sliced_Bun.get(2L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Breads.get(1L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - ItemList.Food_Sliced_Bread.get(2L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Baguettes.get(1L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - ItemList.Food_Sliced_Baguette.get(2L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Bun.get(2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1L), - GT_Values.NF, - ItemList.Food_Burger_Meat.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Buns.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1L), - GT_Values.NF, - ItemList.Food_Burger_Meat.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Bun.get(2L), - ItemList.Food_Chum.get(1L), - GT_Values.NF, - ItemList.Food_Burger_Chum.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Buns.get(1L), - ItemList.Food_Chum.get(1L), - GT_Values.NF, - ItemList.Food_Burger_Chum.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Bun.get(2L), - ItemList.Food_Sliced_Cheese.get(3L), - GT_Values.NF, - ItemList.Food_Burger_Cheese.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Sliced_Buns.get(1L), - ItemList.Food_Sliced_Cheese.get(3L), - GT_Values.NF, - ItemList.Food_Burger_Cheese.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Flat_Dough.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1L), - GT_Values.NF, - ItemList.Food_Raw_Pizza_Meat.get(1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - ItemList.Food_Flat_Dough.get(1L), - ItemList.Food_Sliced_Cheese.get(3L), - GT_Values.NF, - ItemList.Food_Raw_Pizza_Cheese.get(1L), - 100, - 4); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Rail_Standard.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Naquadah, 1), + GT_Utility.getIntegratedCircuit(1) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Electric.get(64)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(96).addTo(sAssemblerRecipes); - // SC craft - GT_Values.RA - .addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Pentacadmiummagnesiumhexaoxid, 3L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.StainlessSteel, 2L), - ItemList.Electric_Pump_MV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 3L), - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Titaniumonabariumdecacoppereikosaoxid, 6L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Titanium, 4L), - ItemList.Electric_Pump_HV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(4000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 6L), - 400, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Uraniumtriplatinid, 9L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.TungstenSteel, 6L), - ItemList.Electric_Pump_EV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(6000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 9L), - 400, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Vanadiumtriindinid, 12L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NiobiumTitanium, 8L), - ItemList.Electric_Pump_IV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(8000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 12L), - 800, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator.get( - OrePrefixes.wireGt01, - Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, - 15L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Enderium, 10L), - ItemList.Electric_Pump_LuV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(12000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 15L), - 800, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 18L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Naquadah, 12L), - ItemList.Electric_Pump_ZPM.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(16000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 18L), - 1600, - (int) TierEU.RECIPE_ZPM); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuvwire, 21L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Neutronium, 14L), - ItemList.Electric_Pump_UV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(20000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 21L), - 1600, - (int) TierEU.RECIPE_UV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuhvwire, 24L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Bedrockium, 16L), - ItemList.Electric_Pump_UHV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - Materials.Helium.getGas(24000L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUHV, 24L), - 3200, - (int) TierEU.RECIPE_UHV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.IronMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Lead, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.ULV_Coil.get(1L), - 200, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.IronMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.LV_Coil.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SteelMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Aluminium, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.MV_Coil.get(1L), - 200, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SteelMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.EnergeticAlloy, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.HV_Coil.get(1L), - 200, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.NeodymiumMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.TungstenSteel, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.EV_Coil.get(1L), - 200, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.NeodymiumMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Iridium, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.IV_Coil.get(1L), - 200, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.LuV_Coil.get(1L), - 200, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.ZPM_Coil.get(1L), - 200, - (int) TierEU.RECIPE_ZPM); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.ElectrumFlux, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.UV_Coil.get(1L), - 200, - 500000); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Tritanium, 16L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.UHV_Coil.get(1L), - 200, - 2000000); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 6L), - GT_Utility.getIntegratedCircuit(2) }, - Materials.Glue.getFluid(10), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Wood, 2L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 3L), - GT_Utility.getIntegratedCircuit(4) }, - Materials.Glue.getFluid(20), - GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Wood, 4L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 1L), - GT_Utility.getIntegratedCircuit(12) }, - Materials.Glue.getFluid(60), - GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Wood, 6L), - 200, - (int) TierEU.RECIPE_LV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 4L), - GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Advanced, 4L), - GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Diamond, 1L), - GT_Utility.getIntegratedCircuit(2) }, - GT_Values.NF, - ItemList.Ingot_IridiumAlloy.get(1L), - 1200, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iridium, 1L), - ItemList.Electric_Motor_UV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Iridium, 1L), - ItemList.Component_Filter.get(8L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Iridium, 8L), }, - null, - ItemList.Casing_Vent_T2.get(1L), - 30 * 20, - (int) TierEU.RECIPE_LuV); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Tie_Wood.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1), + GT_Utility.getIntegratedCircuit(10) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Wooden.get(8)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 13 * TICKS).eut(4).addTo(sAssemblerRecipes); - if (!GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "torchesFromCoal", false)) { - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Items.coal, 1, 32767), - new ItemStack(Blocks.torch, 4), - 400, - 1); - } - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Steel, 1L), - new ItemStack(Blocks.light_weighted_pressure_plate, 1), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 2L), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Steel, 1L), - new ItemStack(Blocks.heavy_weighted_pressure_plate, 1), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 6L), - GT_Utility.getIntegratedCircuit(6), - new ItemStack(Items.iron_door, 1), - 600, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 7L), - GT_Utility.getIntegratedCircuit(7), - new ItemStack(Items.cauldron, 1), - 700, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1L), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("ironFence", 1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 3L), - GT_Utility.getIntegratedCircuit(3), - new ItemStack(Blocks.iron_bars, 4), - 300, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 6L), - GT_Utility.getIntegratedCircuit(6), - new ItemStack(Items.iron_door, 1), - 600, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 7L), - GT_Utility.getIntegratedCircuit(7), - new ItemStack(Items.cauldron, 1), - 700, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1L), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("ironFence", 1L), - 100, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 3L), - GT_Utility.getIntegratedCircuit(3), - new ItemStack(Blocks.iron_bars, 4), - 300, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 3L), - GT_Utility.getIntegratedCircuit(3), - new ItemStack(Blocks.fence, 1), - 300, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Iron, 2L), - new ItemStack(Blocks.tripwire_hook, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2L), - new ItemStack(Blocks.tripwire_hook, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 3L), - new ItemStack(Items.string, 3, 32767), - new ItemStack(Items.bow, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 3L), - ItemList.Component_Minecart_Wheels_Iron.get(2L), - new ItemStack(Items.minecart, 1), - 500, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 3L), - ItemList.Component_Minecart_Wheels_Iron.get(2L), - new ItemStack(Items.minecart, 1), - 400, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 3L), - ItemList.Component_Minecart_Wheels_Steel.get(2L), - new ItemStack(Items.minecart, 1), - 300, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Iron, 2L), - ItemList.Component_Minecart_Wheels_Iron.get(1L), - 500, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2L), - ItemList.Component_Minecart_Wheels_Iron.get(1L), - 400, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Steel, 2L), - ItemList.Component_Minecart_Wheels_Steel.get(1L), - 300, - 2); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.minecart, 1), - new ItemStack(Blocks.hopper, 1, 32767), - new ItemStack(Items.hopper_minecart, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.minecart, 1), - new ItemStack(Blocks.tnt, 1, 32767), - new ItemStack(Items.tnt_minecart, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.minecart, 1), - new ItemStack(Blocks.chest, 1, 32767), - new ItemStack(Items.chest_minecart, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.minecart, 1), - new ItemStack(Blocks.trapped_chest, 1, 32767), - new ItemStack(Items.chest_minecart, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.minecart, 1), - new ItemStack(Blocks.furnace, 1, 32767), - new ItemStack(Items.furnace_minecart, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.tripwire_hook, 1), - new ItemStack(Blocks.chest, 1, 32767), - new ItemStack(Blocks.trapped_chest, 1), - 200, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.stone, 1, 0), - GT_Utility.getIntegratedCircuit(4), - new ItemStack(Blocks.stonebrick, 1, 0), - 50, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.sandstone, 1, 0), - GT_Utility.getIntegratedCircuit(23), - new ItemStack(Blocks.sandstone, 1, 2), - 50, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.sandstone, 1, 1), - GT_Utility.getIntegratedCircuit(1), - new ItemStack(Blocks.sandstone, 1, 0), - 50, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Blocks.sandstone, 1, 2), - GT_Utility.getIntegratedCircuit(1), - new ItemStack(Blocks.sandstone, 1, 0), - 50, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 8L), - GT_Utility.getIntegratedCircuit(8), - GT_ModHandler.getIC2Item("machine", 1L), - 25, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_ULV.get(1L), - 25, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_LV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_MV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_HV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_EV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_IV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Chrome, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_LuV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_ZPM.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_UV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 8L), - GT_Utility.getIntegratedCircuit(8), - ItemList.Casing_MAX.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Invar, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Invar, 1L), - ItemList.Casing_HeatProof.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1L), - ItemList.Casing_SolidSteel.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1L), - ItemList.Casing_FrostProof.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1L), - ItemList.Casing_RobustTungstenSteel.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1L), - ItemList.Casing_CleanStainlessSteel.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Titanium, 1L), - ItemList.Casing_StableTitanium.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmiridium, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 1L), - ItemList.Casing_MiningOsmiridium.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1L), - ItemList.Casing_MiningNeutronium.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BlackPlutonium, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackPlutonium, 1L), - ItemList.Casing_MiningBlackPlutonium.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 4L), - ItemList.Casing_LuV.get(1L), - Materials.HSSG.getMolten(288), - ItemList.Casing_Fusion.get(1L), - 100, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Americium, 4L), - ItemList.Casing_Fusion.get(1L), - Materials.NaquadahAlloy.getMolten(288), - ItemList.Casing_Fusion2.get(1L), - 200, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Magnalium, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlueSteel, 1L), - ItemList.Casing_Turbine.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 6L), - ItemList.Casing_Turbine.get(1L), - ItemList.Casing_Turbine1.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6L), - ItemList.Casing_Turbine.get(1L), - ItemList.Casing_Turbine2.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6L), - ItemList.Casing_Turbine.get(1L), - ItemList.Casing_Turbine3.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 6L), - ItemList.Casing_Turbine.get(1L), - ItemList.Casing_TurbineGasAdvanced.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - ItemList.Casing_SolidSteel.get(1), - GT_Utility.getIntegratedCircuit(6), - Materials.Polytetrafluoroethylene.getMolten(216), - ItemList.Casing_Chemically_Inert.get(1), - 50, - 16); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 6L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iridium, 1L), - ItemList.Casing_Advanced_Iridium.get(1L), - 50, - 16); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Tie_Wood.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1), + GT_Utility.getIntegratedCircuit(11) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Wooden.get(8)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 13 * TICKS).eut(4).addTo(sAssemblerRecipes); - if (GT_Mod.gregtechproxy.mHardMachineCasings) { - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Lead, 2L), - ItemList.Casing_ULV.get(1L), - Materials.Plastic.getMolten(288), - ItemList.Hull_ULV.get(1L), - 25, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 2L), - ItemList.Casing_LV.get(1L), - Materials.Plastic.getMolten(288), - ItemList.Hull_LV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2L), - ItemList.Casing_MV.get(1L), - Materials.Plastic.getMolten(288), - ItemList.Hull_MV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2L), - ItemList.Casing_MV.get(1L), - Materials.Plastic.getMolten(288), - ItemList.Hull_MV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 2L), - ItemList.Casing_HV.get(1L), - Materials.Plastic.getMolten(288), - ItemList.Hull_HV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2L), - ItemList.Casing_EV.get(1L), - Materials.Plastic.getMolten(288), - ItemList.Hull_EV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 2L), - ItemList.Casing_IV.get(1L), - Materials.Polytetrafluoroethylene.getMolten(288), - ItemList.Hull_IV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.VanadiumGallium, 2L), - ItemList.Casing_LuV.get(1L), - Materials.Polytetrafluoroethylene.getMolten(288), - ItemList.Hull_LuV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 2L), - ItemList.Casing_ZPM.get(1L), - Materials.Polybenzimidazole.getMolten(288), - ItemList.Hull_ZPM.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.NaquadahAlloy, 2L), - ItemList.Casing_UV.get(1L), - Materials.Polybenzimidazole.getMolten(288), - ItemList.Hull_UV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUV, 2L), - ItemList.Casing_MAX.get(1L), - Materials.Polybenzimidazole.getMolten(288), - ItemList.Hull_MAX.get(1L), - 50, - 16); - } else { - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Lead, 2L), - ItemList.Casing_ULV.get(1L), - ItemList.Hull_ULV.get(1L), - 25, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 2L), - ItemList.Casing_LV.get(1L), - ItemList.Hull_LV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2L), - ItemList.Casing_MV.get(1L), - ItemList.Hull_MV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2L), - ItemList.Casing_MV.get(1L), - ItemList.Hull_MV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 2L), - ItemList.Casing_HV.get(1L), - ItemList.Hull_HV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2L), - ItemList.Casing_EV.get(1L), - ItemList.Hull_EV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 2L), - ItemList.Casing_IV.get(1L), - ItemList.Hull_IV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.VanadiumGallium, 2L), - ItemList.Casing_LuV.get(1L), - ItemList.Hull_LuV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 2L), - ItemList.Casing_ZPM.get(1L), - ItemList.Hull_ZPM.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.NaquadahAlloy, 2L), - ItemList.Casing_UV.get(1L), - ItemList.Hull_UV.get(1L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUV, 2L), - ItemList.Casing_MAX.get(1L), - ItemList.Hull_MAX.get(1L), - 50, - 16); - } + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Tie_Wood.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 1), + GT_Utility.getIntegratedCircuit(11) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Wooden.get(16)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 13 * TICKS).eut(16).addTo(sAssemblerRecipes); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 1L), - Materials.Plastic.getMolten(144), - ItemList.Battery_Hull_LV.get(1L), - 800, - 1); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 3L), - Materials.Plastic.getMolten(432), - ItemList.Battery_Hull_MV.get(1L), - 1600, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 3L), - Materials.Plastic.getMolten(432), - ItemList.Battery_Hull_MV.get(1L), - 1600, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 4L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 9L), - Materials.Plastic.getMolten(1296), - ItemList.Battery_Hull_HV.get(1L), - 3200, - 4); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack(Items.string, 4, 32767), - new ItemStack(Items.slime_ball, 1, 32767), - new ItemStack(Items.lead, 2), - 200, - 2); - GT_Values.RA.addAssemblerRecipe( - ItemList.IC2_Compressed_Coal_Ball.get(8L), - new ItemStack(Blocks.brick_block, 1), - ItemList.IC2_Compressed_Coal_Chunk.get(1L), - 400, - 4); - - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getIC2Item("waterMill", 2L), - GT_Utility.getIntegratedCircuit(2), - GT_ModHandler.getIC2Item("generator", 1L), - 6400, - 8); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getIC2Item("batPack", 1L, 32767), - GT_Utility.getIntegratedCircuit(1), - ItemList.IC2_ReBattery.get(6L), - 800, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getIC2Item("carbonFiber", 2L), - GT_Utility.getIntegratedCircuit(2), - GT_ModHandler.getIC2Item("carbonMesh", 1L), - 800, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 4L), - GT_ModHandler.getIC2Item("generator", 1L), - GT_ModHandler.getIC2Item("waterMill", 2L), - 6400, - 8); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 5L), - new ItemStack(Blocks.chest, 1, 32767), - new ItemStack(Blocks.hopper), - 800, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 5L), - new ItemStack(Blocks.trapped_chest, 1, 32767), - new ItemStack(Blocks.hopper), - 800, - 2); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 5L), - new ItemStack(Blocks.chest, 1, 32767), - new ItemStack(Blocks.hopper), - 800, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 5L), - new ItemStack(Blocks.trapped_chest, 1, 32767), - new ItemStack(Blocks.hopper), - 800, - 2); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Magnalium, 2L), - GT_ModHandler.getIC2Item("generator", 1L), - GT_ModHandler.getIC2Item("windMill", 1L), - 6400, - 8); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), - new ItemStack(Items.blaze_powder, 1, 0), - new ItemStack(Items.ender_eye, 1, 0), - 400, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 6L), - new ItemStack(Items.blaze_rod, 1, 0), - new ItemStack(Items.ender_eye, 6, 0), - 2500, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.CobaltBrass, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), - ItemList.Component_Sawblade_Diamond.get(1L), - 1600, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 4L), - new ItemStack(Blocks.redstone_lamp, 1), - 400, - 1); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Blocks.redstone_torch, 1), - 400, - 1); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 4L), - new ItemStack(Items.compass, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 4L), - new ItemStack(Items.compass, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 4L), - new ItemStack(Items.clock, 1), - 400, - 4); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - new ItemStack(Blocks.torch, 2), - 400, - 1); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), - new ItemStack(Blocks.torch, 6), - 400, - 1); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - ItemList.IC2_Resin.get(1L), - new ItemStack(Blocks.torch, 6), - 400, - 1); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 8L), - new ItemStack(Items.flint, 1), - ItemList.IC2_Compressed_Coal_Ball.get(1L), - 400, - 4); - - if (isIC2NuclearControlLoaded) { // Card recycling recipes - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemVanillaMachineCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemInventoryScannerCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemEnergySensorLocationCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "RFSensorCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemMultipleSensorLocationCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 1L), - 200, - (int) TierEU.RECIPE_LV); // counter - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemMultipleSensorLocationCard", 1L, 1), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 1L), - 200, - (int) TierEU.RECIPE_LV); // liquid - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemMultipleSensorLocationCard", 1L, 2), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); // generator - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemLiquidArrayLocationCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); // 2-6 liquid - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemEnergyArrayLocationCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); // 2-6 energy - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "ItemSensorLocationCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2L), - 200, - (int) TierEU.RECIPE_LV); // non-fluid nuke - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "Item55ReactorCard", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - getModItem("IC2NuclearControl", "CardAppeng", 1L, 0), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 2L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - ItemList.NC_SensorCard.get(1L), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getIC2Item("electronicCircuit", 3L), - 200, - (int) TierEU.RECIPE_LV); - } + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Tie_Wood.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 1), + GT_Utility.getIntegratedCircuit(11) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Wooden.get(32)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 13 * TICKS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); - if (!GT_Mod.gregtechproxy.mDisableIC2Cables) { - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getIC2Item("tinCableItem", 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1L), - GT_ModHandler.getIC2Item("insulatedTinCableItem", 1L), - 100, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getIC2Item("copperCableItem", 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1L), - GT_ModHandler.getIC2Item("insulatedCopperCableItem", 1L), - 100, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getIC2Item("goldCableItem", 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2L), - GT_ModHandler.getIC2Item("insulatedGoldCableItem", 1L), - 200, - 2); - GT_Values.RA.addAssemblerRecipe( - GT_ModHandler.getIC2Item("ironCableItem", 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 3L), - GT_ModHandler.getIC2Item("insulatedIronCableItem", 1L), - 300, - 2); - } - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Wood, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Items.wooden_sword, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Stone, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Items.stone_sword, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Items.iron_sword, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Items.golden_sword, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Diamond, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - new ItemStack(Items.diamond_sword, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Bronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - ItemList.Tool_Sword_Bronze.getUndamaged(1L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), - ItemList.Tool_Sword_Steel.getUndamaged(1L), - 100, - 16); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Wood, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.wooden_pickaxe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Stone, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.stone_pickaxe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.iron_pickaxe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.golden_pickaxe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Diamond, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.diamond_pickaxe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Bronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Pickaxe_Bronze.getUndamaged(1L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Pickaxe_Steel.getUndamaged(1L), - 100, - 16); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Wood, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.wooden_shovel, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Stone, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.stone_shovel, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.iron_shovel, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.golden_shovel, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Diamond, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.diamond_shovel, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Bronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Shovel_Bronze.getUndamaged(1L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Shovel_Steel.getUndamaged(1L), - 100, - 16); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Wood, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.wooden_axe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Stone, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.stone_axe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.iron_axe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.golden_axe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Diamond, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.diamond_axe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Bronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Axe_Bronze.getUndamaged(1L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Axe_Steel.getUndamaged(1L), - 100, - 16); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Wood, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.wooden_hoe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Stone, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.stone_hoe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.iron_hoe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.golden_hoe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Diamond, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - new ItemStack(Items.diamond_hoe, 1), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Bronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Hoe_Bronze.getUndamaged(1L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), - ItemList.Tool_Hoe_Steel.getUndamaged(1L), - 100, - 16); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack[] { ItemList.RC_Tie_Wood.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(11) }, + GT_Values.NF) + .itemOutputs(ItemList.RC_Rail_Wooden.get(64)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 13 * TICKS).eut(48).addTo(sAssemblerRecipes); - // fuel rod assembler recipes - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.ThoriumCell_1.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(2) }, - null, - ItemList.ThoriumCell_2.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.ThoriumCell_1.get(4L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Steel, 6L), - GT_Utility.getIntegratedCircuit(4) }, - null, - ItemList.ThoriumCell_4.get(1L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.ThoriumCell_2.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(5) }, - null, - ItemList.ThoriumCell_4.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Uraniumcell_1.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(2) }, - null, - ItemList.Uraniumcell_2.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Uraniumcell_1.get(4L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Steel, 6L), - GT_Utility.getIntegratedCircuit(4) }, - null, - ItemList.Uraniumcell_4.get(1L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Uraniumcell_2.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(5) }, - null, - ItemList.Uraniumcell_4.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Moxcell_1.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(2) }, - null, - ItemList.Moxcell_2.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Moxcell_1.get(4L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Steel, 6L), - GT_Utility.getIntegratedCircuit(4) }, - null, - ItemList.Moxcell_4.get(1L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Moxcell_2.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(5) }, - null, - ItemList.Moxcell_4.get(1L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.NaquadahCell_1.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4L), - GT_Utility.getIntegratedCircuit(2) }, - null, - ItemList.NaquadahCell_2.get(1L), - 100, - 400); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.NaquadahCell_1.get(4L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 6L), - GT_Utility.getIntegratedCircuit(4) }, - null, - ItemList.NaquadahCell_4.get(1L), - 150, - 400); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.NaquadahCell_2.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4L), - GT_Utility.getIntegratedCircuit(5) }, - null, - ItemList.NaquadahCell_4.get(1L), - 100, - 400); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.MNqCell_1.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4L), - GT_Utility.getIntegratedCircuit(2) }, - null, - ItemList.MNqCell_2.get(1L), - 100, - 400); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.MNqCell_1.get(4L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 6L), - GT_Utility.getIntegratedCircuit(4) }, - null, - ItemList.MNqCell_4.get(1L), - 150, - 400); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.MNqCell_2.get(2L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 4L), - GT_Utility.getIntegratedCircuit(5) }, - null, - ItemList.MNqCell_4.get(1L), - 100, - 400); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Neutronium, 8L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Iridium, 4L), - ItemList.neutroniumHeatCapacitor.get(1L), - 100, - 120000); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { Materials.NaquadahAlloy.getPlates(8), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1) }, - null, - ItemList.RadiantNaquadahAlloyCasing.get(1), - 10, - 400000); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.KevlarFiber.get(8L), GT_Utility.getIntegratedCircuit(8) }, - GT_Values.NF, - ItemList.WovenKevlar.get(1L), - 300, - (int) TierEU.RECIPE_EV); - - for (Materials tMat : Materials.values()) { - if (tMat.isProperSolderingFluid()) { - int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 - : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; - for (ItemStack tPlate : new ItemStack[] { - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L) }) { - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.lever, 1, 32767), tPlate, - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(144L * tMultiplier / 2L), - ItemList.Cover_Controller.get(1L), - 800, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.redstone_torch, 1, 32767), tPlate, - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(144L * tMultiplier / 2L), - ItemList.Cover_ActivityDetector.get(1L), - 800, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.heavy_weighted_pressure_plate, 1, 32767), tPlate, - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(144L * tMultiplier / 2L), - ItemList.Cover_FluidDetector.get(1L), - 800, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.light_weighted_pressure_plate, 1, 32767), tPlate, - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(144L * tMultiplier / 2L), - ItemList.Cover_ItemDetector.get(1L), - 800, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_ModHandler.getIC2Item("ecMeter", 1L), tPlate, - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(144L * tMultiplier / 2L), - ItemList.Cover_EnergyDetector.get(1L), - 800, - 16); - } - } - } + GT_Values.RA.stdBuilder().itemInputs(ItemList.RC_Tie_Wood.get(32), GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(ItemList.RC_Bed_Wood.get(24)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); - if (isGTNHLanthanidLoaded && isGTPPLoaded) { - GT_Values.RA - .addAssemblerRecipe( - new ItemStack[] { ItemList.Electric_Pump_EV.get(4L), ItemList.Field_Generator_EV.get(4L), - getModItem(MOD_ID_GTPP, "itemPlateInconel690", 4L), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 16L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.BorosilicateGlass, 16L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2L), - GT_OreDictUnificator - .get(OrePrefixes.pipeTiny, Materials.Polytetrafluoroethylene, 4L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 4L), - ItemList.Shape_Extruder_Wire.get(16L) }, - Materials.SolderingAlloy.getGas(144L), - ItemList.Spinneret.get(1L), - 2400, - (int) TierEU.RECIPE_EV); - } - } + GT_Values.RA.stdBuilder().itemInputs(ItemList.RC_Tie_Wood.get(64), GT_Utility.getIntegratedCircuit(24)) + .itemOutputs(ItemList.RC_Bed_Wood.get(48)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(48).addTo(sAssemblerRecipes); - /** - * Adds new recipes for hatches and busses - */ - public static void addBusAndHatchRecipes() { - Materials[] glues = { Materials.Glue, Materials.Plastic, Materials.Polytetrafluoroethylene, - Materials.Polybenzimidazole }; - - ItemStack[] chests = { isCoremodLoaded ? getModItem(MOD_ID_DC, "BabyChest", 1) : new ItemStack(Blocks.chest), - new ItemStack(Blocks.chest), - isIronChestLoaded ? getModItem("IronChest", "BlockIronChest", 1, 3) : new ItemStack(Blocks.chest), - isIronChestLoaded ? getModItem("IronChest", "BlockIronChest", 1) : new ItemStack(Blocks.chest), - isIronChestLoaded ? getModItem("IronChest", "BlockIronChest", 1, 4) : new ItemStack(Blocks.chest), - isIronChestLoaded ? getModItem("IronChest", "BlockIronChest", 1, 1) : new ItemStack(Blocks.chest), - isIronChestLoaded ? getModItem("IronChest", "BlockIronChest", 1, 2) : new ItemStack(Blocks.chest), - isIronChestLoaded ? getModItem("IronChest", "BlockIronChest", 1, 5) : new ItemStack(Blocks.chest), - isIronChestLoaded ? getModItem("IronChest", "BlockIronChest", 1, 6) : new ItemStack(Blocks.chest), - isAvaritiaAddonsLoaded ? getModItem("avaritiaddons", "CompressedChest", 1) - : new ItemStack(Blocks.chest) }; - ItemStack[] tanks = { GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - isBuildCraftFactoryLoaded ? getModItem("BuildCraft|Factory", "tankBlock", 1) - : GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - isIronTankLoaded ? getModItem("irontank", "copperTank", 1) - : GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - isIronTankLoaded ? getModItem("irontank", "ironTank", 1) - : GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - isIronTankLoaded ? getModItem("irontank", "silverTank", 1) - : GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - isIronTankLoaded ? getModItem("irontank", "goldTank", 1) - : GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - isIronTankLoaded ? getModItem("irontank", "diamondTank", 1) - : GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - isIronTankLoaded ? getModItem("irontank", "obsidianTank", 1) - : GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - getModItem("gregtech", "gt.blockmachines", 1, 130), - getModItem("gregtech", "gt.blockmachines", 1, 131) }; - - ItemStack[][] aInputs = new ItemStack[10][3]; - ItemStack[][] aInputs2 = new ItemStack[10][3]; - ItemStack[][] flInputs = new ItemStack[10][3]; - ItemStack[][] flInputs2 = new ItemStack[10][3]; - - for (int i = 0; i < 10; i++) { - aInputs[i] = new ItemStack[] { ItemList.MACHINE_HULLS[i].get(1), chests[i].copy(), - GT_Utility.getIntegratedCircuit(1) }; - aInputs2[i] = new ItemStack[] { ItemList.MACHINE_HULLS[i].get(1), chests[i].copy(), - GT_Utility.getIntegratedCircuit(2) }; - flInputs[i] = new ItemStack[] { ItemList.MACHINE_HULLS[i].get(1), tanks[i].copy(), - GT_Utility.getIntegratedCircuit(1) }; - flInputs2[i] = new ItemStack[] { ItemList.MACHINE_HULLS[i].get(1), tanks[i].copy(), - GT_Utility.getIntegratedCircuit(2) }; - } + GT_Values.RA.stdBuilder().itemInputs(ItemList.RC_Tie_Stone.get(32), GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(ItemList.RC_Bed_Stone.get(24)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); - for (int aTier = 0; aTier < 10; aTier++) { - - if (aTier < 2) { - GT_Values.RA.addAssemblerRecipe( - aInputs[aTier], - glues[0].getFluid((long) (144 * Math.pow((aTier + 4), aTier))), - ItemList.HATCHES_INPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - aInputs2[aTier], - glues[0].getFluid((long) (144 * Math.pow((aTier + 4), aTier))), - ItemList.HATCHES_OUTPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs[aTier], - glues[0].getFluid((long) (144 * Math.pow((aTier + 4), aTier))), - ItemList.HATCHES_INPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs2[aTier], - glues[0].getFluid((long) (144 * Math.pow((aTier + 4), aTier))), - ItemList.HATCHES_OUTPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - } - if (aTier < 4) { - GT_Values.RA.addAssemblerRecipe( - aInputs[aTier], - aTier == 0 ? glues[1].getMolten(72L) : glues[1].getMolten(144L * aTier), - ItemList.HATCHES_INPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - aInputs2[aTier], - aTier == 0 ? glues[1].getMolten(72L) : glues[1].getMolten(144L * aTier), - ItemList.HATCHES_OUTPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs[aTier], - aTier == 0 ? glues[1].getMolten(72L) : glues[1].getMolten(144L * aTier), - ItemList.HATCHES_INPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs2[aTier], - aTier == 0 ? glues[1].getMolten(72L) : glues[1].getMolten(144L * aTier), - ItemList.HATCHES_OUTPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - } - if (aTier < 7) { - GT_Values.RA.addAssemblerRecipe( - aInputs[aTier], - glues[2].getMolten((long) (18 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_INPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - aInputs2[aTier], - glues[2].getMolten((long) (18 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_OUTPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs[aTier], - glues[2].getMolten((long) (18 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_INPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs2[aTier], - glues[2].getMolten((long) (18 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_OUTPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - } - GT_Values.RA.addAssemblerRecipe( - aInputs[aTier], - glues[3].getMolten((long) (2.25 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_INPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - aInputs2[aTier], - glues[3].getMolten((long) (2.25 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_OUTPUT_BUS[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs[aTier], - glues[3].getMolten((long) (2.25 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_INPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - GT_Values.RA.addAssemblerRecipe( - flInputs2[aTier], - glues[3].getMolten((long) (2.25 * Math.pow(2, (aTier + 1)))), - ItemList.HATCHES_OUTPUT[aTier].get(1L), - 480, - (int) (30 * Math.pow(4, (aTier - 1))), - false); - } - } + GT_Values.RA.stdBuilder().itemInputs(ItemList.RC_Tie_Stone.get(64), GT_Utility.getIntegratedCircuit(24)) + .itemOutputs(ItemList.RC_Bed_Stone.get(48)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(48).addTo(sAssemblerRecipes); - /** - * Load all Railcraft recipes for GT Machines - */ - private void loadRailcraftRecipes() { - if (!isRailcraftLoaded) return; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.stone_slab, 1, 0), ItemList.RC_Rebar.get(1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Tie_Stone.get(1L), - 128, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.stone_slab, 1, 7), ItemList.RC_Rebar.get(1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Tie_Stone.get(1L), - 128, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(8) }, - Materials.Blaze.getMolten(216L), - ItemList.RC_Rail_HS.get(16L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(9) }, - Materials.ConductiveIron.getMolten(432L), - ItemList.RC_Rail_HS.get(8L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(9) }, - Materials.VibrantAlloy.getMolten(216L), - ItemList.RC_Rail_HS.get(32L), - 100, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(9) }, - Materials.CrystallineAlloy.getMolten(216L), - ItemList.RC_Rail_HS.get(64L), - 100, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(8) }, - Materials.Redstone.getMolten(216L), - ItemList.RC_Rail_Adv.get(8L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(8) }, - Materials.RedAlloy.getMolten(216L), - ItemList.RC_Rail_Adv.get(16L), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(8) }, - Materials.ConductiveIron.getMolten(216L), - ItemList.RC_Rail_Adv.get(32L), - 100, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(3L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Electrum, 3L), - GT_Utility.getIntegratedCircuit(8) }, - Materials.VibrantAlloy.getMolten(216L), - ItemList.RC_Rail_Adv.get(64L), - 100, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Copper, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(1L), - 50, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(1L), - 50, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Gold, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(2L), - 50, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Electrum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(4L), - 50, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(8L), - 50, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(16L), - 50, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.HSSG, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(32L), - 50, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Rail_Standard.get(1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Naquadah, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - ItemList.RC_Rail_Electric.get(64L), - 50, - 96); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Tie_Wood.get(1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1L), - GT_Utility.getIntegratedCircuit(10) }, - GT_Values.NF, - ItemList.RC_Rail_Wooden.get(8L), - 133, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Tie_Wood.get(1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1L), - GT_Utility.getIntegratedCircuit(11) }, - GT_Values.NF, - ItemList.RC_Rail_Wooden.get(8L), - 133, - 4); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Tie_Wood.get(1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 1L), - GT_Utility.getIntegratedCircuit(11) }, - GT_Values.NF, - ItemList.RC_Rail_Wooden.get(16L), - 133, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Tie_Wood.get(1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 1L), - GT_Utility.getIntegratedCircuit(11) }, - GT_Values.NF, - ItemList.RC_Rail_Wooden.get(32L), - 133, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Tie_Wood.get(1L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(11) }, - GT_Values.NF, - ItemList.RC_Rail_Wooden.get(64L), - 133, - 48); - GT_Values.RA.addAssemblerRecipe( - ItemList.RC_Tie_Wood.get(32L), - GT_Utility.getIntegratedCircuit(20), - ItemList.RC_Bed_Wood.get(24L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - ItemList.RC_Tie_Wood.get(64L), - GT_Utility.getIntegratedCircuit(24), - ItemList.RC_Bed_Wood.get(48L), - 200, - 48); - GT_Values.RA.addAssemblerRecipe( - ItemList.RC_Tie_Stone.get(32L), - GT_Utility.getIntegratedCircuit(20), - ItemList.RC_Bed_Stone.get(24L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - ItemList.RC_Tie_Stone.get(64L), - GT_Utility.getIntegratedCircuit(24), - ItemList.RC_Bed_Stone.get(48L), - 200, - 48); - ItemStack tRailWood = getModItem(MOD_ID_RC, "track", 64, 736); + ItemStack tRailWood = getModItem(Railcraft.modID, "track", 64, 736); if (tRailWood != null) { NBTTagCompound tTagWood = new NBTTagCompound(); tTagWood.setString("track", "railcraft:track.slow"); tRailWood.stackTagCompound = tTagWood; - ItemStack tRailWoodB = getModItem(MOD_ID_RC, "track.slow", 16); + ItemStack tRailWoodB = getModItem(Railcraft.modID, "track.slow", 16); NBTTagCompound tTagWoodB = new NBTTagCompound(); tTagWoodB.setString("track", "railcraft:track.slow.boost"); tRailWoodB.stackTagCompound = tTagWoodB; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Bed_Wood.get(1L), ItemList.RC_Rail_Wooden.get(6L), - GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - tRailWood, - 100, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - tRailWoodB, - 200, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Bed_Wood.get(1), + ItemList.RC_Rail_Wooden.get(6), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(tRailWood).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(tRailWoodB).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); } - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 1, 0), ItemList.RC_Rail_Adv.get(2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - new ItemStack(Blocks.golden_rail, 16, 0), - 300, - (int) TierEU.RECIPE_LV); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Bed_Wood.get(1L), ItemList.RC_Rail_Standard.get(6L), - GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - new ItemStack(Blocks.rail, 64, 0), - 200, - (int) TierEU.RECIPE_LV); - - ItemStack tRailRe = getModItem(MOD_ID_RC, "track", 64); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 1, 0), + ItemList.RC_Rail_Adv.get(2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(new ItemStack(Blocks.golden_rail, 16, 0)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Bed_Wood.get(1), + ItemList.RC_Rail_Standard.get(6), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(new ItemStack(Blocks.rail, 64, 0)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + ItemStack tRailRe = getModItem(Railcraft.modID, "track", 64); NBTTagCompound tTagRe = new NBTTagCompound(); tTagRe.setString("track", "railcraft:track.reinforced"); tRailRe.stackTagCompound = tTagRe; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Bed_Stone.get(1L), ItemList.RC_Rail_Reinforced.get(6L), - GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - tRailRe, - 200, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Bed_Stone.get(1), + ItemList.RC_Rail_Reinforced.get(6), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(tRailRe).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); - ItemStack tRailReB = getModItem(MOD_ID_RC, "track.reinforced", 16); + ItemStack tRailReB = getModItem(Railcraft.modID, "track.reinforced", 16); NBTTagCompound tTagReB = new NBTTagCompound(); tTagReB.setString("track", "railcraft:track.reinforced.boost"); tRailReB.stackTagCompound = tTagReB; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - tRailReB, - 300, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(tRailReB).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); - ItemStack tRailEl = getModItem(MOD_ID_RC, "track", 64); + ItemStack tRailEl = getModItem(Railcraft.modID, "track", 64); NBTTagCompound tTagEl = new NBTTagCompound(); tTagEl.setString("track", "railcraft:track.electric"); tRailEl.stackTagCompound = tTagEl; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Bed_Stone.get(1L), ItemList.RC_Rail_Electric.get(6L), - GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - tRailEl, - 200, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Bed_Stone.get(1), + ItemList.RC_Rail_Electric.get(6), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(tRailEl).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); - ItemStack tRailHs = getModItem(MOD_ID_RC, "track", 64, 816); + ItemStack tRailHs = getModItem(Railcraft.modID, "track", 64, 816); if (tRailHs != null) { NBTTagCompound tTagHs = new NBTTagCompound(); tTagHs.setString("track", "railcraft:track.speed"); tRailHs.stackTagCompound = tTagHs; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.RC_Bed_Stone.get(1L), ItemList.RC_Rail_HS.get(6L), - GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - tRailHs, - 200, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.RC_Bed_Stone.get(1), + ItemList.RC_Rail_HS.get(6), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(tRailHs).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); } - ItemStack tRailHsB = getModItem(MOD_ID_RC, "track.speed", 16); + ItemStack tRailHsB = getModItem(Railcraft.modID, "track.speed", 16); NBTTagCompound tTagHsB = new NBTTagCompound(); tTagHsB.setString("track", "railcraft:track.speed.boost"); tRailHsB.stackTagCompound = tTagHsB; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - tRailHsB, - 300, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(tRailHsB).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAssemblerRecipes); // --- Wooden Switch Track --- - ItemStack tRailSS = getModItem(MOD_ID_RC, "track.slow", 1, 19986); + ItemStack tRailSS = getModItem(Railcraft.modID, "track.slow", 1, 19986); if (tRailSS != null) { NBTTagCompound tTagSS = new NBTTagCompound(); tTagSS.setString("track", "railcraft:track.slow.switch"); tRailSS.stackTagCompound = tTagSS; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.AnyIron, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailSS, - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailSS), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailSS), - 100, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailSS), - 100, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailSS), - 100, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailSS), - 100, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailSS), - 100, - 256); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.AnyIron, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailSS).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailSS)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailSS)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailSS)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailSS)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailSS)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailSS)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(256).addTo(sAssemblerRecipes); } // --- Wooden Wye Track --- - ItemStack tRailSW = getModItem(MOD_ID_RC, "track.slow", 1); + ItemStack tRailSW = getModItem(Railcraft.modID, "track.slow", 1); if (tRailSW != null) { NBTTagCompound tTagSW = new NBTTagCompound(); tTagSW.setString("track", "railcraft:track.slow.wye"); tRailSW.stackTagCompound = tTagSW; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.AnyIron, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailSW, - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailSW), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailSW), - 100, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailSW), - 100, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailSW), - 100, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailSW), - 100, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailSW), - 100, - 256); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.AnyIron, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailSW).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailSW)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailSW)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailSW)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailSW)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailSW)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailSW)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(256).addTo(sAssemblerRecipes); } // --- Wooden Junction Tack --- - ItemStack tRailSJ = getModItem(MOD_ID_RC, "track.slow", 1); + ItemStack tRailSJ = getModItem(Railcraft.modID, "track.slow", 1); if (tRailSJ != null) { NBTTagCompound tTagSJ = new NBTTagCompound(); tTagSJ.setString("track", "railcraft:track.slow.junction"); tRailSJ.stackTagCompound = tTagSJ; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.AnyIron, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailSJ, - 100, - 8); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailSJ), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailSJ), - 100, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailSJ), - 100, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailSJ), - 100, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailSJ), - 100, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailWood), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailSJ), - 100, - 256); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.AnyIron, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailSJ).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailSJ)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailSJ)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailSJ)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailSJ)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailSJ)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailWood), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailSJ)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(256).addTo(sAssemblerRecipes); } // --- Switch Tack --- - ItemStack tRailNS = getModItem(MOD_ID_RC, "track", 1, 4767); + ItemStack tRailNS = getModItem(Railcraft.modID, "track", 1, 4767); if (tRailNS != null) { NBTTagCompound tTagNS = new NBTTagCompound(); tTagNS.setString("track", "railcraft:track.switch"); tRailNS.stackTagCompound = tTagNS; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailNS, - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailNS), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailNS), - 200, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailNS), - 200, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailNS), - 200, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailNS), - 200, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailNS), - 200, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailNS).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailNS)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailNS)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailNS)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailNS)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailNS)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailNS)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + } // --- Wye Tack --- - ItemStack tRailNW = getModItem(MOD_ID_RC, "track", 1, 2144); + ItemStack tRailNW = getModItem(Railcraft.modID, "track", 1, 2144); if (tRailNW != null) { NBTTagCompound tTagNW = new NBTTagCompound(); tTagNW.setString("track", "railcraft:track.wye"); tRailNW.stackTagCompound = tTagNW; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailNW, - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailNW), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailNW), - 200, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailNW), - 200, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailNW), - 200, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailNW), - 200, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailNW), - 200, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailNW).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailNW)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailNW)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailNW)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailNW)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailNW)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailNW)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- Junction Tack --- - ItemStack tRailNJ = getModItem(MOD_ID_RC, "track", 1); + ItemStack tRailNJ = getModItem(Railcraft.modID, "track", 1); if (tRailNJ != null) { NBTTagCompound tTagNJ = new NBTTagCompound(); tTagNJ.setString("track", "railcraft:track.junction"); tRailNJ.stackTagCompound = tTagNJ; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailNJ, - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailNJ), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailNJ), - 200, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailNJ), - 200, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailNJ), - 200, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailNJ), - 200, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.rail, 2, 0), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailNJ), - 200, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailNJ).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailNJ)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailNJ)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailNJ)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailNJ)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailNJ)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.rail, 2, 0), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailNJ)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- Reinforced Switch Track --- - ItemStack tRailRS = getModItem(MOD_ID_RC, "track.reinforced", 1); + ItemStack tRailRS = getModItem(Railcraft.modID, "track.reinforced", 1); if (tRailRS != null) { NBTTagCompound tTagRS = new NBTTagCompound(); tTagRS.setString("track", "railcraft:track.reinforced.switch"); tRailRS.stackTagCompound = tTagRS; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailRS, - 300, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailRS), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailRS), - 300, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailRS), - 300, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailRS), - 300, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailRS), - 300, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailRS), - 300, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailRS).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailRS)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailRS)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailRS)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailRS)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailRS)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailRS)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- Reinforced Wye Track --- - ItemStack tRailRW = getModItem(MOD_ID_RC, "track.reinforced", 1); + ItemStack tRailRW = getModItem(Railcraft.modID, "track.reinforced", 1); if (tRailRW != null) { NBTTagCompound tTagRW = new NBTTagCompound(); tTagRW.setString("track", "railcraft:track.reinforced.wye"); tRailRW.stackTagCompound = tTagRW; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailRW, - 300, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailRW), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailRW), - 300, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailRW), - 300, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailRW), - 300, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailRW), - 300, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailRW), - 300, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailRW).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailRW)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailRW)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailRW)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailRW)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailRW)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailRW)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- Reinforced Junction Track --- - ItemStack tRailRJ = getModItem(MOD_ID_RC, "track.reinforced", 1, 764); + ItemStack tRailRJ = getModItem(Railcraft.modID, "track.reinforced", 1, 764); if (tRailRJ != null) { NBTTagCompound tTagRJ = new NBTTagCompound(); tTagRJ.setString("track", "railcraft:track.reinforced.junction"); tRailRJ.stackTagCompound = tTagRJ; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailRJ, - 300, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailRJ), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailRJ), - 300, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailRJ), - 300, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailRJ), - 300, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailRJ), - 300, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailRe), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailRJ), - 300, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailRJ).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailRJ)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailRJ)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailRJ)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailRJ)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailRJ)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailRe), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailRJ)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- H.S. Switch Track --- - ItemStack tRailSSw = getModItem(MOD_ID_RC, "track.speed", 1, 7916); + ItemStack tRailSSw = getModItem(Railcraft.modID, "track.speed", 1, 7916); if (tRailSSw != null) { NBTTagCompound tTagRSSw = new NBTTagCompound(); tTagRSSw.setString("track", "railcraft:track.speed.switch"); tRailSSw.stackTagCompound = tTagRSSw; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailSSw, - 400, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailSSw), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailSSw), - 400, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailSSw), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailSSw), - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailSSw), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailSSw), - 400, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailSSw).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailSSw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailSSw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailSSw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailSSw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailSSw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailSSw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- H.S. Wye Track --- - ItemStack tRailSWy = getModItem(MOD_ID_RC, "track.speed", 1); + ItemStack tRailSWy = getModItem(Railcraft.modID, "track.speed", 1); if (tRailSWy != null) { NBTTagCompound tTagRSWy = new NBTTagCompound(); tTagRSWy.setString("track", "railcraft:track.speed.wye"); tRailSWy.stackTagCompound = tTagRSWy; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailSWy, - 400, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailSWy), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailSWy), - 400, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailSWy), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailSWy), - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailSWy), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailSWy), - 400, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Steel, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailSWy).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailSWy)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailSWy)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.TungstenSteel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailSWy)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Iridium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailSWy)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailSWy)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailSWy)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- H.S. Transition Track --- - ItemStack tRailSTt = getModItem(MOD_ID_RC, "track.speed", 1, 26865); + ItemStack tRailSTt = getModItem(Railcraft.modID, "track.speed", 1, 26865); if (tRailSTt != null) { NBTTagCompound tTagRSTt = new NBTTagCompound(); tTagRSTt.setString("track", "railcraft:track.speed.transition"); tRailSTt.stackTagCompound = tTagRSTt; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), ItemList.RC_Bed_Stone.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailSTt), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), ItemList.RC_Bed_Stone.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.ConductiveIron, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailSTt), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), ItemList.RC_Bed_Stone.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VibrantAlloy, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailSTt), - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), ItemList.RC_Bed_Stone.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailSTt), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailHs), ItemList.RC_Bed_Stone.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.MelodicAlloy, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailSTt), - 400, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + ItemList.RC_Bed_Stone.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailSTt)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + ItemList.RC_Bed_Stone.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.ConductiveIron, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailSTt)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + ItemList.RC_Bed_Stone.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VibrantAlloy, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailSTt)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + ItemList.RC_Bed_Stone.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailSTt)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailHs), + ItemList.RC_Bed_Stone.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.MelodicAlloy, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailSTt)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- Electric Switch Track --- - ItemStack tRailES = getModItem(MOD_ID_RC, "track.electric", 1, 10488); + ItemStack tRailES = getModItem(Railcraft.modID, "track.electric", 1, 10488); if (tRailES != null) { NBTTagCompound tTagES = new NBTTagCompound(); tTagES.setString("track", "railcraft:track.electric.switch"); tRailES.stackTagCompound = tTagES; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Copper, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailES, - 400, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Gold, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailES), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Electrum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailES), - 400, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailES), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Platinum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailES), - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.VanadiumGallium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailES), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Naquadah, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailES), - 400, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Copper, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailES).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Gold, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailES)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Electrum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailES)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailES)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Platinum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailES)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.VanadiumGallium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailES)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.springSmall, Materials.Naquadah, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailES)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- Electric Wye Track --- - ItemStack tRailEw = getModItem(MOD_ID_RC, "track.electric", 1); + ItemStack tRailEw = getModItem(Railcraft.modID, "track.electric", 1); if (tRailEw != null) { NBTTagCompound tTagEw = new NBTTagCompound(); tTagEw.setString("track", "railcraft:track.electric.wye"); tRailEw.stackTagCompound = tTagEw; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Copper, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailEw, - 400, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Gold, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailEw), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Electrum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailEw), - 400, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailEw), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Platinum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailEw), - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.VanadiumGallium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailEw), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Naquadah, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailEw), - 400, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Copper, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailEw).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Gold, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailEw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Electrum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailEw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailEw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Platinum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailEw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.VanadiumGallium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailEw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Naquadah, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailEw)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // --- Electric Junction Track --- - ItemStack tRailEJ = getModItem(MOD_ID_RC, "track.electric", 1); + ItemStack tRailEJ = getModItem(Railcraft.modID, "track.electric", 1); if (tRailEJ != null) { NBTTagCompound tTagREJ = new NBTTagCompound(); tTagREJ.setString("track", "railcraft:track.electric.junction"); tRailEJ.stackTagCompound = tTagREJ; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Copper, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - tRailEJ, - 400, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Gold, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(2, tRailEJ), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Electrum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(4, tRailEJ), - 400, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(8, tRailEJ), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Platinum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(16, tRailEJ), - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.VanadiumGallium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(32, tRailEJ), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(2, tRailEl), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Naquadah, 1L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - GT_Utility.copyAmount(64, tRailEJ), - 400, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Copper, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(tRailEJ).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Gold, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(2, tRailEJ)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Electrum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(4, tRailEJ)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(8, tRailEJ)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Platinum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(16, tRailEJ)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.VanadiumGallium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(32, tRailEJ)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(2, tRailEl), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Naquadah, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_Utility.copyAmount(64, tRailEJ)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); } // Shunting Wire - for (Materials tMat : Materials.values()) { - if (tMat.isProperSolderingFluid()) { - int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 - : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Copper, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Lead, 1L), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(16L * tMultiplier / 2L), - ItemList.RC_ShuntingWire.get(1L), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Lead, 1L), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(16L * tMultiplier / 2L), - ItemList.RC_ShuntingWire.get(1L), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Lead, 1L), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(16L * tMultiplier / 2L), - ItemList.RC_ShuntingWire.get(4L), - 200, - 24); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Electrum, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Gold, 1L), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(16L * tMultiplier / 2L), - ItemList.RC_ShuntingWire.get(8L), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Titanium, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Electrum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(16L * tMultiplier / 2L), - ItemList.RC_ShuntingWire.get(16L), - 200, - 48); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Platinum, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Titanium, 1L), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(16L * tMultiplier / 2L), - ItemList.RC_ShuntingWire.get(32L), - 200, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.VanadiumGallium, 1L), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Platinum, 1L), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(16L * tMultiplier / 2L), - ItemList.RC_ShuntingWire.get(64L), - 200, - (int) TierEU.RECIPE_MV); - // chunkloader upgrade OC - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Plastic_Advanced.get(1L), - GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Aluminium, 2L), - getModItem(MOD_ID_RC, "machine.alpha", 1L, 0), - getModItem("OpenComputers", "item", 1L, 26), GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem("OpenComputers", "item", 1L, 62), - 250, - 256); - } + for (Materials tMat : solderingMats) { + int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 + : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Copper, 1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Lead, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.RC_ShuntingWire.get(1)).fluidInputs(tMat.getMolten(16L * tMultiplier / 2)) + .noFluidOutputs().duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Lead, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.RC_ShuntingWire.get(1)).fluidInputs(tMat.getMolten(16L * tMultiplier / 2)) + .noFluidOutputs().duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Lead, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.RC_ShuntingWire.get(4)).fluidInputs(tMat.getMolten(16L * tMultiplier / 2)) + .noFluidOutputs().duration(10 * SECONDS).eut(24).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Electrum, 1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Gold, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.RC_ShuntingWire.get(8)).fluidInputs(tMat.getMolten(16L * tMultiplier / 2)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Titanium, 1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Electrum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.RC_ShuntingWire.get(16)).fluidInputs(tMat.getMolten(16L * tMultiplier / 2)) + .noFluidOutputs().duration(10 * SECONDS).eut(48).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Platinum, 1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.RC_ShuntingWire.get(32)).fluidInputs(tMat.getMolten(16L * tMultiplier / 2)) + .noFluidOutputs().duration(10 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.VanadiumGallium, 1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Platinum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.RC_ShuntingWire.get(64)).fluidInputs(tMat.getMolten(16L * tMultiplier / 2)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + // chunkloader upgrade OC + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Plastic_Advanced.get(1), + GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Aluminium, 2), + getModItem(Railcraft.modID, "machine.alpha", 1L, 0), + getModItem(OpenComputers.modID, "item", 1L, 26), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(OpenComputers.modID, "item", 1L, 62)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs() + .duration(12 * SECONDS + 10 * TICKS).eut(256).addTo(sAssemblerRecipes); + } - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.piston, 1, 0), ItemList.FR_Casing_Sturdy.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lapis, 1L), - GT_Utility.getIntegratedCircuit(1) }, - Materials.SeedOil.getFluid(250L), - getModItem(MOD_ID_DC, "item.EngineCore", 1L, 0), - 100, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { new ItemStack(Blocks.piston, 1, 0), ItemList.FR_Casing_Sturdy.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lapis, 1L), - GT_Utility.getIntegratedCircuit(1) }, - Materials.Lubricant.getFluid(125L), - getModItem(MOD_ID_DC, "item.EngineCore", 1L, 0), - 100, - 16); - - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { getModItem("ExtraUtilities", "trashcan", 1L, 0), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Obsidian, 4L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 1L, 11), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { getModItem(MOD_ID_DC, "item.EngineCore", 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyCopper, 10L), - GT_Utility.getIntegratedCircuit(10) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 1L, 7), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { getModItem(MOD_ID_DC, "item.EngineCore", 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 10L), - GT_Utility.getIntegratedCircuit(10) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 1L, 8), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { getModItem(MOD_ID_DC, "item.EngineCore", 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 10L), - GT_Utility.getIntegratedCircuit(10) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 1L, 9), - 200, - 16); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 4L), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Obsidian, 2L), - GT_Utility.getIntegratedCircuit(1) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.alpha", 1, 0), - 600, - (int) TierEU.RECIPE_HV); - - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyIron, 2L), - GT_Utility.getIntegratedCircuit(20), - getModItem(MOD_ID_RC, "machine.beta", 1L, 0), - 600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyIron, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 2L, 1), - 800, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyIron, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 2L, 1), - 800, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Bronze, 2L), - new ItemStack(Blocks.iron_bars, 2, 0), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 1L, 2), - 800, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2L), - GT_Utility.getIntegratedCircuit(20) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 1L, 13), - 200, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 2L, 14), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 2L, 14), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Steel, 2L), - getModItem(MOD_ID_DC, "item.SteelBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.beta", 1L, 15), - 400, - 64); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2L), - GT_Utility.getIntegratedCircuit(20), - getModItem(MOD_ID_RC, "machine.zeta", 1L, 0), - 600, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 1), - 800, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 1), - 800, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Plastic, 2L), - getModItem(MOD_ID_DC, "item.AluminiumBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 1L, 2), - 800, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L), - GT_Utility.getIntegratedCircuit(20) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 1L, 3), - 200, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 4), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 4), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 2L), - getModItem(MOD_ID_DC, "item.StainlessSteelBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 1L, 5), - 400, - 256); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 2L), - GT_Utility.getIntegratedCircuit(20), - getModItem(MOD_ID_RC, "machine.zeta", 1L, 6), - 600, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 7), - 800, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 7), - 800, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Titanium, 2L), - getModItem(MOD_ID_DC, "item.TitaniumBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 1L, 8), - 800, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2L), - GT_Utility.getIntegratedCircuit(20) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 1L, 9), - 200, - 960); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 10), - 400, - 960); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 10), - 400, - 960); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.TungstenSteel, 2L), - getModItem(MOD_ID_DC, "item.TungstenSteelBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 1L, 11), - 400, - 960); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Palladium, 2L), - GT_Utility.getIntegratedCircuit(20), - getModItem(MOD_ID_RC, "machine.zeta", 1L, 12), - 600, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Palladium, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 13), - 800, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Palladium, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 2L, 13), - 800, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.NiobiumTitanium, 2L), - getModItem(MOD_ID_DC, "item.ChromeBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.zeta", 1L, 14), - 800, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 2L), - GT_Utility.getIntegratedCircuit(20) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 1L, 0), - 200, - 4096); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 2L, 1), - 400, - 4096); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 2L, 1), - 400, - 4096); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Enderium, 2L), - getModItem(MOD_ID_DC, "item.IridiumBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 1L, 2), - 400, - 4096); - GT_Values.RA.addAssemblerRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 2L), - GT_Utility.getIntegratedCircuit(20), - getModItem(MOD_ID_RC, "machine.eta", 1L, 3), - 600, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 2L, 4), - 800, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 2L, 4), - 800, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Naquadah, 2L), - getModItem(MOD_ID_DC, "item.OsmiumBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 1L, 5), - 800, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2L), - GT_Utility.getIntegratedCircuit(20) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 1L, 6), - 200, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2L), - new ItemStack(Blocks.glass_pane, 2, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 2L, 7), - 400, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2L), - getModItem("TConstruct", "GlassPane", 2L, 0), GT_Utility.getIntegratedCircuit(21) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 2L, 7), - 400, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Neutronium, 2L), - getModItem(MOD_ID_DC, "item.NeutroniumBars", 2L), GT_Utility.getIntegratedCircuit(22) }, - GT_Values.NF, - getModItem(MOD_ID_RC, "machine.eta", 1L, 8), - 400, - (int) TierEU.RECIPE_LuV); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.piston, 1, 0), + ItemList.FR_Casing_Sturdy.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lapis, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(NewHorizonsCoreMod.modID, "item.EngineCore", 1L, 0)) + .fluidInputs(Materials.SeedOil.getFluid(250)).noFluidOutputs().duration(5 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.piston, 1, 0), + ItemList.FR_Casing_Sturdy.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lapis, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(NewHorizonsCoreMod.modID, "item.EngineCore", 1L, 0)) + .fluidInputs(Materials.Lubricant.getFluid(125)).noFluidOutputs().duration(5 * SECONDS).eut(16) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(ExtraUtilities.modID, "trashcan", 1L, 0), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Obsidian, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 11)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(NewHorizonsCoreMod.modID, "item.EngineCore", 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyCopper, 10), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 7)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(NewHorizonsCoreMod.modID, "item.EngineCore", 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 10), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 8)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(NewHorizonsCoreMod.modID, "item.EngineCore", 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 10), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 9)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(16).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Gold, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 4), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Obsidian, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Railcraft.modID, "machine.alpha", 1, 0)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyIron, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 0)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyIron, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 2L, 1)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnyIron, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 2L, 1)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Bronze, 2), + new ItemStack(Blocks.iron_bars, 2, 0), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 2)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 13)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 2L, 14)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 2L, 14)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Steel, 2), + getModItem(NewHorizonsCoreMod.modID, "item.SteelBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 15)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 0)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 1)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 1)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Plastic, 2), + getModItem(NewHorizonsCoreMod.modID, "item.AluminiumBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 2)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 3)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 4)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 4)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 2), + getModItem(NewHorizonsCoreMod.modID, "item.StainlessSteelBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 5)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(256).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 6)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 7)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 7)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Titanium, 2), + getModItem(NewHorizonsCoreMod.modID, "item.TitaniumBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 8)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 9)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 10)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 10)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.TungstenSteel, 2), + getModItem(NewHorizonsCoreMod.modID, "item.TungstenSteelBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 11)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Palladium, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 12)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Palladium, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 13)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Palladium, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 2L, 13)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.NiobiumTitanium, 2), + getModItem(NewHorizonsCoreMod.modID, "item.ChromeBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 14)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 1L, 0)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(4096).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 2L, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4096).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 2L, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4096).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Enderium, 2), + getModItem(NewHorizonsCoreMod.modID, "item.IridiumBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 1L, 2)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(4096).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 1L, 3)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 2L, 4)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 2L, 4)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Naquadah, 2), + getModItem(NewHorizonsCoreMod.modID, "item.OsmiumBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 1L, 5)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2), + GT_Utility.getIntegratedCircuit(20)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 1L, 6)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2), + new ItemStack(Blocks.glass_pane, 2, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 2L, 7)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2), + getModItem(TinkerConstruct.modID, "GlassPane", 2L, 0), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 2L, 7)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Neutronium, 2), + getModItem(NewHorizonsCoreMod.modID, "item.NeutroniumBars", 2), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(getModItem(Railcraft.modID, "machine.eta", 1L, 8)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + // Water Tank - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 2L) }, - Materials.Glue.getFluid(36L), - getModItem(MOD_ID_RC, "machine.alpha", 1L, 14), - 200, - 8, - false); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.IronMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 2L) }, - Materials.Glue.getFluid(36L), - getModItem(MOD_ID_RC, "machine.alpha", 1L, 14), - 200, - 8, - false); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 2L) }, - Materials.Glue.getFluid(36L), - getModItem(MOD_ID_RC, "machine.alpha", 1L, 14), - 200, - 8, - false); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Steel, 4L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 4L) }, - Materials.Glue.getFluid(72L), - getModItem(MOD_ID_RC, "machine.alpha", 3L, 14), - 400, - 30, - false); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Steel, 2L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.WoodSealed, 1L) }, - Materials.Plastic.getMolten(36L), - getModItem(MOD_ID_RC, "machine.alpha", 3L, 14), - 400, - 30, - false); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.StainlessSteel, 4L), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.WoodSealed, 4L) }, - Materials.Plastic.getMolten(72L), - getModItem(MOD_ID_RC, "machine.alpha", 9L, 14), - 400, - 120, - false); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 2)) + .itemOutputs(getModItem(Railcraft.modID, "machine.alpha", 1L, 14)) + .fluidInputs(Materials.Glue.getFluid(36)).noFluidOutputs().duration(10 * SECONDS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.IronMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 2)) + .itemOutputs(getModItem(Railcraft.modID, "machine.alpha", 1L, 14)) + .fluidInputs(Materials.Glue.getFluid(36)).noFluidOutputs().duration(10 * SECONDS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 2)) + .itemOutputs(getModItem(Railcraft.modID, "machine.alpha", 1L, 14)) + .fluidInputs(Materials.Glue.getFluid(36)).noFluidOutputs().duration(10 * SECONDS).eut(8) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Steel, 4), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Wood, 4)) + .itemOutputs(getModItem(Railcraft.modID, "machine.alpha", 3L, 14)) + .fluidInputs(Materials.Glue.getFluid(72)).noFluidOutputs().duration(20 * SECONDS).eut(30) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Steel, 2), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.WoodSealed, 1)) + .itemOutputs(getModItem(Railcraft.modID, "machine.alpha", 3L, 14)) + .fluidInputs(Materials.Plastic.getMolten(36)).noFluidOutputs().duration(20 * SECONDS).eut(30) + .addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.StainlessSteel, 4), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.WoodSealed, 4)) + .itemOutputs(getModItem(Railcraft.modID, "machine.alpha", 9L, 14)) + .fluidInputs(Materials.Plastic.getMolten(72)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + // Steam Boilers - GT_Values.RA.addAssemblerRecipe( - ItemList.IC2_Item_Casing_Iron.get(6L), - GT_Utility.getIntegratedCircuit(6), - getModItem(MOD_ID_RC, "machine.beta", 1L, 3), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAssemblerRecipe( - ItemList.IC2_Item_Casing_Steel.get(6L), - GT_Utility.getIntegratedCircuit(6), - getModItem(MOD_ID_RC, "machine.beta", 1L, 4), - 400, - 64); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Item_Casing_Iron.get(6), GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 3)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Item_Casing_Steel.get(6), GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(getModItem(Railcraft.modID, "machine.beta", 1L, 4)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(64).addTo(sAssemblerRecipes); } public void withBartWorks() { - if (isBartWorksLoaded) { - GT_Values.RA.addAssemblerRecipe( - getModItem("bartworks", "gt.bwMetaGeneratedplate", 6L, 88), - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Chrome, 1L), - ItemList.Casing_Advanced_Rhodium_Palladium.get(1L), - 50, - 16); + if (BartWorks.isModLoaded()) { + return; } + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(BartWorks.modID, "gt.bwMetaGeneratedplate", 6L, 88), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Chrome, 1)) + .itemOutputs(ItemList.Casing_Advanced_Rhodium_Palladium.get(1)).noFluidInputs().noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + } public void withGalacticraftMars() { - if (isGalacticraftMarsLoaded) { - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.compressed, Materials.Bronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.compressed, Materials.Aluminium, 1L), - GT_OreDictUnificator.get(OrePrefixes.compressed, Materials.Steel, 1L), - GT_Utility.getIntegratedCircuit(1) }, - Materials.StainlessSteel.getMolten(72L), - ItemList.Ingot_Heavy1.get(1L), - 300, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { getModItem("GalacticraftCore", "item.heavyPlating", 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.MeteoricIron, 2L), - GT_Utility.getIntegratedCircuit(1) }, - Materials.TungstenSteel.getMolten(72L), - ItemList.Ingot_Heavy2.get(1L), - 300, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { getModItem("GalacticraftMars", "item.null", 1L, 3), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Desh, 4L), - GT_Utility.getIntegratedCircuit(1) }, - Materials.Platinum.getMolten(72L), - ItemList.Ingot_Heavy3.get(1L), - 300, - (int) TierEU.RECIPE_IV); + if (!GalacticraftMars.isModLoaded()) { + return; } + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.compressed, Materials.Bronze, 1), + GT_OreDictUnificator.get(OrePrefixes.compressed, Materials.Aluminium, 1), + GT_OreDictUnificator.get(OrePrefixes.compressed, Materials.Steel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Ingot_Heavy1.get(1)).fluidInputs(Materials.StainlessSteel.getMolten(72)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(GalacticraftCore.modID, "item.heavyPlating", 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.MeteoricIron, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Ingot_Heavy2.get(1)).fluidInputs(Materials.TungstenSteel.getMolten(72)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(GalacticraftMars.modID, "item.null", 1L, 3), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Desh, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Ingot_Heavy3.get(1)).fluidInputs(Materials.Platinum.getMolten(72)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); } - public void withGalaxySPace() { - if (isGalaxySpaceLoaded) { - GT_Values.RA - .addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Pentacadmiummagnesiumhexaoxid, 3L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.StainlessSteel, 2L), - ItemList.Electric_Pump_MV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 2000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 3L), - 320, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Titaniumonabariumdecacoppereikosaoxid, 6L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Titanium, 4L), - ItemList.Electric_Pump_HV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 4000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 6L), - 320, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Uraniumtriplatinid, 9L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.TungstenSteel, 6L), - ItemList.Electric_Pump_EV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 6000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 9L), - 320, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Vanadiumtriindinid, 12L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NiobiumTitanium, 8L), - ItemList.Electric_Pump_IV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 8000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 12L), - 640, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator.get( - OrePrefixes.wireGt01, - Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, - 15L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Enderium, 10L), - ItemList.Electric_Pump_LuV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 12000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 15L), - 640, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 18L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Naquadah, 12L), - ItemList.Electric_Pump_ZPM.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 16000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 18L), - 1280, - (int) TierEU.RECIPE_ZPM); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuvwire, 21L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Neutronium, 14L), - ItemList.Electric_Pump_UV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 20000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 21L), - 1280, - (int) TierEU.RECIPE_UV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuhvwire, 24L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Bedrockium, 16L), - ItemList.Electric_Pump_UHV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 24000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUHV, 24L), - 2560, - (int) TierEU.RECIPE_UHV); - GT_Values.RA - .addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.SuperconductorUEVBase, 27L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Infinity, 18L), - ItemList.Electric_Pump_UEV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 28000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUEV, 27L), - 3200, - (int) TierEU.RECIPE_UEV); - GT_Values.RA - .addAssemblerRecipe( - new ItemStack[] { - GT_OreDictUnificator - .get(OrePrefixes.wireGt01, Materials.SuperconductorUMVBase, 33L), - GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.SpaceTime, 22L), - ItemList.Electric_Pump_UMV.get(1L), GT_Utility.getIntegratedCircuit(9) }, - new FluidStack(FluidRegistry.getFluid("liquid helium"), 36000), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUMV, 33L), - 3200, - (int) TierEU.RECIPE_UMV); + public void withGalaxySpace() { + if (!GalaxySpace.isModLoaded()) { + return; + } + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Pentacadmiummagnesiumhexaoxid, 3), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.StainlessSteel, 2), + ItemList.Electric_Pump_MV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 3)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 2000)).noFluidOutputs() + .duration(16 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Titaniumonabariumdecacoppereikosaoxid, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Titanium, 4), + ItemList.Electric_Pump_HV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 6)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 4000)).noFluidOutputs() + .duration(16 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Uraniumtriplatinid, 9), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.TungstenSteel, 6), + ItemList.Electric_Pump_EV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 9)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 6000)).noFluidOutputs() + .duration(16 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Vanadiumtriindinid, 12), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NiobiumTitanium, 8), + ItemList.Electric_Pump_IV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 12)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 8000)).noFluidOutputs() + .duration(32 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get( + OrePrefixes.wireGt01, + Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, + 15), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Enderium, 10), + ItemList.Electric_Pump_LuV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 15)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 12000)).noFluidOutputs() + .duration(32 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 18), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Naquadah, 12), + ItemList.Electric_Pump_ZPM.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 18)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 16000)).noFluidOutputs() + .duration(1 * MINUTES + 4 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuvwire, 21), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Neutronium, 14), + ItemList.Electric_Pump_UV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 21)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 20000)).noFluidOutputs() + .duration(1 * MINUTES + 4 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.wireGt01, Materials.Longasssuperconductornameforuhvwire, 24), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Bedrockium, 16), + ItemList.Electric_Pump_UHV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUHV, 24)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 24000)).noFluidOutputs() + .duration(2 * MINUTES + 8 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUEVBase, 27), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Infinity, 18), + ItemList.Electric_Pump_UEV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUEV, 27)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 28000)).noFluidOutputs() + .duration(2 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UEV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUMVBase, 33), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.SpaceTime, 22), + ItemList.Electric_Pump_UMV.get(1), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUMV, 33)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("liquid helium"), 36000)).noFluidOutputs() + .duration(2 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UMV).addTo(sAssemblerRecipes); + } + public void withGTNHLanthAndGTPP() { + if (!(GTNHLanthanides.isModLoaded() && GTPlusPlus.isModLoaded())) { + return; } + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Electric_Pump_EV.get(4), + ItemList.Field_Generator_EV.get(4), + getModItem(GTPlusPlus.modID, "itemPlateInconel690", 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 16), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.BorosilicateGlass, 16), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Polytetrafluoroethylene, 4), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 4), + ItemList.Shape_Extruder_Wire.get(16)) + .itemOutputs(ItemList.Spinneret.get(1)).fluidInputs(Materials.SolderingAlloy.getGas(144)) + .noFluidOutputs().duration(2 * MINUTES).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); } - public void withoutGTPPRecipes() { - if (!isGTPPLoaded) { - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 64), - ItemList.Circuit_Silicon_Wafer4.get(2L), GT_Utility.getIntegratedCircuit(1) }, - Materials.AdvancedGlue.getFluid(500L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphene, 64), - 400, - (int) TierEU.RECIPE_LuV); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 64), - ItemList.Circuit_Silicon_Wafer5.get(1L), GT_Utility.getIntegratedCircuit(1) }, - Materials.AdvancedGlue.getFluid(250L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphene, 64), - 80, - (int) TierEU.RECIPE_ZPM); + public void withIC2NuclearControl() { + if (!IC2NuclearControl.isModLoaded()) { // Card recycling recipes + return; } + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemVanillaMachineCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemInventoryScannerCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemEnergySensorLocationCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "RFSensorCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemMultipleSensorLocationCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 1)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + // counter + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemMultipleSensorLocationCard", 1L, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 1)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + // liquid + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemMultipleSensorLocationCard", 1L, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + // generator + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemLiquidArrayLocationCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + // 2-6 liquid + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemEnergyArrayLocationCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + // 2-6 energy + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "ItemSensorLocationCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + // non-fluid nuke + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "Item55ReactorCard", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Good), 2)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(IC2NuclearControl.modID, "CardAppeng", 1L, 0), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 2)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.NC_SensorCard.get(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("electronicCircuit", 3)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java index 17f63bba95..4eab816d2e 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java @@ -1,6 +1,11 @@ package gregtech.loaders.postload.recipes; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isBartWorksLoaded; +import static gregtech.api.enums.ModIDs.BartWorks; +import static gregtech.api.enums.ModIDs.GTPlusPlus; +import static gregtech.api.util.GT_RecipeBuilder.HOURS; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeConstants.*; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; @@ -12,6 +17,16 @@ import gregtech.api.util.GT_OreDictUnificator; public class AssemblyLineRecipes implements Runnable { + private Fluid solderIndalloy; + private Materials LuVMat; + + public AssemblyLineRecipes() { + solderIndalloy = GTPlusPlus.isModLoaded() ? FluidRegistry.getFluid("molten.indalloy140") + : FluidRegistry.getFluid("molten.solderingalloy"); + + LuVMat = BartWorks.isModLoaded() ? Materials.get("Ruridit") : Materials.Osmiridium; + } + @Override public void run() { // recipe len: @@ -26,660 +41,692 @@ public class AssemblyLineRecipes implements Runnable { // indalloy and ruridit are from gt++ and bartworks which are not dependencies - Fluid solderIndalloy = FluidRegistry.getFluid("molten.indalloy140") != null - ? FluidRegistry.getFluid("molten.indalloy140") - : FluidRegistry.getFluid("molten.solderingalloy"); - - Materials LuVMat = isBartWorksLoaded ? Materials.get("Ruridit") : Materials.Osmiridium; - // Motors - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Motor_IV.get(1, new Object() {}), - 144000, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.HSSS, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 2L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250) }, - ItemList.Electric_Motor_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Motor_LuV.get(1, new Object() {}), - 144000, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.NaquadahAlloy, 4L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.NaquadahAlloy, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.NaquadahAlloy, 16L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 2L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750) }, - ItemList.Electric_Motor_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Motor_ZPM.get(1, new Object() {}), - 288000, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.SamariumMagnetic, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Neutronium, 4L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Neutronium, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.Neutronium, 16L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 2L) }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 1296), - Materials.Lubricant.getFluid(2000) }, - ItemList.Electric_Motor_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); + { + // LuV motor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Motor_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.HSSS, 2), + GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 2)) + .fluidInputs(new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250)) + .noFluidOutputs().itemOutputs(ItemList.Electric_Motor_LuV.get(1)).eut(TierEU.RECIPE_IV) + .duration(600).addTo(AssemblyLine); + + // ZPM motor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Motor_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 2), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.NaquadahAlloy, 16), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 2)) + .fluidInputs(new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750)) + .noFluidOutputs().itemOutputs(ItemList.Electric_Motor_ZPM.get(1)).eut(TierEU.RECIPE_LuV) + .duration(30 * SECONDS).addTo(AssemblyLine); + + // UV motor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Motor_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.SamariumMagnetic, 2), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.Neutronium, 16), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 2)) + .fluidInputs( + Materials.Naquadria.getMolten(1296), + new FluidStack(solderIndalloy, 1296), + Materials.Lubricant.getFluid(2000)) + .noFluidOutputs().itemOutputs( + + ).eut(TierEU.RECIPE_ZPM).duration(30 * SECONDS).addTo(AssemblyLine); + } // Pumps - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Pump_IV.get(1, new Object() {}), - 144000, - new Object[] { ItemList.Electric_Motor_LuV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.NiobiumTitanium, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 2L), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.HSSS, 8L), - new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 4L }, - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.HSSS, 2L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 2L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250) }, - ItemList.Electric_Pump_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Pump_LuV.get(1, new Object() {}), - 144000, - new Object[] { ItemList.Electric_Motor_ZPM.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Enderium, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 2L), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 8L), - new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 8L }, - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.NaquadahAlloy, 2L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 2L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750) }, - ItemList.Electric_Pump_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Pump_ZPM.get(1, new Object() {}), - 288000, - new Object[] { ItemList.Electric_Motor_UV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Naquadah, 2L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2L), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 8L), - new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 16L }, - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Neutronium, 2L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 2L) }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 1296), - Materials.Lubricant.getFluid(2000) }, - ItemList.Electric_Pump_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); + { + // LuV Pump + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Pump_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Electric_Motor_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.NiobiumTitanium, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.HSSS, 8), + new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 4 }, + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.HSSS, 2), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 2)) + .fluidInputs(new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250)) + .noFluidOutputs().itemOutputs(ItemList.Electric_Pump_LuV.get(1)).eut(TierEU.RECIPE_IV).duration(600) + .addTo(AssemblyLine); + + // ZPM Pump + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Pump_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Electric_Motor_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Enderium, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 8), + new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 8 }, + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.NaquadahAlloy, 2), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 2)) + .fluidInputs(new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750)) + .noFluidOutputs().itemOutputs(ItemList.Electric_Pump_ZPM.get(1)).eut(TierEU.RECIPE_LuV) + .duration(30 * SECONDS).addTo(AssemblyLine); + + // UV Pump + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Pump_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + ItemList.Electric_Motor_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.Naquadah, 2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 8), + new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 16 }, + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Neutronium, 2), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 2)) + .itemOutputs(ItemList.Electric_Pump_UV.get(1)) + .fluidInputs( + Materials.Naquadria.getMolten(1296), + new FluidStack(solderIndalloy, 1296), + Materials.Lubricant.getFluid(2000)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } // Conveyors - GT_Values.RA.addAssemblylineRecipe( - ItemList.Conveyor_Module_IV.get(1, new Object() {}), - 144000, - new Object[] { ItemList.Electric_Motor_LuV.get(2, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 2L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.HSSS, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.HSSS, 32L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 2L), - new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 10L }, }, - new FluidStack[] { new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250) }, - ItemList.Conveyor_Module_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Conveyor_Module_LuV.get(1, new Object() {}), - 144000, - new Object[] { ItemList.Electric_Motor_ZPM.get(2, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 2L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.NaquadahAlloy, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.NaquadahAlloy, 32L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 2L), - new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 20L }, }, - new FluidStack[] { new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750) }, - ItemList.Conveyor_Module_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Conveyor_Module_ZPM.get(1, new Object() {}), - 288000, - new Object[] { ItemList.Electric_Motor_UV.get(2, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Neutronium, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.Neutronium, 32L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 2L), - new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 40L } }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 1296), - Materials.Lubricant.getFluid(2000) }, - ItemList.Conveyor_Module_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); + { + // LuV Conveyor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Conveyor_Module_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Electric_Motor_LuV.get(2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 2), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.HSSS, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.HSSS, 32), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 2), + new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 10 }) + .itemOutputs(ItemList.Conveyor_Module_LuV.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_IV).addTo(AssemblyLine); + + // ZPM Conveyor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Conveyor_Module_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Electric_Motor_ZPM.get(2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 2), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.NaquadahAlloy, 32), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 2), + new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 20 }) + .itemOutputs(ItemList.Conveyor_Module_ZPM.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // UV Conveyor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Conveyor_Module_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + ItemList.Electric_Motor_UV.get(2), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 2), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.Neutronium, 32), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 2), + new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 40 }) + .itemOutputs(ItemList.Conveyor_Module_UV.get(1)) + .fluidInputs( + Materials.Naquadria.getMolten(1296), + new FluidStack(solderIndalloy, 1296), + Materials.Lubricant.getFluid(2000)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } // Pistons - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Piston_IV.get(1, new Object() {}), - 144000, - new ItemStack[] { ItemList.Electric_Motor_LuV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 6L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.HSSS, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.HSSS, 32L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.HSSS, 4L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.HSSS, 1L), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.HSSS, 2L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 4L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250) }, - ItemList.Electric_Piston_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Piston_LuV.get(1, new Object() {}), - 144000, - new ItemStack[] { ItemList.Electric_Motor_ZPM.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 6L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.NaquadahAlloy, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.NaquadahAlloy, 32L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.NaquadahAlloy, 4L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.NaquadahAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.NaquadahAlloy, 2L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 4L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750) }, - ItemList.Electric_Piston_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Electric_Piston_ZPM.get(1, new Object() {}), - 288000, - new ItemStack[] { ItemList.Electric_Motor_UV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 6L), - GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Neutronium, 4L), - GT_OreDictUnificator.get(OrePrefixes.round, Materials.Neutronium, 32L), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Neutronium, 4L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.Neutronium, 1L), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 2L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 4L) }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 1296), - Materials.Lubricant.getFluid(2000) }, - ItemList.Electric_Piston_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); + { + // LuV Piston + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Piston_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Electric_Motor_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 6), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.HSSS, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.HSSS, 32), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.HSSS, 4), + GT_OreDictUnificator.get(OrePrefixes.gear, Materials.HSSS, 1), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.HSSS, 2), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 4)) + .itemOutputs(ItemList.Electric_Piston_LuV.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 144), Materials.Lubricant.getFluid(250)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_IV).addTo(AssemblyLine); + + // ZPM Pistons + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Piston_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Electric_Motor_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 6), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.NaquadahAlloy, 32), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.gear, Materials.NaquadahAlloy, 1), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.NaquadahAlloy, 2), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 4)) + .itemOutputs(ItemList.Electric_Piston_ZPM.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 288), Materials.Lubricant.getFluid(750)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // UV Piston + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Electric_Piston_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + ItemList.Electric_Motor_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 6), + GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.round, Materials.Neutronium, 32), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.gear, Materials.Neutronium, 1), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 2), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 4)) + .itemOutputs(ItemList.Electric_Piston_UV.get(1)) + .fluidInputs( + Materials.Naquadria.getMolten(1296), + new FluidStack(solderIndalloy, 1296), + Materials.Lubricant.getFluid(2000)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } // RobotArms - GT_Values.RA.addAssemblylineRecipe( - ItemList.Robot_Arm_IV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.HSSS, 4L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.HSSS, 1L), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.HSSS, 3L), - ItemList.Electric_Motor_LuV.get(2, new Object() {}), - ItemList.Electric_Piston_LuV.get(1, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Master), 2 }, - new Object[] { OrePrefixes.circuit.get(Materials.Elite), 4 }, - new Object[] { OrePrefixes.circuit.get(Materials.Data), 8 }, - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 6L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 576), Materials.Lubricant.getFluid(250) }, - ItemList.Robot_Arm_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Robot_Arm_LuV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.NaquadahAlloy, 4L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.NaquadahAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.NaquadahAlloy, 3L), - ItemList.Electric_Motor_ZPM.get(2, new Object() {}), - ItemList.Electric_Piston_ZPM.get(1, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 2 }, - new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 }, - new Object[] { OrePrefixes.circuit.get(Materials.Elite), 8 }, - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 6L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 1152), Materials.Lubricant.getFluid(750) }, - ItemList.Robot_Arm_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Robot_Arm_ZPM.get(1, new Object() {}), - 288000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Neutronium, 4L), - GT_OreDictUnificator.get(OrePrefixes.gear, Materials.Neutronium, 1L), - GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 3L), - ItemList.Electric_Motor_UV.get(2, new Object() {}), - ItemList.Electric_Piston_UV.get(1, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 2 }, - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, - new Object[] { OrePrefixes.circuit.get(Materials.Master), 8 }, - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 6L) }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 2304), - Materials.Lubricant.getFluid(2000) }, - ItemList.Robot_Arm_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); + { + // LuV Robot Arm + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Robot_Arm_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.HSSS, 4), + GT_OreDictUnificator.get(OrePrefixes.gear, Materials.HSSS, 1), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.HSSS, 3), + ItemList.Electric_Motor_LuV.get(2), + ItemList.Electric_Piston_LuV.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.Master), 2 }, + new Object[] { OrePrefixes.circuit.get(Materials.Elite), 4 }, + new Object[] { OrePrefixes.circuit.get(Materials.Data), 8 }, + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 6)) + .itemOutputs(ItemList.Robot_Arm_LuV.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 576), Materials.Lubricant.getFluid(250)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_IV).addTo(AssemblyLine); + + // ZPM Robot Arm + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Robot_Arm_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.gear, Materials.NaquadahAlloy, 1), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.NaquadahAlloy, 3), + ItemList.Electric_Motor_ZPM.get(2), + ItemList.Electric_Piston_ZPM.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 2 }, + new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 }, + new Object[] { OrePrefixes.circuit.get(Materials.Elite), 8 }, + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 6)) + .itemOutputs(ItemList.Robot_Arm_ZPM.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 1152), Materials.Lubricant.getFluid(750)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // UV Robot Arm + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Robot_Arm_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.gear, Materials.Neutronium, 1), + GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 3), + ItemList.Electric_Motor_UV.get(2), + ItemList.Electric_Piston_UV.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 2 }, + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, + new Object[] { OrePrefixes.circuit.get(Materials.Master), 8 }, + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 6)) + .itemOutputs(ItemList.Robot_Arm_UV.get(1)) + .fluidInputs( + Materials.Naquadria.getMolten(1296), + new FluidStack(solderIndalloy, 2304), + Materials.Lubricant.getFluid(2000)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } // Emitters - GT_Values.RA.addAssemblylineRecipe( - ItemList.Emitter_IV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.HSSS, 1L), - ItemList.Electric_Motor_LuV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.stick, LuVMat, 8L), - ItemList.QuantumStar.get(1, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 }, - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 7L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 576) }, - ItemList.Emitter_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Emitter_LuV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1L), - ItemList.Electric_Motor_ZPM.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmiridium, 8L), - ItemList.QuantumStar.get(2, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 7L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 1152) }, - ItemList.Emitter_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Emitter_ZPM.get(1, new Object() {}), - 288000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1L), - ItemList.Electric_Motor_UV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Neutronium, 8L), - ItemList.Gravistar.get(4, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 4 }, - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 7L) }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 2304) }, - ItemList.Emitter_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); + { + // LuV Emitter + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Emitter_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.HSSS, 1), + ItemList.Electric_Motor_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, LuVMat, 8), + ItemList.QuantumStar.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 }, + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 7)) + .itemOutputs(ItemList.Emitter_LuV.get(1)).fluidInputs(new FluidStack(solderIndalloy, 576)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_IV).addTo(AssemblyLine); + + // ZPM Emitter + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Emitter_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1), + ItemList.Electric_Motor_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmiridium, 8), + ItemList.QuantumStar.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 7)) + .itemOutputs(ItemList.Emitter_ZPM.get(1)).fluidInputs(new FluidStack(solderIndalloy, 1152)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // UV Emitter + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Emitter_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1), + ItemList.Electric_Motor_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Neutronium, 8), + ItemList.Gravistar.get(4), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 4 }, + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 7)) + .itemOutputs(ItemList.Emitter_UV.get(1)) + .fluidInputs(Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 2304)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } // Sensors - GT_Values.RA.addAssemblylineRecipe( - ItemList.Sensor_IV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.HSSS, 1L), - ItemList.Electric_Motor_LuV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, LuVMat, 8L), - ItemList.QuantumStar.get(1, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 }, - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 7L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 576) }, - ItemList.Sensor_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Sensor_LuV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1L), - ItemList.Electric_Motor_ZPM.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmiridium, 8L), - ItemList.QuantumStar.get(2, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 7L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 1152) }, - ItemList.Sensor_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Sensor_ZPM.get(1, new Object() {}), - 288000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1L), - ItemList.Electric_Motor_UV.get(1, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 8L), - ItemList.Gravistar.get(4, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 4 }, - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 7L) }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 2304) }, - ItemList.Sensor_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); + { + // LuV Sensor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Sensor_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.HSSS, 1), + ItemList.Electric_Motor_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, LuVMat, 8), + ItemList.QuantumStar.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 }, + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gallium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 7)) + .itemOutputs(ItemList.Sensor_LuV.get(1)).fluidInputs(new FluidStack(solderIndalloy, 576)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_IV).addTo(AssemblyLine); + + // ZPM Sensor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Sensor_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1), + ItemList.Electric_Motor_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmiridium, 8), + ItemList.QuantumStar.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Trinium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 7)) + .itemOutputs(ItemList.Sensor_ZPM.get(1)).fluidInputs(new FluidStack(solderIndalloy, 1152)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // UV Sensor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Sensor_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1), + ItemList.Electric_Motor_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 8), + ItemList.Gravistar.get(4), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 4 }, + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Naquadria, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 7)) + .itemOutputs(ItemList.Sensor_UV.get(1)) + .fluidInputs(Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 2304)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } // Field Generators - GT_Values.RA.addAssemblylineRecipe( - ItemList.Field_Generator_IV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.HSSS, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 6L), - ItemList.QuantumStar.get(2, new Object() {}), ItemList.Emitter_LuV.get(4, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 8L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 576) }, - ItemList.Field_Generator_LuV.get(1), - 600, - (int) TierEU.RECIPE_IV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Field_Generator_LuV.get(1, new Object() {}), - 144000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 6L), - ItemList.QuantumStar.get(2, new Object() {}), ItemList.Emitter_ZPM.get(4, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 4 }, - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 8L) }, - new FluidStack[] { new FluidStack(solderIndalloy, 1152) }, - ItemList.Field_Generator_ZPM.get(1), - 600, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Field_Generator_ZPM.get(1, new Object() {}), - 288000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 6L), - ItemList.Gravistar.get(2, new Object() {}), ItemList.Emitter_UV.get(4, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 4 }, - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64L), - GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 8L) }, - new FluidStack[] { Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 2304) }, - ItemList.Field_Generator_UV.get(1), - 600, - (int) TierEU.RECIPE_ZPM); - - // Energy Hatches Luv-UV - GT_Values.RA.addAssemblylineRecipe( - ItemList.Hatch_Energy_IV.get(1, new Object() {}), - 72000, - new Object[] { ItemList.Hull_LuV.get(1L, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 2L), - ItemList.Circuit_Chip_UHPIC.get(2L, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Master), 2 }, - ItemList.LuV_Coil.get(2L, new Object() {}), - new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_1.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_1.get(1, new Object() {}) }, - ItemList.Electric_Pump_LuV.get(1L, new Object() {}) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("ic2coolant"), 2000), - new FluidStack(solderIndalloy, 720) }, - ItemList.Hatch_Energy_LuV.get(1), - 400, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Hatch_Energy_LuV.get(1, new Object() {}), - 144000, - new Object[] { ItemList.Hull_ZPM.get(1L, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorZPM, 2L), - ItemList.Circuit_Chip_NPIC.get(2L, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 2 }, - ItemList.ZPM_Coil.get(2L, new Object() {}), - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - ItemList.Electric_Pump_ZPM.get(1L, new Object() {}) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("ic2coolant"), 4000), - new FluidStack(solderIndalloy, 1440) }, - ItemList.Hatch_Energy_ZPM.get(1), - 600, - (int) TierEU.RECIPE_ZPM); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Hatch_Energy_ZPM.get(1, new Object() {}), - 288000, - new Object[] { ItemList.Hull_UV.get(1L, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUV, 2L), - ItemList.Circuit_Chip_PPIC.get(2L, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 2 }, - ItemList.UV_Coil.get(2L, new Object() {}), - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - ItemList.Electric_Pump_UV.get(1L, new Object() {}) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("ic2coolant"), 8000), - new FluidStack(solderIndalloy, 2880) }, - ItemList.Hatch_Energy_UV.get(1), - 800, - (int) TierEU.RECIPE_UV); - - // Dynamo Hatches Luv-UV - GT_Values.RA.addAssemblylineRecipe( - ItemList.Hatch_Dynamo_IV.get(1, new Object() {}), - 72000, - new Object[] { ItemList.Hull_LuV.get(1L, new Object() {}), - GT_OreDictUnificator.get( - OrePrefixes.spring, - Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, - 2L), - ItemList.Circuit_Chip_UHPIC.get(2L, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Master), 2 }, - ItemList.LuV_Coil.get(2L, new Object() {}), - new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_1.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_3.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_1.get(1, new Object() {}) }, - ItemList.Electric_Pump_LuV.get(1L, new Object() {}) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("ic2coolant"), 2000), - new FluidStack(solderIndalloy, 720) }, - ItemList.Hatch_Dynamo_LuV.get(1), - 400, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Hatch_Dynamo_LuV.get(1, new Object() {}), - 144000, - new Object[] { ItemList.Hull_ZPM.get(1L, new Object() {}), - GT_OreDictUnificator - .get(OrePrefixes.spring, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 4L), - ItemList.Circuit_Chip_NPIC.get(2L, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 2 }, - ItemList.ZPM_Coil.get(2L, new Object() {}), - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - ItemList.Electric_Pump_ZPM.get(1L, new Object() {}) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("ic2coolant"), 4000), - new FluidStack(solderIndalloy, 1440) }, - ItemList.Hatch_Dynamo_ZPM.get(1), - 600, - (int) TierEU.RECIPE_ZPM); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Hatch_Dynamo_ZPM.get(1, new Object() {}), - 288000, - new Object[] { ItemList.Hull_UV.get(1L, new Object() {}), - GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Longasssuperconductornameforuvwire, 4L), - ItemList.Circuit_Chip_PPIC.get(2L, new Object() {}), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 2 }, - ItemList.UV_Coil.get(2L, new Object() {}), - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_NaK_6.get(1, new Object() {}), - ItemList.Reactor_Coolant_Sp_2.get(1, new Object() {}) }, - ItemList.Electric_Pump_UV.get(1L, new Object() {}) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("ic2coolant"), 8000), - new FluidStack(solderIndalloy, 2880) }, - ItemList.Hatch_Dynamo_UV.get(1), - 800, - (int) TierEU.RECIPE_UV); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Energy_LapotronicOrb2.get(1), - 288000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Europium, 16L), + { + // LuV Field Generator + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Field_Generator_IV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.HSSS, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSS, 6), + ItemList.QuantumStar.get(2), + ItemList.Emitter_LuV.get(4), + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 4 }, + GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 8)) + .itemOutputs(ItemList.Field_Generator_LuV.get(1)).fluidInputs(new FluidStack(solderIndalloy, 576)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_IV).addTo(AssemblyLine); + + // ZPM Field Generator + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Field_Generator_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NaquadahAlloy, 6), + ItemList.QuantumStar.get(2), + ItemList.Emitter_ZPM.get(4), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 4 }, + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Europium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 8)) + .itemOutputs(ItemList.Field_Generator_ZPM.get(1)).fluidInputs(new FluidStack(solderIndalloy, 1152)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // UV Field Generator + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Field_Generator_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 6), + ItemList.Gravistar.get(2), + ItemList.Emitter_UV.get(4), + new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 4 }, + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Americium, 64), + GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NaquadahAlloy, 8)) + .itemOutputs(ItemList.Field_Generator_UV.get(1)) + .fluidInputs(Materials.Naquadria.getMolten(1296), new FluidStack(solderIndalloy, 2304)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } + + // Energy Hatches + { + // LuV Energy Hatch + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Hatch_Energy_IV.get(1)) + .metadata(RESEARCH_TIME, 60 * MINUTES) + .itemInputs( + ItemList.Hull_LuV.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 2), + ItemList.Circuit_Chip_UHPIC.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.Master), 2 }, + ItemList.LuV_Coil.get(2), + new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1), + ItemList.Reactor_Coolant_NaK_3.get(1), ItemList.Reactor_Coolant_Sp_1.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1), + ItemList.Reactor_Coolant_NaK_3.get(1), ItemList.Reactor_Coolant_Sp_1.get(1) }, + ItemList.Electric_Pump_LuV.get(1)) + .itemOutputs(ItemList.Hatch_Energy_LuV.get(1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 2000), + new FluidStack(solderIndalloy, 720)) + .noFluidOutputs().duration(20 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // ZPM Energy Hatch + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Hatch_Energy_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Hull_ZPM.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorZPM, 2), + ItemList.Circuit_Chip_NPIC.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 2 }, + ItemList.ZPM_Coil.get(2), + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + ItemList.Electric_Pump_ZPM.get(1)) + .itemOutputs(ItemList.Hatch_Energy_ZPM.get(1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 4000), + new FluidStack(solderIndalloy, 1440)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + + // UV Energy Hatch + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Hatch_Energy_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + ItemList.Hull_UV.get(1), + GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUV, 2), + ItemList.Circuit_Chip_PPIC.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 2 }, + ItemList.UV_Coil.get(2), + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + ItemList.Electric_Pump_UV.get(1)) + .itemOutputs(ItemList.Hatch_Energy_UV.get(1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 8000), + new FluidStack(solderIndalloy, 2880)) + .noFluidOutputs().duration(40 * SECONDS).eut((int) TierEU.RECIPE_UV).addTo(AssemblyLine); + } + + // Dynamo Hatches + { + // LuV Dynamo Hatch + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Hatch_Dynamo_IV.get(1)) + .metadata(RESEARCH_TIME, 60 * MINUTES) + .itemInputs( + ItemList.Hull_LuV.get(1), + GT_OreDictUnificator.get( + OrePrefixes.spring, + Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, + 2), + ItemList.Circuit_Chip_UHPIC.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.Master), 2 }, + ItemList.LuV_Coil.get(2), + new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1), + ItemList.Reactor_Coolant_NaK_3.get(1), ItemList.Reactor_Coolant_Sp_1.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_3.get(1), + ItemList.Reactor_Coolant_NaK_3.get(1), ItemList.Reactor_Coolant_Sp_1.get(1) }, + ItemList.Electric_Pump_LuV.get(1)) + .itemOutputs(ItemList.Hatch_Dynamo_LuV.get(1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 2000), + new FluidStack(solderIndalloy, 720)) + .noFluidOutputs().duration(20 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // ZPM Dynamo Hatch + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Hatch_Dynamo_LuV.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Hull_ZPM.get(1), + GT_OreDictUnificator + .get(OrePrefixes.spring, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 4), + ItemList.Circuit_Chip_NPIC.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 2 }, + ItemList.ZPM_Coil.get(2), + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + ItemList.Electric_Pump_ZPM.get(1)) + .itemOutputs(ItemList.Hatch_Dynamo_ZPM.get(1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 4000), + new FluidStack(solderIndalloy, 1440)) + .noFluidOutputs().duration(30 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + + // UV Dynamo Hatch + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Hatch_Dynamo_ZPM.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + ItemList.Hull_UV.get(1), + GT_OreDictUnificator + .get(OrePrefixes.spring, Materials.Longasssuperconductornameforuvwire, 4), + ItemList.Circuit_Chip_PPIC.get(2), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 2 }, + ItemList.UV_Coil.get(2), + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + new ItemStack[] { ItemList.Reactor_Coolant_He_6.get(1), + ItemList.Reactor_Coolant_NaK_6.get(1), ItemList.Reactor_Coolant_Sp_2.get(1) }, + ItemList.Electric_Pump_UV.get(1)) + .itemOutputs(ItemList.Hatch_Dynamo_UV.get(1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 8000), + new FluidStack(solderIndalloy, 2880)) + .noFluidOutputs().duration(40 * SECONDS).eut((int) TierEU.RECIPE_UV).addTo(AssemblyLine); + } + + // Fusion Controller + { + // mkI + GT_Values.RA.stdBuilder() + .metadata( + RESEARCH_ITEM, + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Casing_Fusion_Coil.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Osmiridium, 4), + ItemList.Field_Generator_LuV.get(2), + ItemList.Circuit_Wafer_UHPIC.get(32), + GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 32)) + .itemOutputs(ItemList.FusionComputer_LuV.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 2880), Materials.VanadiumGallium.getMolten(1152)) + .noFluidOutputs().duration(50 * SECONDS).eut((int) TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // mkII + GT_Values.RA.stdBuilder() + .metadata(RESEARCH_ITEM, GT_OreDictUnificator.get(OrePrefixes.block, Materials.Europium, 1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + ItemList.Casing_Fusion_Coil.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Europium, 4), + ItemList.Field_Generator_ZPM.get(2), + ItemList.Circuit_Wafer_PPIC.get(48), + GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorZPM, 32)) + .itemOutputs(ItemList.FusionComputer_ZPMV.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 2880), Materials.NiobiumTitanium.getMolten(1152)) + .noFluidOutputs().duration(50 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(AssemblyLine); + + // mkIII + GT_Values.RA.stdBuilder() + .metadata(RESEARCH_ITEM, GT_OreDictUnificator.get(OrePrefixes.block, Materials.Americium, 1)) + .metadata(RESEARCH_TIME, 6 * HOURS) + .itemInputs( + ItemList.Casing_Fusion_Coil.get(1), + new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Americium, 4), + ItemList.Field_Generator_UV.get(2), + ItemList.Circuit_Wafer_QPIC.get(64), + GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUV, 32)) + .itemOutputs(ItemList.FusionComputer_UV.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 2880), Materials.ElectrumFlux.getMolten(1152)) + .noFluidOutputs().duration(50 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(AssemblyLine); + } + // Energy Module + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Energy_LapotronicOrb2.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Europium, 16), new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, - ItemList.Energy_LapotronicOrb2.get(8L), ItemList.Field_Generator_LuV.get(2), - ItemList.Circuit_Wafer_SoC2.get(64), ItemList.Circuit_Wafer_SoC2.get(64), + ItemList.Energy_LapotronicOrb2.get(8), + ItemList.Field_Generator_LuV.get(2), + ItemList.Circuit_Wafer_SoC2.get(64), + ItemList.Circuit_Wafer_SoC2.get(64), ItemList.Circuit_Parts_DiodeASMD.get(8), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 32) }, - new FluidStack[] { new FluidStack(solderIndalloy, 2880), - new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000) }, - ItemList.Energy_Module.get(1), - 2000, - (int) TierEU.RECIPE_ZPM); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Energy_Module.get(1), - 288000, - new Object[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Americium, 32L), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - ItemList.Energy_Module.get(8L), ItemList.Field_Generator_ZPM.get(2), - ItemList.Circuit_Wafer_HPIC.get(64), ItemList.Circuit_Wafer_HPIC.get(64), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 32)) + .itemOutputs(ItemList.Energy_Module.get(1)) + .fluidInputs( + new FluidStack(solderIndalloy, 2880), + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000)) + .noFluidOutputs().duration(1 * MINUTES + 40 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(AssemblyLine); + + // Energy Cluster + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Energy_Module.get(1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Americium, 32), + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 }, + ItemList.Energy_Module.get(8), + ItemList.Field_Generator_ZPM.get(2), + ItemList.Circuit_Wafer_HPIC.get(64), + ItemList.Circuit_Wafer_HPIC.get(64), ItemList.Circuit_Parts_DiodeASMD.get(16), - GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.NaquadahAlloy, 32), }, - new FluidStack[] { new FluidStack(solderIndalloy, 2880), - new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000) }, - ItemList.Energy_Cluster.get(1), - 2000, - 200000); - - GT_Values.RA.addAssemblylineRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 1), - 144000, - new Object[] { ItemList.Casing_Fusion_Coil.get(1), - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 }, - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.NaquadahAlloy, 4L), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Osmiridium, 4L), - ItemList.Field_Generator_LuV.get(2), ItemList.Circuit_Wafer_UHPIC.get(32), - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 32), }, - new FluidStack[] { new FluidStack(solderIndalloy, 2880), Materials.VanadiumGallium.getMolten(1152L), }, - ItemList.FusionComputer_LuV.get(1), - 1000, - (int) TierEU.RECIPE_LuV); - - GT_Values.RA.addAssemblylineRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Europium, 1), - 288000, - new Object[] { ItemList.Casing_Fusion_Coil.get(1), - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 }, - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Europium, 4L), - ItemList.Field_Generator_ZPM.get(2), ItemList.Circuit_Wafer_PPIC.get(48), - GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorZPM, 32), }, - new FluidStack[] { new FluidStack(solderIndalloy, 2880), Materials.NiobiumTitanium.getMolten(1152L), }, - ItemList.FusionComputer_ZPMV.get(1), - 1000, - 60000); - - GT_Values.RA.addAssemblylineRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Americium, 1), - 432000, - new Object[] { ItemList.Casing_Fusion_Coil.get(1), - new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, - new Object[] { OrePrefixes.circuit.get(Materials.Infinite), 1 }, - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Americium, 4L), - ItemList.Field_Generator_UV.get(2), ItemList.Circuit_Wafer_QPIC.get(64), - GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUV, 32), }, - new FluidStack[] { new FluidStack(solderIndalloy, 2880), Materials.ElectrumFlux.getMolten(1152L), }, - ItemList.FusionComputer_UV.get(1), - 1000, - 90000); - - GT_Values.RA.addAssemblylineRecipe( - ItemList.Machine_IV_OreWasher.get(1), - 432000, - new Object[] { ItemList.Hull_MAX.get(1L), ItemList.Electric_Motor_UHV.get(32L), - ItemList.Electric_Piston_UHV.get(8L), ItemList.Electric_Pump_UHV.get(16L), - ItemList.Conveyor_Module_UHV.get(8L), ItemList.Robot_Arm_UHV.get(8L), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.NaquadahAlloy, 32)) + .itemOutputs(ItemList.Energy_Cluster.get(1)) + .fluidInputs( + new FluidStack(solderIndalloy, 2880), + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000)) + .noFluidOutputs().duration(1 * MINUTES + 40 * SECONDS).eut(200000).addTo(AssemblyLine); + + // Integrated Ore Factory + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Machine_IV_OreWasher.get(1)) + .metadata(RESEARCH_TIME, 6 * HOURS) + .itemInputs( + ItemList.Hull_MAX.get(1), + ItemList.Electric_Motor_UHV.get(32), + ItemList.Electric_Piston_UHV.get(8), + ItemList.Electric_Pump_UHV.get(16), + ItemList.Conveyor_Module_UHV.get(8), + ItemList.Robot_Arm_UHV.get(8), new Object[] { OrePrefixes.circuit.get(Materials.Bio), 4 }, new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Duranium, 32), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.NaquadahAlloy, 32) }, GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Polybenzimidazole, 64), - new ItemStack[] { ItemList.Component_Grinder_Tungsten.get(64L), - ItemList.Component_Grinder_Diamond.get(64L) }, + new ItemStack[] { ItemList.Component_Grinder_Tungsten.get(64), + ItemList.Component_Grinder_Diamond.get(64) }, GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.StainlessSteel, 32), - GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Chrome, 16) }, - new FluidStack[] { new FluidStack(solderIndalloy, 2880), Materials.Naquadria.getMolten(1440) }, - ItemList.Ore_Processor.get(1), - 1200, - 900000); + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Chrome, 16)) + .itemOutputs(ItemList.Ore_Processor.get(1)) + .fluidInputs(new FluidStack(solderIndalloy, 2880), Materials.Naquadria.getMolten(1440)).noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_UV).addTo(AssemblyLine); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/AutoclaveRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AutoclaveRecipes.java index 1ef911c448..99268da1bf 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AutoclaveRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AutoclaveRecipes.java @@ -1,191 +1,138 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.AppliedEnergistics2; import static gregtech.api.util.GT_ModHandler.getModItem; - -import net.minecraft.item.ItemStack; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; +import static gregtech.api.util.GT_RecipeBuilder.*; import gregtech.api.enums.*; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class AutoclaveRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addAutoclaveRecipe( - ItemList.IC2_Energium_Dust.get(9L), - Materials.EnergeticAlloy.getMolten(288), - ItemList.IC2_EnergyCrystal.get(1L), - 10000, - 600, - 256); - GT_Values.RA.addAutoclaveRecipe( - ItemList.IC2_Energium_Dust.get(9L), - Materials.ConductiveIron.getMolten(576), - ItemList.IC2_EnergyCrystal.get(1L), - 10000, - 1200, - 256); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 0), - Materials.Water.getFluid(200L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 10), - 8000, - 2000, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 600), - Materials.Water.getFluid(200L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 11), - 8000, - 2000, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 1200), - Materials.Water.getFluid(200L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 12), - 8000, - 2000, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 0), - GT_ModHandler.getDistilledWater(100L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 10), - 9000, - 1000, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 600), - GT_ModHandler.getDistilledWater(100L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 11), - 9000, - 1000, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 1200), - GT_ModHandler.getDistilledWater(100L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 12), - 9000, - 1000, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 0), - Materials.Void.getMolten(36L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 10), - 10000, - 500, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 600), - Materials.Void.getMolten(36L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 11), - 10000, - 500, - 24); - GT_Values.RA.addAutoclaveRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "item.ItemCrystalSeed", 1L, 1200), - Materials.Void.getMolten(36L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 12), - 10000, - 500, - 24); - GT_Values.RA.addAutoclaveRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 32), - Materials.Polybenzimidazole.getMolten(36L), - GT_ModHandler.getIC2Item("carbonFiber", 64L), - 10000, - 150, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addAutoclaveRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64), - Materials.Epoxid.getMolten(144L), - GT_ModHandler.getIC2Item("carbonFiber", 64L), - 10000, - 300, - (int) TierEU.RECIPE_HV); - GT_Values.RA.addAutoclaveRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64), - Materials.Polytetrafluoroethylene.getMolten(288L), - GT_ModHandler.getIC2Item("carbonFiber", 32L), - 10000, - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addAutoclaveRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64), - Materials.Plastic.getMolten(576L), - GT_ModHandler.getIC2Item("carbonFiber", 16L), - 10000, - 600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addAutoclaveRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherStar, 1), - Materials.UUMatter.getFluid(576L), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1), - 3333, - 72000, - (int) TierEU.RECIPE_HV); - - GT_Values.RA.addAutoclaveRecipe( - GT_OreDictUnificator.get(ItemList.QuantumStar.get(1L)), - Materials.Neutronium.getMolten(288), - ItemList.Gravistar.get(1L), - 10000, - 480, - (int) TierEU.RECIPE_IV); - GT_Values.RA.addAutoclaveRecipe( - GT_OreDictUnificator.get(ItemList.Gravistar.get(16L)), - Materials.Infinity.getMolten(288), - ItemList.NuclearStar.get(1L), - 10000, - 480, - 7864320); - - // SiO2 ->Quartzite - GT_Values.RA.addAutoclaveRecipe( - Materials.SiliconDioxide.getDust(1), - Materials.Water.getFluid(200L), - Materials.Quartzite.getGems(1), - 750, - 2000, - 24); - GT_Values.RA.addAutoclaveRecipe( - Materials.SiliconDioxide.getDust(1), - GT_ModHandler.getDistilledWater(100L), - Materials.Quartzite.getGems(1), - 1000, - 1500, - 24); - GT_Values.RA.addAutoclaveRecipe( - Materials.SiliconDioxide.getDust(1), - Materials.Void.getMolten(36L), - Materials.Quartzite.getGems(1), - 10000, - 1000, - 24); - - GT_Values.RA.addAutoclave4Recipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000L), - GT_Values.NF, - new ItemStack[] { GT_Values.NI, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3) }, - new int[] { 0, 7500 }, - 1200, - (int) TierEU.RECIPE_LV, - false); - GT_Values.RA.addAutoclave4Recipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getDistilledWater(1000L), - GT_Values.NF, - new ItemStack[] { GT_Values.NI, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3) }, - new int[] { 0, 9000 }, - 1200, - (int) TierEU.RECIPE_LV, - false); + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Energium_Dust.get(9L)) + .itemOutputs(ItemList.IC2_EnergyCrystal.get(1L)).outputChances(10000) + .fluidInputs(Materials.EnergeticAlloy.getMolten(288)).noFluidOutputs().duration(30 * SECONDS).eut(256) + .addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Energium_Dust.get(9L)) + .itemOutputs(ItemList.IC2_EnergyCrystal.get(1L)).outputChances(10000) + .fluidInputs(Materials.ConductiveIron.getMolten(576)).noFluidOutputs().duration(60 * SECONDS).eut(256) + .addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 0)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 10)) + .outputChances(8000).fluidInputs(Materials.Water.getFluid(200L)).noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 600)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 11)) + .outputChances(8000).fluidInputs(Materials.Water.getFluid(200L)).noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 1200)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 12)) + .outputChances(8000).fluidInputs(Materials.Water.getFluid(200L)).noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 0)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 10)) + .outputChances(9000).fluidInputs(GT_ModHandler.getDistilledWater(100L)).noFluidOutputs() + .duration(50 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 600)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 11)) + .outputChances(9000).fluidInputs(GT_ModHandler.getDistilledWater(100L)).noFluidOutputs() + .duration(50 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 1200)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 12)) + .outputChances(9000).fluidInputs(GT_ModHandler.getDistilledWater(100L)).noFluidOutputs() + .duration(50 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 0)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 10)) + .outputChances(10000).fluidInputs(Materials.Void.getMolten(36L)).noFluidOutputs().duration(25 * SECONDS) + .eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 600)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 11)) + .outputChances(10000).fluidInputs(Materials.Void.getMolten(36L)).noFluidOutputs().duration(25 * SECONDS) + .eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemCrystalSeed", 1L, 1200)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 12)) + .outputChances(10000).fluidInputs(Materials.Void.getMolten(36L)).noFluidOutputs().duration(25 * SECONDS) + .eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 32)) + .itemOutputs(GT_ModHandler.getIC2Item("carbonFiber", 64L)).outputChances(10000) + .fluidInputs(Materials.Polybenzimidazole.getMolten(36L)).noFluidOutputs() + .duration(7 * SECONDS + 10 * TICKS).eut((int) TierEU.RECIPE_EV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64)) + .itemOutputs(GT_ModHandler.getIC2Item("carbonFiber", 64L)).outputChances(10000) + .fluidInputs(Materials.Epoxid.getMolten(144L)).noFluidOutputs().duration(15 * SECONDS) + .eut((int) TierEU.RECIPE_HV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64)) + .itemOutputs(GT_ModHandler.getIC2Item("carbonFiber", 32L)).outputChances(10000) + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288L)).noFluidOutputs().duration(20 * SECONDS) + .eut((int) TierEU.RECIPE_MV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 64)) + .itemOutputs(GT_ModHandler.getIC2Item("carbonFiber", 16L)).outputChances(10000) + .fluidInputs(Materials.Plastic.getMolten(576L)).noFluidOutputs().duration(30 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherStar, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1)).outputChances(3333) + .fluidInputs(Materials.UUMatter.getFluid(576L)).noFluidOutputs().duration(60 * MINUTES) + .eut((int) TierEU.RECIPE_HV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(ItemList.QuantumStar.get(1L))) + .itemOutputs(ItemList.Gravistar.get(1L)).outputChances(10000) + .fluidInputs(Materials.Neutronium.getMolten(288)).noFluidOutputs().duration(24 * SECONDS) + .eut((int) TierEU.RECIPE_IV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(ItemList.Gravistar.get(16L))) + .itemOutputs(ItemList.NuclearStar.get(1L)).outputChances(10000) + .fluidInputs(Materials.Infinity.getMolten(288)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_UEV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SiliconDioxide.getDust(1)) + .itemOutputs(Materials.Quartzite.getGems(1)).outputChances(750) + .fluidInputs(Materials.Water.getFluid(200L)).noFluidOutputs().duration(1 * MINUTES + 40 * SECONDS) + .eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SiliconDioxide.getDust(1)) + .itemOutputs(Materials.Quartzite.getGems(1)).outputChances(1000) + .fluidInputs(GT_ModHandler.getDistilledWater(100L)).noFluidOutputs() + .duration(1 * MINUTES + 15 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SiliconDioxide.getDust(1)) + .itemOutputs(Materials.Quartzite.getGems(1)).outputChances(10000) + .fluidInputs(Materials.Void.getMolten(36L)).noFluidOutputs().duration(50 * SECONDS).eut(24) + .addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3)) + .outputChances(7500).fluidInputs(Materials.Water.getFluid(1000L)).noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAutoclaveRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3)) + .outputChances(9000).fluidInputs(GT_ModHandler.getDistilledWater(1000L)).noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sAutoclaveRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/BenderRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/BenderRecipes.java index 614632bb42..6ee45ad7a2 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/BenderRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/BenderRecipes.java @@ -1,5 +1,9 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +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; @@ -12,204 +16,220 @@ public class BenderRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Aluminium, 20L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 48L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 32L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Bronze, 32L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 24L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 16L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 12L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 9L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iridium, 6L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmium, 3L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmiridium, 2L), - (GT_Utility.getIntegratedCircuit(10)), - ItemList.RC_Rail_Standard.get(64L), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Obsidian, 24L), - (GT_Utility.getIntegratedCircuit(11)), - ItemList.RC_Rail_Reinforced.get(64L), - 600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 12L), - (GT_Utility.getIntegratedCircuit(11)), - ItemList.RC_Rail_Reinforced.get(64L), - 600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 6L), - (GT_Utility.getIntegratedCircuit(11)), - ItemList.RC_Rail_Reinforced.get(64L), - 600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iridium, 3L), - (GT_Utility.getIntegratedCircuit(11)), - ItemList.RC_Rail_Reinforced.get(64L), - 600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmium, 1L), - (GT_Utility.getIntegratedCircuit(11)), - ItemList.RC_Rail_Reinforced.get(64L), - 600, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Aluminium, 20L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 48L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 24L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Bronze, 32L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 16L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 12L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 8), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 6L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iridium, 4L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmium, 2L), - (GT_Utility.getIntegratedCircuit(12)), - ItemList.RC_Rebar.get(64L), - 200, - 15); - - GT_Values.RA.addBenderRecipe( - ItemList.IC2_Mixed_Metal_Ingot.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Advanced, 1L), - 100, - 8); - - // cell, bucket, food can - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 12L), - ItemList.Cell_Empty.get(6L), - 1200, - 8); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 12L), - ItemList.Cell_Empty.get(12L), - 1200, - 8); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Polytetrafluoroethylene, 12L), - ItemList.Cell_Empty.get(48L), - 1200, - 8); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 12L), - new ItemStack(Items.bucket, 4, 0), - 800, - 4); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 12L), - new ItemStack(Items.bucket, 4, 0), - 800, - 4); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Iron, 2L), - GT_ModHandler.getIC2Item("fuelRod", 1L), - 100, - 8); - GT_Values.RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Tin, 1L), - ItemList.IC2_Food_Can_Empty.get(1L), - 20, - (int) TierEU.RECIPE_HV); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Aluminium, 20L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 48L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 32L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Bronze, 32L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 24L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 16L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 12L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 9L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iridium, 6L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmium, 3L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmiridium, 2L), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(ItemList.RC_Rail_Standard.get(64L)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Obsidian, 24L), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(ItemList.RC_Rail_Reinforced.get(64L)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 12L), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(ItemList.RC_Rail_Reinforced.get(64L)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 6L), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(ItemList.RC_Rail_Reinforced.get(64L)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iridium, 3L), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(ItemList.RC_Rail_Reinforced.get(64L)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmium, 1L), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(ItemList.RC_Rail_Reinforced.get(64L)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Aluminium, 20L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 48L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 24L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Bronze, 32L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 16L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 12L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 8), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 6L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iridium, 4L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Osmium, 2L), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(ItemList.RC_Rebar.get(64L)).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(200).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Mixed_Metal_Ingot.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Advanced, 1L)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 12L)) + .itemOutputs(ItemList.Cell_Empty.get(6L)).noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(8) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 12L)) + .itemOutputs(ItemList.Cell_Empty.get(12L)).noFluidInputs().noFluidOutputs().duration(60 * SECONDS) + .eut(8).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Polytetrafluoroethylene, 12L)) + .itemOutputs(ItemList.Cell_Empty.get(48L)).noFluidInputs().noFluidOutputs().duration(60 * SECONDS) + .eut(8).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 12L)) + .itemOutputs(new ItemStack(Items.bucket, 4, 0)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(4).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 12L)) + .itemOutputs(new ItemStack(Items.bucket, 4, 0)).noFluidInputs().noFluidOutputs().duration(40 * SECONDS) + .eut(4).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Iron, 2L)) + .itemOutputs(GT_ModHandler.getIC2Item("fuelRod", 1L)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(8).addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.itemCasing, Materials.Tin, 1L)) + .itemOutputs(ItemList.IC2_Food_Can_Empty.get(1L)).noFluidInputs().noFluidOutputs().duration(20 * TICKS) + .eut((int) TierEU.RECIPE_HV).addTo(sBenderRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/BlastFurnaceRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/BlastFurnaceRecipes.java index 0d7d761880..906448ccc1 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/BlastFurnaceRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/BlastFurnaceRecipes.java @@ -1,15 +1,24 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isGTNHLanthanidLoaded; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isGTPPLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes; +import static gregtech.api.util.GT_RecipeBuilder.*; +import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; + +import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; +import mods.railcraft.common.items.RailcraftToolItems; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; +import org.apache.commons.lang3.ArrayUtils; + import gregtech.GT_Mod; import gregtech.api.enums.*; +import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -17,677 +26,541 @@ public class BlastFurnaceRecipes implements Runnable { @Override public void run() { + this.registerBlastFurnaceRecipes(); + this.registerPrimitiveBlastFurnaceRecipes(); + } - this.primitiveBlastFurnaceRecipes(); - - GT_Values.RA.addBlastRecipe( - Materials.Gypsum.getDust(8), - GT_Values.NI, - GT_Values.NF, - Materials.DilutedSulfuricAcid.getFluid(1500), - Materials.Quicklime.getDust(1), - GT_Values.NI, - 200, - (int) TierEU.RECIPE_HV, - 3200); + public void registerBlastFurnaceRecipes() { + GT_Values.RA.stdBuilder().itemInputs(Materials.Gypsum.getDust(8)).itemOutputs(Materials.Quicklime.getDust(1)) + .noFluidInputs().fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1500)).duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_HV).metadata(COIL_HEAT, 3200).addTo(sBlastRecipes); // Carbothermic Reduction // Depend on real amount except real ores int outputIngotAmount = GT_Mod.gregtechproxy.mMixedOreOnlyYieldsTwoThirdsOfPureOre ? 2 : 3; - GT_Values.RA.addBlastRecipe( - Materials.RoastedCopper.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Copper.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.RoastedAntimony.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Antimony.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.RoastedIron.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.RoastedNickel.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Nickel.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.RoastedZinc.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Zinc.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.RoastedCobalt.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Cobalt.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.RoastedArsenic.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Arsenic.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.RoastedLead.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Lead.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Malachite.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(3000), - Materials.Copper.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.Magnetite.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.YellowLimonite.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.BrownLimonite.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.BasalticMineralSand.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.GraniticMineralSand.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Cassiterite.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Tin.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.CassiteriteSand.getDust(2), - Materials.Carbon.getDust(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Tin.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.SiliconDioxide.getDust(3), - Materials.Carbon.getDust(2), - GT_Values.NF, - Materials.CarbonMonoxide.getGas(2000), - Materials.Silicon.getIngots(1), - Materials.Ash.getDustTiny(1), - 80, - (int) TierEU.RECIPE_MV, - 1200); + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedCopper.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Copper.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedAntimony.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Antimony.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedIron.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedNickel.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Nickel.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedZinc.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Zinc.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedCobalt.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Cobalt.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedArsenic.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Arsenic.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.RoastedLead.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Lead.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Malachite.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Copper.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(3000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Magnetite.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.YellowLimonite.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.BrownLimonite.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.BasalticMineralSand.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.GraniticMineralSand.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Cassiterite.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Tin.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CassiteriteSand.getDust(2), Materials.Carbon.getDust(1)) + .itemOutputs(Materials.Tin.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SiliconDioxide.getDust(3), Materials.Carbon.getDust(2)) + .itemOutputs(Materials.Silicon.getIngots(1), Materials.Ash.getDustTiny(1)).noFluidInputs() + .fluidOutputs(Materials.CarbonMonoxide.getGas(2000)).duration(4 * SECONDS).eut((int) TierEU.RECIPE_MV) + .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); if (GT_Mod.gregtechproxy.mMixedOreOnlyYieldsTwoThirdsOfPureOre) { + GT_Values.RA.stdBuilder().itemInputs(Materials.CupricOxide.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Copper.getIngots(1), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Malachite.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Copper.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(3000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.AntimonyTrioxide.getDust(5), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Antimony.getIngots(2), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(3000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.BandedIron.getDust(5), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Iron.getIngots(2), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Magnetite.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.YellowLimonite.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.BrownLimonite.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.BasalticMineralSand.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.GraniticMineralSand.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Iron.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Cassiterite.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Tin.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CassiteriteSand.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Tin.getIngots(outputIngotAmount), Materials.Ash.getDustTiny(2)) + .noFluidInputs().fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Garnierite.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Nickel.getIngots(1), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CobaltOxide.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Cobalt.getIngots(1), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.ArsenicTrioxide.getDust(5), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Arsenic.getIngots(2), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Massicot.getDust(2), Materials.Carbon.getDustSmall(4)) + .itemOutputs(Materials.Lead.getIngots(1), Materials.Ash.getDustTiny(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 32), + ItemList.GalliumArsenideCrystalSmallPart.get(1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Circuit_Silicon_Ingot.get(1)).noFluidInputs().noFluidOutputs() + .duration(7 * MINUTES + 30 * SECONDS).eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1784) + .addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 64), + ItemList.GalliumArsenideCrystalSmallPart.get(2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 8), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Circuit_Silicon_Ingot2.get(1)).fluidInputs(Materials.Nitrogen.getGas(8000)) + .noFluidOutputs().duration(10 * MINUTES).eut((int) TierEU.RECIPE_HV).metadata(COIL_HEAT, 2484) + .addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.SiliconSG, 16), + ItemList.GalliumArsenideCrystal.get(1), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Circuit_Silicon_Ingot3.get(1)).fluidInputs(Materials.Argon.getGas(8000)) + .noFluidOutputs().duration(12 * MINUTES + 30 * SECONDS).eut((int) TierEU.RECIPE_EV) + .metadata(COIL_HEAT, 4484).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.SiliconSG, 32), + ItemList.GalliumArsenideCrystal.get(2), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Europium, 2), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Circuit_Silicon_Ingot4.get(1)).fluidInputs(Materials.Radon.getGas(8000)) + .noFluidOutputs().duration(15 * MINUTES).eut((int) TierEU.RECIPE_IV).metadata(COIL_HEAT, 6484) + .addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.SiliconSG, 64), + ItemList.GalliumArsenideCrystal.get(4), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Americium, 4), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(ItemList.Circuit_Silicon_Ingot5.get(1)).fluidInputs(Materials.Radon.getGas(16000)) + .noFluidOutputs().duration(17 * MINUTES + 30 * SECONDS).eut((int) TierEU.RECIPE_LuV) + .metadata(COIL_HEAT, 9000).addTo(sBlastRecipes); + + // CaH2 + 2Si = CaSi2 + 2H + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calciumhydride, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CalciumDisilicide, 3)) + .noFluidInputs().fluidOutputs(Materials.Hydrogen.getGas(2000)).duration(15 * SECONDS) + .eut((int) TierEU.RECIPE_MV).metadata(COIL_HEAT, 1273).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUEVBase, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUEVBase, 1)) + .noFluidInputs().noFluidOutputs().duration(16 * MINUTES + 23 * SECONDS).eut((int) TierEU.RECIPE_UV) + .metadata(COIL_HEAT, 11800).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUEVBase, 1), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUEVBase, 1)) + .fluidInputs(Materials.Radon.getGas(1000)).noFluidOutputs() + .duration(7 * MINUTES + 22 * SECONDS + 7 * TICKS).eut((int) TierEU.RECIPE_UV) + .metadata(COIL_HEAT, 11800).addTo(sBlastRecipes); + + // 0.45 * 19660 = 8847 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUIVBase, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUIVBase, 1)) + .noFluidInputs().noFluidOutputs().duration(16 * MINUTES + 23 * SECONDS).eut((int) TierEU.RECIPE_UHV) + .metadata(COIL_HEAT, 12700).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUIVBase, 1), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUIVBase, 1)) + .fluidInputs(Materials.Radon.getGas(1000)).noFluidOutputs() + .duration(7 * MINUTES + 22 * SECONDS + 7 * TICKS).eut((int) TierEU.RECIPE_UHV) + .metadata(COIL_HEAT, 12700).addTo(sBlastRecipes); + + // 0.45 * 19660 = 8847 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUMVBase, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUMVBase, 1)) + .noFluidInputs().noFluidOutputs().duration(16 * MINUTES + 23 * SECONDS).eut((int) TierEU.RECIPE_UEV) + .metadata(COIL_HEAT, 13600).addTo(sBlastRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUMVBase, 1), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUMVBase, 1)) + .fluidInputs(Materials.Radon.getGas(1000)).noFluidOutputs() + .duration(7 * MINUTES + 22 * SECONDS + 7 * TICKS).eut((int) TierEU.RECIPE_UEV) + .metadata(COIL_HEAT, 13600).addTo(sBlastRecipes); + + // 0.45 * 19660 = 8847 + // CaO + 3C = CaC2 + CO + + GT_Values.RA.stdBuilder().itemInputs(Materials.Quicklime.getDust(2), Materials.Carbon.getDust(3)) + .itemOutputs(MaterialsKevlar.CalciumCarbide.getDust(3)).noFluidInputs() + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(30 * SECONDS) + .eut((int) TierEU.RECIPE_HV).metadata(COIL_HEAT, 2573).addTo(sBlastRecipes); + + // Ni + 3Al = NiAl3 + + GT_Values.RA.stdBuilder().itemInputs(Materials.Nickel.getDust(1), Materials.Aluminium.getDust(3)) + .itemOutputs(MaterialsKevlar.NickelAluminide.getIngots(4)).noFluidInputs().noFluidOutputs() + .duration(45 * SECONDS).eut((int) TierEU.RECIPE_HV).metadata(COIL_HEAT, 1688).addTo(sBlastRecipes); + + ItemStack[] tSiliconDioxide = new ItemStack[] { Materials.SiliconDioxide.getDust(3), + Materials.NetherQuartz.getDust(3), Materials.CertusQuartz.getDust(3), + Materials.Quartzite.getDust(6) }; + + // Roasting + + for (ItemStack silicon : tSiliconDioxide) { + GT_Values.RA.addBlastRecipe( + Materials.Chalcopyrite.getDust(1), + silicon, + Materials.Oxygen.getGas(3000), + Materials.SulfurDioxide.getGas(2000), + Materials.RoastedCopper.getDust(1), + Materials.Ferrosilite.getDust(5), + 120, + (int) TierEU.RECIPE_MV, + 1200); + } + GT_Values.RA.addBlastRecipe( - Materials.CupricOxide.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Copper.getIngots(1), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.Malachite.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(3000), - Materials.Copper.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.AntimonyTrioxide.getDust(5), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(3000), - Materials.Antimony.getIngots(2), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.BandedIron.getDust(5), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(2), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.Magnetite.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.YellowLimonite.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.BrownLimonite.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.BasalticMineralSand.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.GraniticMineralSand.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Iron.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, - (int) TierEU.RECIPE_MV, - 1200); - GT_Values.RA.addBlastRecipe( - Materials.Cassiterite.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Tin.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, + Materials.Tetrahedrite.getDust(1), + GT_Values.NI, + Materials.Oxygen.getGas(3000), + Materials.SulfurDioxide.getGas(2000), + Materials.RoastedCopper.getDust(1), + Materials.RoastedAntimony.getDustTiny(3), + 120, (int) TierEU.RECIPE_MV, 1200); + GT_Values.RA.addBlastRecipe( - Materials.CassiteriteSand.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Tin.getIngots(outputIngotAmount), - Materials.Ash.getDustTiny(2), - 240, + Materials.Pyrite.getDust(1), + GT_Values.NI, + Materials.Oxygen.getGas(3000), + Materials.SulfurDioxide.getGas(2000), + Materials.RoastedIron.getDust(1), + Materials.Ash.getDustTiny(1), + 120, (int) TierEU.RECIPE_MV, 1200); + GT_Values.RA.addBlastRecipe( - Materials.Garnierite.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Nickel.getIngots(1), - Materials.Ash.getDustTiny(2), - 240, + Materials.Pentlandite.getDust(1), + GT_Values.NI, + Materials.Oxygen.getGas(3000), + Materials.SulfurDioxide.getGas(1000), + Materials.RoastedNickel.getDust(1), + Materials.Ash.getDustTiny(1), + 120, (int) TierEU.RECIPE_MV, 1200); + GT_Values.RA.addBlastRecipe( - Materials.CobaltOxide.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Cobalt.getIngots(1), - Materials.Ash.getDustTiny(2), - 240, + Materials.Sphalerite.getDust(1), + GT_Values.NI, + Materials.Oxygen.getGas(3000), + Materials.SulfurDioxide.getGas(1000), + Materials.RoastedZinc.getDust(1), + Materials.Ash.getDustTiny(1), + 120, (int) TierEU.RECIPE_MV, 1200); + GT_Values.RA.addBlastRecipe( - Materials.ArsenicTrioxide.getDust(5), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Arsenic.getIngots(2), - Materials.Ash.getDustTiny(2), - 240, + Materials.Cobaltite.getDust(1), + GT_Values.NI, + Materials.Oxygen.getGas(3000), + Materials.SulfurDioxide.getGas(1000), + Materials.RoastedCobalt.getDust(1), + Materials.RoastedArsenic.getDust(1), + 120, (int) TierEU.RECIPE_MV, 1200); + GT_Values.RA.addBlastRecipe( - Materials.Massicot.getDust(2), - Materials.Carbon.getDustSmall(4), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Lead.getIngots(1), - Materials.Ash.getDustTiny(2), - 240, + Materials.Stibnite.getDust(1), + GT_Values.NI, + Materials.Oxygen.getGas(3000), + Materials.SulfurDioxide.getGas(1500), + Materials.RoastedAntimony.getDust(1), + Materials.Ash.getDustTiny(1), + 120, (int) TierEU.RECIPE_MV, 1200); - } - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 32), - ItemList.GalliumArsenideCrystalSmallPart.get(1L), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - ItemList.Circuit_Silicon_Ingot.get(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 9000, - (int) TierEU.RECIPE_MV, - 1784); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 64), - ItemList.GalliumArsenideCrystalSmallPart.get(2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 8), - GT_Utility.getIntegratedCircuit(3), - Materials.Nitrogen.getGas(8000), - GT_Values.NF, - ItemList.Circuit_Silicon_Ingot2.get(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 12000, - (int) TierEU.RECIPE_HV, - 2484); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.SiliconSG, 16), - ItemList.GalliumArsenideCrystal.get(1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1), - GT_Utility.getIntegratedCircuit(3), - Materials.Argon.getGas(8000), - GT_Values.NF, - ItemList.Circuit_Silicon_Ingot3.get(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 15000, - (int) TierEU.RECIPE_EV, - 4484); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.SiliconSG, 32), - ItemList.GalliumArsenideCrystal.get(2L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Europium, 2), - GT_Utility.getIntegratedCircuit(3), - Materials.Radon.getGas(8000), - null, - ItemList.Circuit_Silicon_Ingot4.get(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 18000, - (int) TierEU.RECIPE_IV, - 6484); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.SiliconSG, 64), - ItemList.GalliumArsenideCrystal.get(4L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Americium, 4), - GT_Utility.getIntegratedCircuit(3), - Materials.Radon.getGas(16000), - GT_Values.NF, - ItemList.Circuit_Silicon_Ingot5.get(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 21000, - (int) TierEU.RECIPE_LuV, - 9000); - - // CaH2 + 2Si = CaSi2 + 2H - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calciumhydride, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 2), - GT_Values.NF, - Materials.Hydrogen.getGas(2000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CalciumDisilicide, 3), - GT_Values.NI, - 300, - (int) TierEU.RECIPE_MV, - 1273); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUEVBase, 1L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUEVBase, 1L), - GT_Values.NI, - 19660, - (int) TierEU.RECIPE_UV, - 11800); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUEVBase, 1L), - GT_Utility.getIntegratedCircuit(11), - Materials.Radon.getGas(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUEVBase, 1L), - GT_Values.NI, - 8847, - (int) TierEU.RECIPE_UV, - 11800); // 0.45 * 19660 = 8847 - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUIVBase, 1L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUIVBase, 1L), - GT_Values.NI, - 19660, - (int) TierEU.RECIPE_UHV, - 12700); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUIVBase, 1L), - GT_Utility.getIntegratedCircuit(11), - Materials.Radon.getGas(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUIVBase, 1L), - GT_Values.NI, - 8847, - (int) TierEU.RECIPE_UHV, - 12700); // 0.45 * 19660 = 8847 - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUMVBase, 1L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUMVBase, 1L), - GT_Values.NI, - 19660, - (int) TierEU.RECIPE_UEV, - 13600); - - GT_Values.RA.addBlastRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUMVBase, 1L), - GT_Utility.getIntegratedCircuit(11), - Materials.Radon.getGas(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUMVBase, 1L), - GT_Values.NI, - 8847, - (int) TierEU.RECIPE_UEV, - 13600); // 0.45 * 19660 = 8847 - - // CaO + 3C = CaC2 + CO - GT_Values.RA.addBlastRecipe( - Materials.Quicklime.getDust(2), - Materials.Carbon.getDust(3), - GT_Values.NF, - Materials.CarbonMonoxide.getGas(1000), - MaterialsKevlar.CalciumCarbide.getDust(3), - GT_Values.NI, - 600, - (int) TierEU.RECIPE_HV, - 2573); - // Ni + 3Al = NiAl3 - GT_Values.RA.addBlastRecipe( - Materials.Nickel.getDust(1), - Materials.Aluminium.getDust(3), - GT_Values.NF, - GT_Values.NF, - MaterialsKevlar.NickelAluminide.getIngots(4), - GT_Values.NI, - 900, - (int) TierEU.RECIPE_HV, - 1688); - - ItemStack[] tSiliconDioxide = new ItemStack[] { Materials.SiliconDioxide.getDust(3), - Materials.NetherQuartz.getDust(3), Materials.CertusQuartz.getDust(3), Materials.Quartzite.getDust(6) }; - - // Roasting - - for (ItemStack silicon : tSiliconDioxide) { GT_Values.RA.addBlastRecipe( - Materials.Chalcopyrite.getDust(1), - silicon, + Materials.Galena.getDust(1), + GT_Values.NI, Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(2000), - Materials.RoastedCopper.getDust(1), - Materials.Ferrosilite.getDust(5), + Materials.SulfurDioxide.getGas(1000), + Materials.RoastedLead.getDust(1), + Materials.Ash.getDustTiny(1), 120, (int) TierEU.RECIPE_MV, 1200); } - GT_Values.RA.addBlastRecipe( - Materials.Tetrahedrite.getDust(1), - GT_Values.NI, - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(2000), - Materials.RoastedCopper.getDust(1), - Materials.RoastedAntimony.getDustTiny(3), - 120, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Pyrite.getDust(1), - GT_Values.NI, - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(2000), - Materials.RoastedIron.getDust(1), - Materials.Ash.getDustTiny(1), - 120, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Pentlandite.getDust(1), - GT_Values.NI, - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(1000), - Materials.RoastedNickel.getDust(1), - Materials.Ash.getDustTiny(1), - 120, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Sphalerite.getDust(1), - GT_Values.NI, - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(1000), - Materials.RoastedZinc.getDust(1), - Materials.Ash.getDustTiny(1), - 120, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Cobaltite.getDust(1), - GT_Values.NI, - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(1000), - Materials.RoastedCobalt.getDust(1), - Materials.RoastedArsenic.getDust(1), - 120, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Stibnite.getDust(1), - GT_Values.NI, - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(1500), - Materials.RoastedAntimony.getDust(1), - Materials.Ash.getDustTiny(1), - 120, - (int) TierEU.RECIPE_MV, - 1200); - - GT_Values.RA.addBlastRecipe( - Materials.Galena.getDust(1), - GT_Values.NI, - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(1000), - Materials.RoastedLead.getDust(1), - Materials.Ash.getDustTiny(1), - 120, - (int) TierEU.RECIPE_MV, - 1200); - - if (isGTNHLanthanidLoaded && isGTPPLoaded) { + if (GTNHLanthanides.isModLoaded() && GTPlusPlus.isModLoaded()) { - GT_Values.RA.addBlastRecipe( - Materials.TranscendentMetal.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Tungsten.getMolten(144), - new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 72), - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TranscendentMetal, 1L), - GT_Values.NI, - 180 * 20, - 32_000_000, - 11701); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.TranscendentMetal.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TranscendentMetal, 1)) + .fluidInputs(Materials.Tungsten.getMolten(144)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 72)) + .duration(3 * MINUTES).eut(32000000).metadata(COIL_HEAT, 11701).addTo(sBlastRecipes); // Rh + 3Cl = RhCl3 - GT_Values.RA.addBlastRecipe( - getModItem("bartworks", "gt.bwMetaGenerateddust", 1L, 78), - GT_Utility.getIntegratedCircuit(2), - Materials.Chlorine.getGas(3000L), - GT_Values.NF, - MaterialsKevlar.RhodiumChloride.getDust(4), - GT_Values.NI, - 600, - (int) TierEU.RECIPE_HV, - 573); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(BartWorks.modID, "gt.bwMetaGenerateddust", 1L, 78), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(MaterialsKevlar.RhodiumChloride.getDust(4)) + .fluidInputs(Materials.Chlorine.getGas(3000)).noFluidOutputs().duration(30 * SECONDS) + .eut((int) TierEU.RECIPE_HV).metadata(COIL_HEAT, 573).addTo(sBlastRecipes); } } - public void primitiveBlastFurnaceRecipes() { - GT_Values.RA.addPrimitiveBlastRecipe( - Materials.Iron.getIngots(1), - GT_Values.NI, + public void addPrimitiveBlastFurnaceRecipes(ItemStack[] inputs, int coalAmount, ItemStack[] outputs, int duration) { + // compute if it can make fuel block version of the recipes + boolean blockVersion = true; + for (ItemStack inputStack : inputs) { + if (inputStack.stackSize <= 6) { + blockVersion = false; + break; + } + } + + // skipping if it has been already set to false + if (blockVersion) { + for (ItemStack outputStack : outputs) { + if (outputStack.stackSize <= 6) { + blockVersion = false; + break; + } + } + } + + ItemStack[] inputsBlocks = new ItemStack[inputs.length]; + ItemStack[] outputsBlocks = new ItemStack[outputs.length]; + + // allocating the two arrays only if block version is possible + if (blockVersion) { + for (int i = 0; i < inputs.length; i++) { + ItemStack itemStack = inputs[i].copy(); + itemStack.stackSize *= 10; + inputsBlocks[i] = itemStack; + } + + for (int i = 0; i < outputs.length; i++) { + ItemStack itemStack = outputs[i].copy(); + itemStack.stackSize *= 10; + outputsBlocks[i] = itemStack; + } + } + + for (Materials coal : new Materials[] { Materials.Coal, Materials.Charcoal }) { + // coal as gems + GT_Values.RA.stdBuilder().itemInputs(ArrayUtils.add(inputs, coal.getGems(coalAmount))) + .itemOutputs(ArrayUtils.add(outputs, Materials.DarkAsh.getDustTiny(coalAmount))).noFluidInputs() + .noFluidOutputs().duration(duration).eut(0).addTo(sPrimitiveBlastRecipes); + + // coal as dust + GT_Values.RA.stdBuilder().itemInputs(ArrayUtils.add(inputs, coal.getDust(coalAmount))) + .itemOutputs(ArrayUtils.add(outputs, Materials.DarkAsh.getDustTiny(coalAmount))).noFluidInputs() + .noFluidOutputs().duration(duration).eut(0).addTo(sPrimitiveBlastRecipes); + + if (!blockVersion) { + continue; + } + + // coal as block + GT_Values.RA.stdBuilder().itemInputs(ArrayUtils.add(inputs, coal.getBlocks(coalAmount))) + .itemOutputs(ArrayUtils.add(outputs, Materials.DarkAsh.getDust(coalAmount))).noFluidInputs() + .noFluidOutputs().duration(duration * 10).eut(0).addTo(sPrimitiveBlastRecipes); + } + + if (Railcraft.isModLoaded()) { + // coal coke + GT_Values.RA.stdBuilder().itemInputs(ArrayUtils.add(inputs, RailcraftToolItems.getCoalCoke(coalAmount / 2))) + .itemOutputs(ArrayUtils.add(outputs, Materials.Ash.getDustTiny(coalAmount / 2))).noFluidInputs() + .noFluidOutputs().duration(duration * 2 / 3).eut(0).addTo(sPrimitiveBlastRecipes); + + // coal coke block + GT_Values.RA.stdBuilder().itemInputs(ArrayUtils.add(inputs, EnumCube.COKE_BLOCK.getItem(coalAmount / 2))) + .itemOutputs(ArrayUtils.add(outputs, Materials.Ash.getDust(coalAmount / 2))).noFluidInputs() + .noFluidOutputs().duration(duration * 10 * 2 / 3).eut(0).addTo(sPrimitiveBlastRecipes); + } + + if (GTPlusPlus.isModLoaded()) { + // cactus coke + GT_Values.RA.stdBuilder().itemInputs( + ArrayUtils + .add(inputs, GT_ModHandler.getModItem(GTPlusPlus.modID, "itemCactusCoke", coalAmount * 2))) + .itemOutputs(ArrayUtils.add(outputs, Materials.Ash.getDustTiny(coalAmount * 2))).noFluidInputs() + .noFluidOutputs().duration(duration * 2 / 3).eut(0).addTo(sPrimitiveBlastRecipes); + + // sugar coke + GT_Values.RA.stdBuilder().itemInputs( + ArrayUtils + .add(inputs, GT_ModHandler.getModItem(GTPlusPlus.modID, "itemSugarCoke", (coalAmount * 2)))) + .itemOutputs(ArrayUtils.add(outputs, Materials.Ash.getDustTiny(coalAmount * 2))).noFluidInputs() + .noFluidOutputs().duration(duration * 2 / 3).eut(0).addTo(sPrimitiveBlastRecipes); + } + + } + + public void registerPrimitiveBlastFurnaceRecipes() { + addPrimitiveBlastFurnaceRecipes( + new ItemStack[] { Materials.Iron.getIngots(1) }, 4, - Materials.Steel.getIngots(1), - GT_Values.NI, - 7200); - GT_Values.RA.addPrimitiveBlastRecipe( - Materials.Iron.getDust(1), - GT_Values.NI, + new ItemStack[] { Materials.Steel.getIngots(1) }, + 6 * MINUTES); + + addPrimitiveBlastFurnaceRecipes( + new ItemStack[] { Materials.Iron.getDust(1) }, 4, - Materials.Steel.getIngots(1), - GT_Values.NI, - 7200); - GT_Values.RA.addPrimitiveBlastRecipe( - Materials.Iron.getBlocks(1), - GT_Values.NI, + new ItemStack[] { Materials.Steel.getIngots(1) }, + 6 * MINUTES); + + addPrimitiveBlastFurnaceRecipes( + new ItemStack[] { Materials.Iron.getBlocks(1) }, 36, - Materials.Steel.getIngots(9), - GT_Values.NI, - 64800); - GT_Values.RA.addPrimitiveBlastRecipe( - Materials.Steel.getDust(1), - GT_Values.NI, + new ItemStack[] { Materials.Steel.getIngots(9) }, + 54 * MINUTES); + + addPrimitiveBlastFurnaceRecipes( + new ItemStack[] { Materials.Steel.getDust(1) }, 2, - Materials.Steel.getIngots(1), - GT_Values.NI, - 7200); + new ItemStack[] { Materials.Steel.getIngots(1) }, + 6 * MINUTES); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java index 338061f926..ed9ccef53c 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java @@ -1,422 +1,355 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.Forestry; +import static gregtech.api.enums.ModIDs.IndustrialCraft2; import static gregtech.api.util.GT_ModHandler.getModItem; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBrewingRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import gregtech.api.enums.*; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class BreweryRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), - FluidRegistry.getFluid("creosote"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipe( + ItemStack[] brewingItems = new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), - FluidRegistry.getFluid("creosote"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - FluidRegistry.getFluid("creosote"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), - FluidRegistry.getFluid("seedoil"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), - FluidRegistry.getFluid("seedoil"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - FluidRegistry.getFluid("seedoil"), - FluidRegistry.getFluid("lubricant"), - false); - for (Fluid tFluid : new Fluid[] { FluidRegistry.WATER, GT_ModHandler.getDistilledWater(1L).getFluid() }) { - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Milk, 1L), - tFluid, - FluidRegistry.getFluid("milk"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), - tFluid, - FluidRegistry.getFluid("potion.wheatyjuice"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L), - tFluid, - FluidRegistry.getFluid("potion.mineralwater"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - tFluid, - FluidRegistry.getFluid("potion.mineralwater"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - tFluid, - FluidRegistry.getFluid("potion.mineralwater"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 1L), - tFluid, - FluidRegistry.getFluid("potion.mineralwater"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 1L), - tFluid, - FluidRegistry.getFluid("potion.thick"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.magma_cream, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.fermented_spider_eye, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.spider_eye, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.speckled_melon, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.ghast_tear, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.mundane"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.nether_wart, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.awkward"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Blocks.red_mushroom, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.poison"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.fish, 1, 3), - tFluid, - FluidRegistry.getFluid("potion.poison.strong"), - true); - GT_Values.RA.addBrewingRecipe( - ItemList.IC2_Grin_Powder.get(1L), - tFluid, - FluidRegistry.getFluid("potion.poison.strong"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.reeds, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.reedwater"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.apple, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.applejuice"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.golden_apple, 1, 0), - tFluid, - FluidRegistry.getFluid("potion.goldenapplejuice"), - true); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.golden_apple, 1, 1), - tFluid, - FluidRegistry.getFluid("potion.idunsapplejuice"), - true); - GT_Values.RA.addBrewingRecipe( - ItemList.IC2_Hops.get(1L), - tFluid, - FluidRegistry.getFluid("potion.hopsjuice"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coffee, 1L), - tFluid, - FluidRegistry.getFluid("potion.darkcoffee"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), - tFluid, - FluidRegistry.getFluid("potion.chillysauce"), - false); + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L) }; + + for (ItemStack item : brewingItems) { + // creosote to lubricant recipes + GT_Values.RA.stdBuilder().itemInputs(item).noItemOutputs().fluidInputs(getFluidStack("creosote", 750)) + .fluidOutputs(getFluidStack("lubricant", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + // seed oil to lubricant recipes + GT_Values.RA.stdBuilder().itemInputs(item).noItemOutputs().fluidInputs(getFluidStack("seedoil", 750)) + .fluidOutputs(getFluidStack("lubricant", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + // lubricant recipes + { + GT_Values.RA.stdBuilder().itemInputs(item).noItemOutputs().fluidInputs(getFluidStack("oil", 750)) + .fluidOutputs(getFluidStack("lubricant", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(item).noItemOutputs() + .fluidInputs(getFluidStack("liquid_light_oil", 750)) + .fluidOutputs(getFluidStack("lubricant", 500)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(item).noItemOutputs() + .fluidInputs(getFluidStack("liquid_medium_oil", 750)) + .fluidOutputs(getFluidStack("lubricant", 500)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(item).noItemOutputs() + .fluidInputs(getFluidStack("liquid_heavy_oil", 500)) + .fluidOutputs(getFluidStack("lubricant", 750)).duration(3 * SECONDS + 4 * TICKS).eut(4) + .addTo(sBrewingRecipes); + } + } + + // water based recipe input + { + String[] waterArray; + + /* + * if IC2 isn't loaded, getDistilledWater returns the base minecraft water, so no need to do the recipe + * loading twice. + */ + if (IndustrialCraft2.isModLoaded()) { + waterArray = new String[] { FluidRegistry.WATER.getUnlocalizedName(), + GT_ModHandler.getDistilledWater(1L).getFluid().getUnlocalizedName() }; + } else { + waterArray = new String[] { FluidRegistry.WATER.getUnlocalizedName(), }; + } + for (String fluid : waterArray) { + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Milk, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("milk", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.wheatyjuice", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.mineralwater", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.mineralwater", 750)).duration(6 * SECONDS + 8 * TICKS) + .eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.mineralwater", 750)).duration(6 * SECONDS + 8 * TICKS) + .eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 1L)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.mineralwater", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 1L)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.thick", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.mundane", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.mundane", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.mundane", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.magma_cream, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.mundane", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fermented_spider_eye, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.mundane", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.spider_eye, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.mundane", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.speckled_melon, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.mundane", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.ghast_tear, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.mundane", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.nether_wart, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.awkward", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.red_mushroom, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.poison", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fish, 1, 3)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.poison.strong", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Grin_Powder.get(1L)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.poison.strong", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.reeds, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.reedwater", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.apple, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.applejuice", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.golden_apple, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.goldenapplejuice", 750)).duration(6 * SECONDS + 8 * TICKS) + .eut(4).hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.golden_apple, 1, 1)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.idunsapplejuice", 750)).duration(6 * SECONDS + 8 * TICKS) + .eut(4).hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Hops.get(1L)).noItemOutputs() + .fluidInputs(getFluidStack(fluid, 750)).fluidOutputs(getFluidStack("potion.hopsjuice", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coffee, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.darkcoffee", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L)) + .noItemOutputs().fluidInputs(getFluidStack(fluid, 750)) + .fluidOutputs(getFluidStack("potion.chillysauce", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + } + } + + // potion brewing 1 + { + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.chillysauce", 750)) + .fluidOutputs(getFluidStack("potion.hotsauce", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.hotsauce", 750)) + .fluidOutputs(getFluidStack("potion.diabolosauce", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.diabolosauce", 750)) + .fluidOutputs(getFluidStack("potion.diablosauce", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coffee, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("milk", 750)) + .fluidOutputs(getFluidStack("potion.coffee", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cocoa, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("milk", 750)) + .fluidOutputs(getFluidStack("potion.darkchocolatemilk", 750)).duration(6 * SECONDS + 8 * TICKS) + .eut(4).addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Hops.get(1L)).noItemOutputs() + .fluidInputs(getFluidStack("potion.wheatyjuice", 750)) + .fluidOutputs(getFluidStack("potion.wheatyhopsjuice", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.hopsjuice", 750)) + .fluidOutputs(getFluidStack("potion.wheatyhopsjuice", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.tea", 750)) + .fluidOutputs(getFluidStack("potion.sweettea", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.coffee", 750)) + .fluidOutputs(getFluidStack("potion.cafeaulait", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.cafeaulait", 750)) + .fluidOutputs(getFluidStack("potion.laitaucafe", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.lemonjuice", 750)) + .fluidOutputs(getFluidStack("potion.lemonade", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.darkcoffee", 750)) + .fluidOutputs(getFluidStack("potion.darkcafeaulait", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.darkchocolatemilk", 750)) + .fluidOutputs(getFluidStack("potion.chocolatemilk", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.tea", 750)) + .fluidOutputs(getFluidStack("potion.icetea", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.lemonade", 750)) + .fluidOutputs(getFluidStack("potion.cavejohnsonsgrenadejuice", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion.mundane", 750)) + .fluidOutputs(getFluidStack("potion.purpledrink", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .hidden().addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fermented_spider_eye, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack("potion.mundane", 750)) + .fluidOutputs(getFluidStack("potion.weakness", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fermented_spider_eye, 1, 0)).noItemOutputs() + .fluidInputs(getFluidStack("potion.thick", 750)).fluidOutputs(getFluidStack("potion.weakness", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + } + + // biomass recipes + { + GT_Values.RA.stdBuilder().itemInputs(getModItem(Forestry.modID, "fertilizerBio", 4L, 0)).noItemOutputs() + .fluidInputs(getFluidStack(FluidRegistry.WATER.getUnlocalizedName(), 750)) + .fluidOutputs(getFluidStack("biomass", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Forestry.modID, "mulch", 16L, 0)).noItemOutputs() + .fluidInputs( + getFluidStack(GT_ModHandler.getDistilledWater(750L).getFluid().getUnlocalizedName(), 750)) + .fluidOutputs(getFluidStack("biomass", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Forestry.modID, "mulch", 8L, 0)).noItemOutputs() + .fluidInputs(getFluidStack("juice", 500)).fluidOutputs(getFluidStack("biomass", 750)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sBrewingRecipes); + } + + // ic2 biomass recipes + { + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("biochaff", 1)).noItemOutputs() + .fluidInputs(GT_ModHandler.getWater(1000L)).fluidOutputs(getFluidStack("ic2biomass", 1000)) + .duration(8 * SECONDS + 10 * TICKS).eut(4).addTo(sBrewingRecipes); + + // Would add 2 different amount of water input if IC2 isn't loaded + if (IndustrialCraft2.isModLoaded()) { + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("biochaff", 1)).noItemOutputs() + .fluidInputs(GT_ModHandler.getDistilledWater(500L)) + .fluidOutputs(getFluidStack("ic2biomass", 1000)).duration(10 * TICKS) + .eut((int) TierEU.RECIPE_LV).addTo(sBrewingRecipes); + } + } + + // potion brewing 2 + { + this.addPotionRecipes("waterbreathing", new ItemStack(Items.fish, 1, 3)); + this.addPotionRecipes("fireresistance", new ItemStack(Items.magma_cream, 1, 0)); + this.addPotionRecipes("nightvision", new ItemStack(Items.golden_carrot, 1, 0)); + this.addPotionRecipes("weakness", new ItemStack(Items.fermented_spider_eye, 1, 0)); + this.addPotionRecipes("poison", new ItemStack(Items.spider_eye, 1, 0)); + this.addPotionRecipes("health", new ItemStack(Items.speckled_melon, 1, 0)); + this.addPotionRecipes("regen", new ItemStack(Items.ghast_tear, 1, 0)); + this.addPotionRecipes("speed", GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)); + this.addPotionRecipes("strength", GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L)); } - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), - FluidRegistry.getFluid("potion.chillysauce"), - FluidRegistry.getFluid("potion.hotsauce"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), - FluidRegistry.getFluid("potion.hotsauce"), - FluidRegistry.getFluid("potion.diabolosauce"), - true); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), - FluidRegistry.getFluid("potion.diabolosauce"), - FluidRegistry.getFluid("potion.diablosauce"), - true); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coffee, 1L), - FluidRegistry.getFluid("milk"), - FluidRegistry.getFluid("potion.coffee"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cocoa, 1L), - FluidRegistry.getFluid("milk"), - FluidRegistry.getFluid("potion.darkchocolatemilk"), - false); - GT_Values.RA.addBrewingRecipe( - ItemList.IC2_Hops.get(1L), - FluidRegistry.getFluid("potion.wheatyjuice"), - FluidRegistry.getFluid("potion.wheatyhopsjuice"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), - FluidRegistry.getFluid("potion.hopsjuice"), - FluidRegistry.getFluid("potion.wheatyhopsjuice"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - FluidRegistry.getFluid("potion.tea"), - FluidRegistry.getFluid("potion.sweettea"), - true); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - FluidRegistry.getFluid("potion.coffee"), - FluidRegistry.getFluid("potion.cafeaulait"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - FluidRegistry.getFluid("potion.cafeaulait"), - FluidRegistry.getFluid("potion.laitaucafe"), - true); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - FluidRegistry.getFluid("potion.lemonjuice"), - FluidRegistry.getFluid("potion.lemonade"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - FluidRegistry.getFluid("potion.darkcoffee"), - FluidRegistry.getFluid("potion.darkcafeaulait"), - true); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - FluidRegistry.getFluid("potion.darkchocolatemilk"), - FluidRegistry.getFluid("potion.chocolatemilk"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), - FluidRegistry.getFluid("potion.tea"), - FluidRegistry.getFluid("potion.icetea"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1L), - FluidRegistry.getFluid("potion.lemonade"), - FluidRegistry.getFluid("potion.cavejohnsonsgrenadejuice"), - true); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - FluidRegistry.getFluid("potion.mundane"), - FluidRegistry.getFluid("potion.purpledrink"), - true); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.fermented_spider_eye, 1, 0), - FluidRegistry.getFluid("potion.mundane"), - FluidRegistry.getFluid("potion.weakness"), - false); - GT_Values.RA.addBrewingRecipe( - new ItemStack(Items.fermented_spider_eye, 1, 0), - FluidRegistry.getFluid("potion.thick"), - FluidRegistry.getFluid("potion.weakness"), - false); - - GT_Values.RA.addBrewingRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "fertilizerBio", 4L, 0), - FluidRegistry.WATER, - FluidRegistry.getFluid("biomass"), - false); - GT_Values.RA.addBrewingRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "mulch", 16L, 0), - GT_ModHandler.getDistilledWater(750L).getFluid(), - FluidRegistry.getFluid("biomass"), - false); - GT_Values.RA.addBrewingRecipeCustom( - getModItem(GT_MachineRecipeLoader.aTextForestry, "mulch", 8L, 0), - getFluidStack("juice", 500), - getFluidStack("biomass", 750), - 128, - 4, - false); - - GT_Values.RA.addBrewingRecipeCustom( - GT_ModHandler.getIC2Item("biochaff", 1), - GT_ModHandler.getWater(1000L), - getFluidStack("ic2biomass", 1000), - 170, - 4, - false); - GT_Values.RA.addBrewingRecipeCustom( - GT_ModHandler.getIC2Item("biochaff", 1), - GT_ModHandler.getDistilledWater(500L), - getFluidStack("ic2biomass", 1000), - 10, - (int) TierEU.RECIPE_LV, - false); - - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), - FluidRegistry.getFluid("oil"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), - FluidRegistry.getFluid("oil"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - FluidRegistry.getFluid("oil"), - FluidRegistry.getFluid("lubricant"), - false); - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), - getFluidStack("liquid_light_oil", 750), - getFluidStack("lubricant", 500), - 128, - 4, - false); - - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), - getFluidStack("liquid_light_oil", 750), - getFluidStack("lubricant", 500), - 128, - 4, - false); - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - getFluidStack("liquid_light_oil", 750), - getFluidStack("lubricant", 500), - 128, - 4, - false); - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), - getFluidStack("liquid_medium_oil", 750), - getFluidStack("lubricant", 750), - 128, - 4, - false); - - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), - getFluidStack("liquid_medium_oil", 750), - getFluidStack("lubricant", 750), - 128, - 4, - false); - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - getFluidStack("liquid_medium_oil", 750), - getFluidStack("lubricant", 750), - 128, - 4, - false); - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), - getFluidStack("liquid_heavy_oil", 500), - getFluidStack("lubricant", 750), - 64, - 4, - false); - - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), - getFluidStack("liquid_heavy_oil", 500), - getFluidStack("lubricant", 750), - 64, - 4, - false); - GT_Values.RA.addBrewingRecipeCustom( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - getFluidStack("liquid_heavy_oil", 500), - getFluidStack("lubricant", 750), - 64, - 4, - false); - - this.addPotionRecipes("waterbreathing", new ItemStack(Items.fish, 1, 3)); - this.addPotionRecipes("fireresistance", new ItemStack(Items.magma_cream, 1, 0)); - this.addPotionRecipes("nightvision", new ItemStack(Items.golden_carrot, 1, 0)); - this.addPotionRecipes("weakness", new ItemStack(Items.fermented_spider_eye, 1, 0)); - this.addPotionRecipes("poison", new ItemStack(Items.spider_eye, 1, 0)); - this.addPotionRecipes("health", new ItemStack(Items.speckled_melon, 1, 0)); - this.addPotionRecipes("regen", new ItemStack(Items.ghast_tear, 1, 0)); - this.addPotionRecipes("speed", GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)); - this.addPotionRecipes("strength", GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L)); } public void addPotionRecipes(String aName, ItemStack aItem) { // normal - GT_Values.RA.addBrewingRecipe( - aItem, - FluidRegistry.getFluid("potion.awkward"), - FluidRegistry.getFluid("potion." + aName), - false); + GT_Values.RA.stdBuilder().itemInputs(aItem).noItemOutputs().fluidInputs(getFluidStack("potion.awkward", 750)) + .fluidOutputs(getFluidStack("potion." + aName, 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); + // strong - GT_Values.RA.addBrewingRecipe( - aItem, - FluidRegistry.getFluid("potion.thick"), - FluidRegistry.getFluid("potion." + aName + ".strong"), - false); + GT_Values.RA.stdBuilder().itemInputs(aItem).noItemOutputs().fluidInputs(getFluidStack("potion.thick", 750)) + .fluidOutputs(getFluidStack("potion." + aName + ".strong", 750)).duration(6 * SECONDS + 8 * TICKS) + .eut(4).addTo(sBrewingRecipes); + // long - GT_Values.RA.addBrewingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - FluidRegistry.getFluid("potion." + aName), - FluidRegistry.getFluid("potion." + aName + ".long"), - false); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)) + .noItemOutputs().fluidInputs(getFluidStack("potion." + aName, 750)) + .fluidOutputs(getFluidStack("potion." + aName + ".long", 750)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sBrewingRecipes); - MixerRecipes.addMixerPotionRecipes(aName, aItem); + MixerRecipes.addMixerPotionRecipes(aName); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/CannerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/CannerRecipes.java index 1971fd6a6b..e9eb560168 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/CannerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/CannerRecipes.java @@ -1,5 +1,10 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.IndustrialCraft2; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCannerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -12,48 +17,46 @@ public class CannerRecipes implements Runnable { @Override public void run() { // fuel rod canner recipes - GT_Values.RA.addCannerRecipe( - GT_ModHandler.getIC2Item("fuelRod", 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Lithium, 1L), - GT_ModHandler.getIC2Item("reactorLithiumCell", 1, 1), - null, - 16, - 64); - - GT_Values.RA.addCannerRecipe( - GT_ModHandler.getIC2Item("fuelRod", 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 3), - ItemList.ThoriumCell_1.get(1L), - null, - 30, - 16); - GT_Values.RA.addCannerRecipe( - ItemList.Large_Fluid_Cell_TungstenSteel.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 3), - ItemList.NaquadahCell_1.get(1L), - null, - 30, - 16); - GT_Values.RA.addCannerRecipe( - ItemList.Large_Fluid_Cell_TungstenSteel.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 3), - ItemList.MNqCell_1.get(1L), - null, - 30, - 16); - GT_Values.RA.addCannerRecipe( - GT_ModHandler.getIC2Item("fuelRod", 1), - GT_ModHandler.getIC2Item("UranFuel", 1), - ItemList.Uraniumcell_1.get(1), - null, - 30, - 16); - GT_Values.RA.addCannerRecipe( - GT_ModHandler.getIC2Item("fuelRod", 1), - GT_ModHandler.getIC2Item("MOXFuel", 1), - ItemList.Moxcell_1.get(1), - null, - 30, - 16); + + if (IndustrialCraft2.isModLoaded()) { + // todo: remove tiny dust in this recipe + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getIC2Item("fuelRod", 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Lithium, 1L)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorLithiumCell", 1, 1)).noFluidInputs().noFluidOutputs() + .duration(16 * TICKS).eut(64).addTo(sCannerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getIC2Item("fuelRod", 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 3)) + .itemOutputs(ItemList.ThoriumCell_1.get(1L)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 10 * TICKS).eut(16).addTo(sCannerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("UranFuel", 1)) + .itemOutputs(ItemList.Uraniumcell_1.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 10 * TICKS).eut(16).addTo(sCannerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("MOXFuel", 1)) + .itemOutputs(ItemList.Moxcell_1.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 10 * TICKS).eut(16).addTo(sCannerRecipes); + } + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Large_Fluid_Cell_TungstenSteel.get(1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 3)) + .itemOutputs(ItemList.NaquadahCell_1.get(1L)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 10 * TICKS).eut(16).addTo(sCannerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Large_Fluid_Cell_TungstenSteel.get(1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 3)) + .itemOutputs(ItemList.MNqCell_1.get(1L)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 10 * TICKS).eut(16).addTo(sCannerRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/CentrifugeRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/CentrifugeRecipes.java index 7d42df2a99..b2f41e3d32 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/CentrifugeRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/CentrifugeRecipes.java @@ -1,9 +1,12 @@ package gregtech.loaders.postload.recipes; import static gregtech.api.enums.GT_Values.NI; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isExtraUtilitiesLoaded; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isThaumcraftLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.init.Blocks; @@ -14,1201 +17,596 @@ import gregtech.api.enums.*; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class CentrifugeRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedGold, 1L), - GT_Values.NI, - Materials.Mercury.getFluid(200L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), - getModItem("Thaumcraft", "ItemResource", 2L, 14), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 10000, 10000, 9000 }, - 400, - (int) TierEU.RECIPE_MV); - - GT_Values.RA.addCentrifugeRecipe( - ItemList.Cell_Empty.get(1), - null, - Materials.Air.getGas(10000), - Materials.Nitrogen.getGas(3900), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1), - null, - null, - null, - null, - null, - null, - 1600, - 8); - - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PlatinumGroupSludge, 9), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 3), - new int[] { 10000, 10000, 10000, 9500, 9000, 8500 }, - 8100, - 30); - - GT_Values.RA.addCentrifugeRecipe( - GT_Values.NI, - GT_Values.NI, - MaterialsOreAlum.SluiceJuice.getFluid(1000), - Materials.Water.getFluid(500), - Materials.Stone.getDust(1), - Materials.Iron.getDust(1), - Materials.Copper.getDust(1), - Materials.Tin.getDust(1), - Materials.Nickel.getDust(1), - Materials.Antimony.getDust(1), - new int[] { 10000, 4000, 2000, 2000, 2000, 2000 }, - 40, - (int) TierEU.RECIPE_MV); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedGold, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1), + getModItem(Thaumcraft.modID, "ItemResource", 2L, 14)) + .outputChances(10000, 10000, 9000).fluidInputs(Materials.Mercury.getFluid(200)).noFluidOutputs() + .duration(20 * SECONDS).eut((int) TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Empty.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1)) + .fluidInputs(Materials.Air.getGas(10000)).fluidOutputs(Materials.Nitrogen.getGas(3900)) + .duration(1 * MINUTES + 20 * SECONDS).eut(8).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PlatinumGroupSludge, 9)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 3)) + .outputChances(10000, 10000, 10000, 9500, 9000, 8500).noFluidInputs().noFluidOutputs() + .duration(6 * MINUTES + 45 * SECONDS).eut(30).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().noItemInputs() + .itemOutputs( + Materials.Stone.getDust(1), + Materials.Iron.getDust(1), + Materials.Copper.getDust(1), + Materials.Tin.getDust(1), + Materials.Nickel.getDust(1), + Materials.Antimony.getDust(1)) + .outputChances(10000, 4000, 2000, 2000, 2000, 2000) + .fluidInputs(MaterialsOreAlum.SluiceJuice.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(500)) + .duration(2 * SECONDS).eut((int) TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); // food ->CH4 - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.golden_apple, 1, 1), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(4608L), - new ItemStack(Items.gold_ingot, 64), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 9216, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.golden_apple, 1, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - new ItemStack(Items.gold_ingot, 7), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 9216, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.golden_carrot, 1, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - new ItemStack(Items.gold_nugget, 6), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 9216, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.speckled_melon, 1, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - new ItemStack(Items.gold_nugget, 6), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 9216, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.mushroom_stew, 16, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - new ItemStack(Items.bowl, 16, 0), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.apple, 32, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.bread, 64, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.porkchop, 12, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.cooked_porkchop, 16, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.beef, 12, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.cooked_beef, 16, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.fish, 12, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.cooked_fished, 16, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.chicken, 12, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.cooked_chicken, 16, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.melon, 64, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.pumpkin, 16, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.rotten_flesh, 16, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.spider_eye, 32, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.carrot, 16, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Food_Raw_Potato.get(16L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Food_Poisonous_Potato.get(12L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Food_Baked_Potato.get(24L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.cookie, 64, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.cake, 8, 0), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.brown_mushroom_block, 12, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.red_mushroom_block, 12, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.brown_mushroom, 32, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.red_mushroom, 32, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.nether_wart, 32, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - GT_ModHandler.getIC2Item("terraWart", 16L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - getModItem("TwilightForest", "item.meefRaw", 12L, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - getModItem("TwilightForest", "item.meefSteak", 16L, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - getModItem("TwilightForest", "item.venisonRaw", 12L, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - GT_Values.RA.addCentrifugeRecipe( - getModItem("TwilightForest", "item.venisonCooked", 16L, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Methane.getGas(576L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 4608, - 5); - - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), - GT_Utility.getIntegratedCircuit(1), - null, - Materials.Methane.getGas(60L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 200, - 20); - - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.sand, 1, 1), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Diamond, 1L), - new ItemStack(Blocks.sand, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 5000, 100, 5000 }, - 600, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - ItemList.IC2_Plantball.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1L), - new ItemStack(Blocks.sand, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 1250, 5000, 5000 }, - 250, - 30); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.grass, 1, 32767), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - ItemList.IC2_Plantball.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1L), - new ItemStack(Blocks.sand, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 2500, 5000, 5000 }, - 250, - 30); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.mycelium, 1, 32767), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - new ItemStack(Blocks.brown_mushroom, 1), - new ItemStack(Blocks.red_mushroom, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1L), - new ItemStack(Blocks.sand, 1), - GT_Values.NI, - GT_Values.NI, - new int[] { 2500, 2500, 5000, 5000 }, - 650, - 30); - GT_Values.RA.addCentrifugeRecipe( - ItemList.IC2_Resin.get(1L), - GT_Values.NI, - GT_Values.NF, - Materials.Glue.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 3L), - ItemList.IC2_Plantball.get(1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 10000, 1000 }, - 300, - 5); - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L), - ItemList.TE_Slag.get(1L, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L)), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 250); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Items.magma_cream, 1), - 0, - new ItemStack(Items.blaze_powder, 1), - new ItemStack(Items.slime_ball, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 500); - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), - GT_Utility.getIntegratedCircuit(10), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium235, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 1000, 500 }, - 2000, - (int) TierEU.RECIPE_HV); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.golden_apple, 1, 1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Items.gold_ingot, 64)).noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(4608)).duration(7 * MINUTES + 40 * SECONDS + 16 * TICKS).eut(5) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.golden_apple, 1, 0), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Items.gold_ingot, 7)).noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(576)).duration(7 * MINUTES + 40 * SECONDS + 16 * TICKS).eut(5) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.golden_carrot, 1, 0), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Items.gold_nugget, 6)).noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(576)).duration(7 * MINUTES + 40 * SECONDS + 16 * TICKS).eut(5) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.speckled_melon, 1, 0), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Items.gold_nugget, 6)).noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(576)).duration(7 * MINUTES + 40 * SECONDS + 16 * TICKS).eut(5) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.mushroom_stew, 16, 0), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Items.bowl, 16, 0)).noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(576)).duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.apple, 32, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.bread, 64, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.porkchop, 12, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.cooked_porkchop, 16, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.beef, 12, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.cooked_beef, 16, 0), GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fish, 12, 32767), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.cooked_fished, 16, 32767), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.chicken, 12, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.cooked_chicken, 16, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.melon, 64, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.pumpkin, 16, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.rotten_flesh, 16, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.spider_eye, 32, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.carrot, 16, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Raw_Potato.get(16), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Poisonous_Potato.get(12), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Baked_Potato.get(24), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.cookie, 64, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.cake, 8, 0), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.brown_mushroom_block, 12, 32767), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.red_mushroom_block, 12, 32767), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.brown_mushroom, 32, 32767), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.red_mushroom, 32, 32767), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Items.nether_wart, 32, 32767), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("terraWart", 16), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.meefRaw", 12L, 32767), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.meefSteak", 16L, 32767), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.venisonRaw", 12L, 32767), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(TwilightForest.modID, "item.venisonCooked", 16L, 32767), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(576)) + .duration(3 * MINUTES + 50 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Methane.getGas(60)).duration(10 * SECONDS) + .eut(20).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.sand, 1, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Diamond, 1), + new ItemStack(Blocks.sand, 1)) + .outputChances(5000, 100, 5000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS) + .eut((int) TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.dirt, 1, 32767)) + .itemOutputs( + ItemList.IC2_Plantball.get(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1), + new ItemStack(Blocks.sand, 1)) + .outputChances(1250, 5000, 5000).noFluidInputs().noFluidOutputs().duration(12 * SECONDS + 10 * TICKS) + .eut(30).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.grass, 1, 32767)) + .itemOutputs( + ItemList.IC2_Plantball.get(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1), + new ItemStack(Blocks.sand, 1)) + .outputChances(2500, 5000, 5000).noFluidInputs().noFluidOutputs().duration(12 * SECONDS + 10 * TICKS) + .eut(30).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.mycelium, 1, 32767)) + .itemOutputs( + new ItemStack(Blocks.brown_mushroom, 1), + new ItemStack(Blocks.red_mushroom, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1), + new ItemStack(Blocks.sand, 1)) + .outputChances(2500, 2500, 5000, 5000).noFluidInputs().noFluidOutputs() + .duration(32 * SECONDS + 10 * TICKS).eut(30).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Resin.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 3), + ItemList.IC2_Plantball.get(1)) + .outputChances(10000, 1000).noFluidInputs().fluidOutputs(Materials.Glue.getFluid(100)) + .duration(15 * SECONDS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1), + GT_Utility.getIntegratedCircuit(10)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium235, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 1)) + .outputChances(1000, 500).noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 40 * SECONDS) + .eut((int) TierEU.RECIPE_HV).addTo(sCentrifugeRecipes); + // Uranium Enrichment in Centrifuge by adding Fluorine (Uranium Hexafluoride) - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), - GT_Values.NI, - Materials.Fluorine.getGas(4000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium235, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 10000 }, - 4000, - (int) TierEU.RECIPE_EV); - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 1L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plutonium241, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Uranium, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 2000, 3000 }, - 1600, - 320); - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 9L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 5000, 1000 }, - 28800, - 320); - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 4L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 2000, 3000 }, - 25600, - 640); - GT_Values.RA.addCentrifugeRecipe( - GT_Values.NI, - GT_Values.NI, - Materials.Hydrogen.getGas(160L), - Materials.Deuterium.getGas(40L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 160, - 20); - GT_Values.RA.addCentrifugeRecipe( - GT_Values.NI, - GT_Values.NI, - Materials.Deuterium.getGas(160L), - Materials.Tritium.getGas(40L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 160, - 80); - GT_Values.RA.addCentrifugeRecipe( - GT_Values.NI, - GT_Values.NI, - Materials.Helium.getGas(80L), - Materials.Helium_3.getGas(5L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 160, - 80); - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 2L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 976, - 80); - - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 36L), - GT_Values.NI, - GT_Values.NF, - Materials.Helium.getGas(4320L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungstate, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 1L), - new ItemStack(Blocks.sand, 36), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 3750, 2500, 9000, 0, 0, 0 }, - 11520, - 20); - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Netherrack, 36L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), - GT_Values.NI, - GT_Values.NI, - new int[] { 5625, 9900, 5625, 2500, 0, 0 }, - 5760, - 20); - - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(10), - GT_Values.NI, - Materials.Lava.getFluid(400L), - GT_Values.NF, - Materials.SiliconDioxide.getDust(1), - Materials.Magnesia.getDust(1), - Materials.Quicklime.getDust(1), - Materials.Gold.getNuggets(4), - Materials.Sapphire.getDust(1), - Materials.Tantalite.getDust(1), - new int[] { 5000, 1000, 1000, 250, 1250, 500 }, - 320, - 80); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(20), - GT_Values.NI, - Materials.Lava.getFluid(3600L), - GT_Values.NF, - Materials.SiliconDioxide.getDust(5), - Materials.Magnesia.getDust(1), - Materials.Quicklime.getDust(1), - Materials.Gold.getIngots(1), - Materials.Sapphire.getDust(3), - Materials.Tantalite.getDust(1), - new int[] { 9000, 9000, 9000, 1000, 3750, 4500 }, - 2880, - 80); - GT_Values.RA.addCentrifugeRecipe( - new ItemStack(Blocks.soul_sand, 1), - GT_Values.NI, - GT_Values.NF, - Materials.Oil.getFluid(200L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), - new ItemStack(Blocks.sand, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 1000, 700, 9000, 0, 0, 0 }, - 200, - 12); - - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(10), - GT_Values.NI, - getFluidStack("ic2pahoehoelava", 100), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Copper, 1L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tin, 1L), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Silver, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Phosphorus, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Scheelite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Bauxite, 1L), - new int[] { 2000, 1000, 250, 50, 250, 500 }, - 40, - 1024); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(20), - GT_Values.NI, - getFluidStack("ic2pahoehoelava", 3600), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Silver, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Scheelite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bauxite, 1L), - new int[] { 8000, 4000, 1000, 450, 2250, 4500 }, - 328, - 4096); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium235, 1)).outputChances(10000) + .fluidInputs(Materials.Fluorine.getGas(4000)).noFluidOutputs().duration(3 * MINUTES + 20 * SECONDS) + .eut((int) TierEU.RECIPE_EV).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plutonium241, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Uranium, 1)) + .outputChances(2000, 3000).noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 20 * SECONDS) + .eut(320).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 9)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 1)) + .outputChances(5000, 1000).noFluidInputs().noFluidOutputs().duration(24 * MINUTES).eut(320) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1)) + .outputChances(2000, 3000).noFluidInputs().noFluidOutputs().duration(21 * MINUTES + 20 * SECONDS) + .eut(640).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Hydrogen.getGas(160)) + .fluidOutputs(Materials.Deuterium.getGas(40)).duration(8 * SECONDS).eut(20).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Deuterium.getGas(160)) + .fluidOutputs(Materials.Tritium.getGas(40)).duration(8 * SECONDS).eut(80).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Helium.getGas(80)) + .fluidOutputs(Materials.Helium_3.getGas(5)).duration(8 * SECONDS).eut(80).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1)) + .noFluidInputs().noFluidOutputs().duration(48 * SECONDS + 16 * TICKS).eut(80).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 36)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungstate, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 1), + new ItemStack(Blocks.sand, 36)) + .outputChances(3750, 2500, 9000).noFluidInputs().fluidOutputs(Materials.Helium.getGas(4320)) + .duration(9 * MINUTES + 36 * SECONDS).eut(20).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Netherrack, 36)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1)) + .outputChances(5625, 9900, 5625, 2500).noFluidInputs().noFluidOutputs() + .duration(4 * MINUTES + 48 * SECONDS).eut(20).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)) + .itemOutputs( + Materials.SiliconDioxide.getDust(1), + Materials.Magnesia.getDust(1), + Materials.Quicklime.getDust(1), + Materials.Gold.getNuggets(4), + Materials.Sapphire.getDust(1), + Materials.Tantalite.getDust(1)) + .outputChances(5000, 1000, 1000, 250, 1250, 500).fluidInputs(Materials.Lava.getFluid(400)) + .noFluidOutputs().duration(16 * SECONDS).eut(80).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(20)) + .itemOutputs( + Materials.SiliconDioxide.getDust(5), + Materials.Magnesia.getDust(1), + Materials.Quicklime.getDust(1), + Materials.Gold.getIngots(1), + Materials.Sapphire.getDust(3), + Materials.Tantalite.getDust(1)) + .outputChances(9000, 9000, 9000, 1000, 3750, 4500).fluidInputs(Materials.Lava.getFluid(3600)) + .noFluidOutputs().duration(2 * MINUTES + 24 * SECONDS).eut(80).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.soul_sand, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1), + new ItemStack(Blocks.sand, 1)) + .outputChances(1000, 700, 9000).noFluidInputs().fluidOutputs(Materials.Oil.getFluid(200)) + .duration(10 * SECONDS).eut(12).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Copper, 1), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Tin, 1), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Phosphorus, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Scheelite, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Bauxite, 1)) + .outputChances(2000, 1000, 250, 50, 250, 500).fluidInputs(getFluidStack("ic2pahoehoelava", 100)) + .noFluidOutputs().duration(2 * SECONDS).eut(1024).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(20)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Scheelite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bauxite, 1)) + .outputChances(8000, 4000, 1000, 450, 2250, 4500).fluidInputs(getFluidStack("ic2pahoehoelava", 3600)) + .noFluidOutputs().duration(16 * SECONDS + 8 * TICKS).eut(4096).addTo(sCentrifugeRecipes); // rare earth ( why this still remain - GT_Values.RA.addCentrifugeRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 1L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Neodymium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Yttrium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Lanthanum, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cerium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cadmium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Caesium, 1L), - new int[] { 2500, 2500, 2500, 2500, 2500, 2500 }, - 64, - 20); - - GT_Values.RA.addCentrifugeRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 45), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.BasalticMineralSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Olivine, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Obsidian, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Basalt, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Flint, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.RareEarth, 1L), - new int[] { 2000, 2000, 2000, 2000, 2000, 2000 }, - 64, - 20); - GT_Values.RA.addCentrifugeRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 36L, 45), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BasalticMineralSand, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Olivine, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Basalt, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Flint, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 2L), - new int[] { 9000, 9000, 9000, 9000, 9000, 9000 }, - 518, - 80); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Neodymium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Yttrium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Lanthanum, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cerium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cadmium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Caesium, 1)) + .outputChances(2500, 2500, 2500, 2500, 2500, 2500).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(20).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 45), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.BasalticMineralSand, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Olivine, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Obsidian, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Basalt, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Flint, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.RareEarth, 1)) + .outputChances(2000, 2000, 2000, 2000, 2000, 2000).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(20).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 36L, 45), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BasalticMineralSand, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Olivine, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Basalt, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Flint, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 2)) + .outputChances(9000, 9000, 9000, 9000, 9000, 9000).noFluidInputs().noFluidOutputs() + .duration(25 * SECONDS + 18 * TICKS).eut(80).addTo(sCentrifugeRecipes); // Ash centrifuge recipes - GT_Values.RA.addCentrifugeRecipe( - Materials.Ash.getDust(36), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.Quicklime.getDust(18), - Materials.Potash.getDust(9), - Materials.Magnesia.getDust(1), - Materials.PhosphorousPentoxide.getDust(2), - Materials.SodaAsh.getDust(1), - Materials.BandedIron.getDust(4), - new int[] { 6400, 6000, 4500, 10000, 10000, 10000 }, - 6000, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ash.getDust(36)) + .itemOutputs( + Materials.Quicklime.getDust(18), + Materials.Potash.getDust(9), + Materials.Magnesia.getDust(1), + Materials.PhosphorousPentoxide.getDust(2), + Materials.SodaAsh.getDust(1), + Materials.BandedIron.getDust(4)) + .outputChances(6400, 6000, 4500, 10000, 10000, 10000).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES).eut(30).addTo(sCentrifugeRecipes); + // Stone Dust and Metal Mixture centrifuge recipes - GT_Values.RA.addCentrifugeRecipe( - Materials.Stone.getDust(36), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.Quartzite.getDust(9), - Materials.PotassiumFeldspar.getDust(9), - Materials.Marble.getDust(8), - Materials.Biotite.getDust(4), - Materials.MetalMixture.getDust(3), - Materials.Sodalite.getDust(2), - new int[] { 10000, 10000, 10000, 10000, 10000, 10000 }, - 8640, - 30); - GT_Values.RA.addCentrifugeRecipe( - Materials.MetalMixture.getDust(36), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.BandedIron.getDust(9), - Materials.Bauxite.getDust(9), - Materials.Pyrolusite.getDust(8), - Materials.Barite.getDust(4), - Materials.Chromite.getDust(3), - Materials.Ilmenite.getDust(2), - new int[] { 10000, 10000, 10000, 10000, 10000, 10000 }, - 13125, - (int) TierEU.RECIPE_EV); - - GT_Values.RA.addCentrifugeRecipe( - null, - null, - Materials.Propane.getGas(320), - Materials.LPG.getFluid(290), - null, - null, - null, - null, - null, - null, - null, - 20, - 5); - GT_Values.RA.addCentrifugeRecipe( - null, - null, - Materials.Butane.getGas(320), - Materials.LPG.getFluid(370), - null, - null, - null, - null, - null, - null, - null, - 20, - 5); - - GT_Values.RA.addCentrifugeRecipe( - GT_Values.NI, - GT_Values.NI, - Materials.EnrichedNaquadria.getFluid(9216L), - Materials.FluidNaquadahFuel.getFluid(4806L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 8L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.ElectrumFlux, 8L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 10000, 10000 }, - 600, - 2000000); - - if (isThaumcraftLoaded) { + + GT_Values.RA.stdBuilder().itemInputs(Materials.Stone.getDust(36)) + .itemOutputs( + Materials.Quartzite.getDust(9), + Materials.PotassiumFeldspar.getDust(9), + Materials.Marble.getDust(8), + Materials.Biotite.getDust(4), + Materials.MetalMixture.getDust(3), + Materials.Sodalite.getDust(2)) + .outputChances(10000, 10000, 10000, 10000, 10000, 10000).noFluidInputs().noFluidOutputs() + .duration(7 * MINUTES + 12 * SECONDS).eut(30).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.MetalMixture.getDust(36)) + .itemOutputs( + Materials.BandedIron.getDust(9), + Materials.Bauxite.getDust(9), + Materials.Pyrolusite.getDust(8), + Materials.Barite.getDust(4), + Materials.Chromite.getDust(3), + Materials.Ilmenite.getDust(2)) + .outputChances(10000, 10000, 10000, 10000, 10000, 10000).noFluidInputs().noFluidOutputs() + .duration(10 * MINUTES + 56 * SECONDS + 5 * TICKS).eut((int) TierEU.RECIPE_EV) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Propane.getGas(320)) + .fluidOutputs(Materials.LPG.getFluid(290)).duration(20 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Butane.getGas(320)) + .fluidOutputs(Materials.LPG.getFluid(370)).duration(20 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().noItemInputs() + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.ElectrumFlux, 8)) + .outputChances(10000, 10000).fluidInputs(Materials.EnrichedNaquadria.getFluid(9216)) + .fluidOutputs(Materials.FluidNaquadahFuel.getFluid(4806)).duration(30 * SECONDS).eut(2000000) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1), + ItemList.TE_Slag.get(1L, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1))) + .noFluidInputs().noFluidOutputs().duration(12 * SECONDS + 10 * TICKS).eut(5).addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.magma_cream, 1)) + .itemOutputs(new ItemStack(Items.blaze_powder, 1), new ItemStack(Items.slime_ball, 1)).noFluidInputs() + .noFluidOutputs().duration(25 * SECONDS).eut(5).addTo(sCentrifugeRecipes); + + if (Thaumcraft.isModLoaded()) { // air - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 144), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedAir, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 1024, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 144), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedAir, 1)).noFluidInputs() + .noFluidOutputs().duration(51 * SECONDS + 4 * TICKS).eut(12).addTo(sCentrifugeRecipes); + // fire - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 146), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedFire, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 1024, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 146), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedFire, 1)).noFluidInputs() + .noFluidOutputs().duration(51 * SECONDS + 4 * TICKS).eut(12).addTo(sCentrifugeRecipes); + // aqua - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 147), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedWater, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 1024, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 147), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedWater, 1)).noFluidInputs() + .noFluidOutputs().duration(51 * SECONDS + 4 * TICKS).eut(12).addTo(sCentrifugeRecipes); + // terra - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 145), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEarth, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 1024, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 145), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEarth, 1)).noFluidInputs() + .noFluidOutputs().duration(51 * SECONDS + 4 * TICKS).eut(12).addTo(sCentrifugeRecipes); + // ordo - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 148), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedOrder, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 1024, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 148), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedOrder, 1)).noFluidInputs() + .noFluidOutputs().duration(51 * SECONDS + 4 * TICKS).eut(12).addTo(sCentrifugeRecipes); + // perditio - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 149), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEntropy, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 1024, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 149), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEntropy, 1)).noFluidInputs() + .noFluidOutputs().duration(51 * SECONDS + 4 * TICKS).eut(12).addTo(sCentrifugeRecipes); + // Nethershard - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 152), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - getModItem("ThaumicTinkerer", "kamiResource", 1L, 6), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 128, - 512); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 152), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(ThaumicTinkerer.modID, "kamiResource", 1L, 6)).noFluidInputs() + .noFluidOutputs().duration(6 * SECONDS + 8 * TICKS).eut(512).addTo(sCentrifugeRecipes); + // Endshard - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 153), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - getModItem("ThaumicTinkerer", "kamiResource", 1L, 7), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 128, - 512); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 153), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(ThaumicTinkerer.modID, "kamiResource", 1L, 7)).noFluidInputs() + .noFluidOutputs().duration(6 * SECONDS + 8 * TICKS).eut(512).addTo(sCentrifugeRecipes); } - if (isExtraUtilitiesLoaded) { + if (ExtraUtilities.isModLoaded()) { // Caelestis red - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 154), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - getModItem("ExtraUtilities", "greenscreen", 1L, 2), - getModItem("ExtraUtilities", "greenscreen", 1L, 10), - getModItem("ExtraUtilities", "greenscreen", 1L, 14), - getModItem("ExtraUtilities", "greenscreen", 1L, 1), - getModItem("ExtraUtilities", "greenscreen", 1L, 12), - getModItem("ExtraUtilities", "greenscreen", 1L, 6), - null, - 512, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 154), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 2), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 10), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 14), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 1), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 12), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 6)) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS + 12 * TICKS).eut(12) + .addTo(sCentrifugeRecipes); + // Caelestis green - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 155), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - getModItem("ExtraUtilities", "greenscreen", 1L, 13), - getModItem("ExtraUtilities", "greenscreen", 1L, 5), - getModItem("ExtraUtilities", "greenscreen", 1L, 4), - getModItem("ExtraUtilities", "greenscreen", 1L, 8), - getModItem("ExtraUtilities", "greenscreen", 1L, 0), - NI, - null, - 512, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 155), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 13), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 5), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 4), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 8), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 0), + NI) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS + 12 * TICKS).eut(12) + .addTo(sCentrifugeRecipes); + // Caelestis blue - GT_Values.RA.addCentrifugeRecipe( - getModItem("gregtech", "gt.comb", 1L, 156), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - null, - getModItem("ExtraUtilities", "greenscreen", 1L, 3), - getModItem("ExtraUtilities", "greenscreen", 1L, 9), - getModItem("ExtraUtilities", "greenscreen", 1L, 11), - getModItem("ExtraUtilities", "greenscreen", 1L, 7), - getModItem("ExtraUtilities", "greenscreen", 1L, 15), - NI, - null, - 512, - 12); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.modID, "gt.comb", 1L, 156), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 3), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 9), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 11), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 7), + getModItem(ExtraUtilities.modID, "greenscreen", 1L, 15), + NI) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS + 12 * TICKS).eut(12) + .addTo(sCentrifugeRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ChemicalBathRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ChemicalBathRecipes.java index 5e33922990..b29df79b72 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ChemicalBathRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ChemicalBathRecipes.java @@ -1,7 +1,12 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.BuildCraftTransport; +import static gregtech.api.enums.ModIDs.Railcraft; import static gregtech.api.util.GT_ModHandler.getModItem; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +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 net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -16,819 +21,202 @@ public class ChemicalBathRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addChemicalBathRecipe( - ItemList.Food_Raw_Fries.get(1L), - Materials.FryingOilHot.getFluid(10L), - ItemList.Food_Fries.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 16, - 4); - GT_Values.RA.addChemicalBathRecipe( - GT_ModHandler.getIC2Item("dynamite", 1L), - Materials.Glue.getFluid(10L), - GT_ModHandler.getIC2Item("stickyDynamite", 1L), - GT_Values.NI, - GT_Values.NI, - null, - 16, - 4); - - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1L), - Materials.Concrete.getMolten(144L), - GT_ModHandler.getIC2Item("reinforcedStone", 1L), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), - Materials.Water.getFluid(125L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 12, - 4); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), - Materials.Water.getFluid(100L), - new ItemStack(Items.paper, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Paper, 1L), - Materials.Water.getFluid(100L), - new ItemStack(Items.paper, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Items.reeds, 1, 32767), - Materials.Water.getFluid(100L), - new ItemStack(Items.paper, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), - GT_ModHandler.getDistilledWater(125L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 12, - 4); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), - GT_ModHandler.getDistilledWater(100L), - new ItemStack(Items.paper, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Paper, 1L), - GT_ModHandler.getDistilledWater(100L), - new ItemStack(Items.paper, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Items.reeds, 1, 32767), - GT_ModHandler.getDistilledWater(100L), - new ItemStack(Items.paper, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 1), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 2), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 3), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 4), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 5), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 6), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 7), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 8), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 9), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 10), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 11), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 12), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 13), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 14), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 15), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.wool, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 1), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 2), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 3), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 4), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 5), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 6), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 7), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 8), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 9), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 10), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 11), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 12), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 13), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 14), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.carpet, 1, 15), - Materials.Chlorine.getGas(25L), - new ItemStack(Blocks.carpet, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.stained_hardened_clay, 1, 32767), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.hardened_clay, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.stained_glass, 1, 32767), - Materials.Chlorine.getGas(50L), - new ItemStack(Blocks.glass, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.stained_glass_pane, 1, 32767), - Materials.Chlorine.getGas(20L), - new ItemStack(Blocks.glass_pane, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 400, - 2); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 8), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 9), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 1), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 10), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 2), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 11), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 3), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 12), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 4), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 13), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 5), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 14), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 6), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 15), - Materials.Water.getFluid(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 7), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 8), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 0), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 9), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 1), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 10), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 2), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 11), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 3), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 12), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 4), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 13), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 5), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 14), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 6), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(GregTech_API.sBlockConcretes, 1, 15), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 7), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Bronze, 1L), - Materials.Concrete.getMolten(144L), - ItemList.Block_BronzePlate.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1L), - Materials.Steel.getMolten(288L), - ItemList.Block_SteelPlate.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 250, - 16); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Titanium, 1L), - Materials.Titanium.getMolten(144L), - ItemList.Block_TitaniumPlate.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1L), - Materials.TungstenSteel.getMolten(144L), - ItemList.Block_TungstenSteelReinforced.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 350, - 64); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iridium, 1L), - Materials.Iridium.getMolten(144L), - ItemList.Block_IridiumTungstensteel.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 400, - (int) TierEU.RECIPE_MV); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Naquadah, 1L), - Materials.Osmium.getMolten(144L), - ItemList.Block_NaquadahPlate.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 450, - 256); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1L), - Materials.Naquadria.getMolten(144L), - ItemList.Block_NeutroniumPlate.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 500, - (int) TierEU.RECIPE_HV); - - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1L), - Materials.Concrete.getMolten(144L), - ItemList.Block_TungstenSteelReinforced.get(1L), - GT_Values.NI, - GT_Values.NI, - null, - 200, - 4); + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Raw_Fries.get(1)).itemOutputs(ItemList.Food_Fries.get(1)) + .fluidInputs(Materials.FryingOilHot.getFluid(10)).noFluidOutputs().duration(16 * TICKS).eut(4) + .addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("dynamite", 1)) + .itemOutputs(GT_ModHandler.getIC2Item("stickyDynamite", 1)).fluidInputs(Materials.Glue.getFluid(10)) + .noFluidOutputs().duration(16 * TICKS).eut(4).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("reinforcedStone", 1)) + .fluidInputs(Materials.Concrete.getMolten(144)).noFluidOutputs().duration(10 * SECONDS).eut(4) + .addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1)) + .fluidInputs(Materials.Water.getFluid(125)).noFluidOutputs().duration(12 * TICKS).eut(4) + .addTo(sChemicalBathRecipes); + + // paper creation recipes + ItemStack[] paperSources = new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Paper, 1L), new ItemStack(Items.reeds, 1, 32767) }; + for (ItemStack paperSource : paperSources) { + GT_Values.RA.stdBuilder().itemInputs(paperSource).itemOutputs(new ItemStack(Items.paper, 1, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(4) + .addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(paperSource).itemOutputs(new ItemStack(Items.paper, 1, 0)) + .fluidInputs(GT_ModHandler.getDistilledWater(100)).noFluidOutputs().duration(10 * SECONDS).eut(4) + .addTo(sChemicalBathRecipes); + } + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1)) + .fluidInputs(GT_ModHandler.getDistilledWater(125)).noFluidOutputs().duration(12 * TICKS).eut(4) + .addTo(sChemicalBathRecipes); + + for (int i = 1; i < 16; i++) { + // wool cleaning recipes + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.wool, 1, i)) + .itemOutputs(new ItemStack(Blocks.wool, 1, 0)).fluidInputs(Materials.Chlorine.getGas(50)) + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sChemicalBathRecipes); + + // carpet cleaning recipes + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.carpet, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.carpet, 1, 0)).fluidInputs(Materials.Chlorine.getGas(25)) + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sChemicalBathRecipes); + } + + // stained hardened clay cleaning + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stained_hardened_clay, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.hardened_clay, 1, 0)).fluidInputs(Materials.Chlorine.getGas(50)) + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sChemicalBathRecipes); + + // stained glass cleaning + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stained_glass, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.glass, 1, 0)).fluidInputs(Materials.Chlorine.getGas(50)) + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sChemicalBathRecipes); + + // stained glass pane cleaning + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stained_glass_pane, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.glass_pane, 1, 0)).fluidInputs(Materials.Chlorine.getGas(20)) + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sChemicalBathRecipes); + + // light -> dark concrete recipes + for (int i = 0; i < 8; i++) { + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(GregTech_API.sBlockConcretes, 1, i + 8)) + .itemOutputs(new ItemStack(GregTech_API.sBlockConcretes, 1, i)) + .fluidInputs(Materials.Water.getFluid(250)).noFluidOutputs().duration(10 * SECONDS).eut(4) + .addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(GregTech_API.sBlockConcretes, 1, i + 8)) + .itemOutputs(new ItemStack(GregTech_API.sBlockConcretes, 1, i)) + .fluidInputs(GT_ModHandler.getDistilledWater(250)).noFluidOutputs().duration(10 * SECONDS).eut(4) + .addTo(sChemicalBathRecipes); + } + + // reinforced blocks + { + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Bronze, 1)) + .itemOutputs(ItemList.Block_BronzePlate.get(1)).fluidInputs(Materials.Concrete.getMolten(144)) + .noFluidOutputs().duration(10 * SECONDS).eut(4).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1)) + .itemOutputs(ItemList.Block_SteelPlate.get(1)).fluidInputs(Materials.Steel.getMolten(288)) + .noFluidOutputs().duration(12 * SECONDS + 10 * TICKS).eut(16).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Titanium, 1)) + .itemOutputs(ItemList.Block_TitaniumPlate.get(1)).fluidInputs(Materials.Titanium.getMolten(144)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1)) + .itemOutputs(ItemList.Block_TungstenSteelReinforced.get(1)) + .fluidInputs(Materials.TungstenSteel.getMolten(144)).noFluidOutputs() + .duration(17 * SECONDS + 10 * TICKS).eut(64).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iridium, 1)) + .itemOutputs(ItemList.Block_IridiumTungstensteel.get(1)) + .fluidInputs(Materials.Iridium.getMolten(144)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Naquadah, 1)) + .itemOutputs(ItemList.Block_NaquadahPlate.get(1)).fluidInputs(Materials.Osmium.getMolten(144)) + .noFluidOutputs().duration(22 * SECONDS + 10 * TICKS).eut(256).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 1)) + .itemOutputs(ItemList.Block_NeutroniumPlate.get(1)).fluidInputs(Materials.Naquadria.getMolten(144)) + .noFluidOutputs().duration(25 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1)) + .itemOutputs(ItemList.Block_TungstenSteelReinforced.get(1)) + .fluidInputs(Materials.Concrete.getMolten(144)).noFluidOutputs().duration(10 * SECONDS).eut(4) + .addTo(sChemicalBathRecipes); + } for (int j = 0; j < Dyes.dyeRed.getSizeOfFluidList(); j++) { - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1L), - Dyes.dyeRed.getFluidDye(j, 72L), - getModItem("BuildCraft|Transport", "pipeWire", 4L, 0), - GT_Values.NI, - GT_Values.NI, - null, - 32, - 16); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1)) + .itemOutputs(getModItem(BuildCraftTransport.modID, "pipeWire", 4L, 0)) + .fluidInputs(Dyes.dyeRed.getFluidDye(j, 72)).noFluidOutputs().duration(1 * SECONDS + 12 * TICKS) + .eut(16).addTo(sChemicalBathRecipes); } for (int j = 0; j < Dyes.dyeBlue.getSizeOfFluidList(); j++) { - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1L), - Dyes.dyeBlue.getFluidDye(j, 72L), - getModItem("BuildCraft|Transport", "pipeWire", 4L, 1), - GT_Values.NI, - GT_Values.NI, - null, - 32, - 16); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1)) + .itemOutputs(getModItem(BuildCraftTransport.modID, "pipeWire", 4L, 1)) + .fluidInputs(Dyes.dyeBlue.getFluidDye(j, 72)).noFluidOutputs().duration(1 * SECONDS + 12 * TICKS) + .eut(16).addTo(sChemicalBathRecipes); } for (int j = 0; j < Dyes.dyeGreen.getSizeOfFluidList(); j++) { - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1L), - Dyes.dyeGreen.getFluidDye(j, 72L), - getModItem("BuildCraft|Transport", "pipeWire", 4L, 2), - GT_Values.NI, - GT_Values.NI, - null, - 32, - 16); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1)) + .itemOutputs(getModItem(BuildCraftTransport.modID, "pipeWire", 4L, 2)) + .fluidInputs(Dyes.dyeGreen.getFluidDye(j, 72)).noFluidOutputs().duration(1 * SECONDS + 12 * TICKS) + .eut(16).addTo(sChemicalBathRecipes); } for (int j = 0; j < Dyes.dyeYellow.getSizeOfFluidList(); j++) { - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1L), - Dyes.dyeYellow.getFluidDye(j, 72L), - getModItem("BuildCraft|Transport", "pipeWire", 4L, 3), - GT_Values.NI, - GT_Values.NI, - null, - 32, - 16); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1)) + .itemOutputs(getModItem(BuildCraftTransport.modID, "pipeWire", 4L, 3)) + .fluidInputs(Dyes.dyeYellow.getFluidDye(j, 72)).noFluidOutputs().duration(1 * SECONDS + 12 * TICKS) + .eut(16).addTo(sChemicalBathRecipes); } - for (byte i = 0; i < 16; i = (byte) (i + 1)) { for (int j = 0; j < Dyes.VALUES[i].getSizeOfFluidList(); j++) { if (i != 15) { - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.wool, 1, 0), - Dyes.VALUES[i].getFluidDye(j, 72L), - new ItemStack(Blocks.wool, 1, 15 - i), - GT_Values.NI, - GT_Values.NI, - null, - 64, - 2); + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.wool, 1, 0)) + .itemOutputs(new ItemStack(Blocks.wool, 1, 15 - i)) + .fluidInputs(Dyes.VALUES[i].getFluidDye(j, 72)).noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(2).addTo(sChemicalBathRecipes); } - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.glass, 1, 0), - Dyes.VALUES[i].getFluidDye(j, 18L), - new ItemStack(Blocks.stained_glass, 1, 15 - i), - GT_Values.NI, - GT_Values.NI, - null, - 64, - 2); - - GT_Values.RA.addChemicalBathRecipe( - new ItemStack(Blocks.hardened_clay, 1, 0), - Dyes.VALUES[i].getFluidDye(j, 18L), - new ItemStack(Blocks.stained_hardened_clay, 1, 15 - i), - GT_Values.NI, - GT_Values.NI, - null, - 64, - 2); + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.glass, 1, 0)) + .itemOutputs(new ItemStack(Blocks.stained_glass, 1, 15 - i)) + .fluidInputs(Dyes.VALUES[i].getFluidDye(j, 18)).noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(2).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.hardened_clay, 1, 0)) + .itemOutputs(new ItemStack(Blocks.stained_hardened_clay, 1, 15 - i)) + .fluidInputs(Dyes.VALUES[i].getFluidDye(j, 18)).noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(2).addTo(sChemicalBathRecipes); } } // Rn relate quantum recipe - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderEye, 1), - Materials.Radon.getGas(250), - ItemList.QuantumEye.get(1L), - null, - null, - null, - 480, - 384); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1), - Materials.Radon.getGas(1250), - ItemList.QuantumStar.get(1L), - null, - null, - null, - 1920, - 384); - - GT_Values.RA.addChemicalBathRecipe( - ItemList.WovenKevlar.get(1L), - MaterialsKevlar.PolyurethaneResin.getFluid(1000), - GT_Values.NF, - MaterialsKevlar.Kevlar.getPlates(1), - GT_Values.NI, - GT_Values.NI, - null, - 1200, - (int) TierEU.RECIPE_LV); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderEye, 1)) + .itemOutputs(ItemList.QuantumEye.get(1)).fluidInputs(Materials.Radon.getGas(250)).noFluidOutputs() + .duration(24 * SECONDS).eut(384).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1)) + .itemOutputs(ItemList.QuantumStar.get(1)).fluidInputs(Materials.Radon.getGas(1250)).noFluidOutputs() + .duration(1 * MINUTES + 36 * SECONDS).eut(384).addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.WovenKevlar.get(1)) + .itemOutputs(MaterialsKevlar.Kevlar.getPlates(1)) + .fluidInputs(MaterialsKevlar.PolyurethaneResin.getFluid(1000)).noFluidOutputs().duration(60 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(sChemicalBathRecipes); // Na + H2O = NaOH + H - GT_Values.RA.addChemicalBathRecipe( - Materials.Sodium.getDust(1), - Materials.Water.getFluid(1000), - Materials.Hydrogen.getGas(1000), - Materials.SodiumHydroxide.getDust(3), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 4); + GT_Values.RA.stdBuilder().itemInputs(Materials.Sodium.getDust(1)) + .itemOutputs(Materials.SodiumHydroxide.getDust(3)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(1000)).duration(5 * SECONDS).eut(4).addTo(sChemicalBathRecipes); // Custom Sodium Persulfate Ore Processing Recipes - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Tantalite, 1), - Materials.SodiumPersulfate.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Tantalite, 1), - Materials.Tantalum.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 3000, 4000 }, - 800, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Pyrolusite, 1), - Materials.SodiumPersulfate.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Pyrolusite, 1), - Materials.Manganese.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Quartzite, 1), - Materials.SodiumPersulfate.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Quartzite, 1), - Materials.CertusQuartz.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 3000, 4000 }, - 800, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.CertusQuartz, 1), - Materials.SodiumPersulfate.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.CertusQuartz, 1), - Materials.Barium.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Bauxite, 1), - Materials.SodiumPersulfate.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Bauxite, 1), - Materials.Rutile.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 5000, 4000 }, - 800, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Thorium, 1), - Materials.SodiumPersulfate.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Thorium, 1), - Materials.Uranium.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 3000, 4000 }, - 800, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Stibnite, 1), - Materials.SodiumPersulfate.getFluid(100L), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Stibnite, 1), - Materials.Antimony.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 5000, 4000 }, - 800, - 8); - - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1L), - Materials.Creosote.getFluid(100L), - getModItem(MOD_ID_RC, "cube", 1L, 8), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 4); + Materials[] materialList = new Materials[] { Materials.Tantalite, Materials.Pyrolusite, Materials.Quartzite, + Materials.CertusQuartz, Materials.Bauxite, Materials.Thorium, Materials.Stibnite }; + + for (Materials material : materialList) { + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushed, material, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, material, 1), + Materials.Tantalum.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1)) + .outputChances(10000, 3000, 4000).fluidInputs(Materials.SodiumPersulfate.getFluid(100)) + .noFluidOutputs().duration(40 * SECONDS).eut(8).addTo(sChemicalBathRecipes); + } + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 1)) + .itemOutputs(getModItem(Railcraft.modID, "cube", 1, 8)).fluidInputs(Materials.Creosote.getFluid(100)) + .noFluidOutputs().duration(5 * SECONDS).eut(4).addTo(sChemicalBathRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ChemicalRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ChemicalRecipes.java index a1d6f8b3a6..ce0560ca1b 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ChemicalRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ChemicalRecipes.java @@ -1,8 +1,13 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.*; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes; +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.UniversalChemical; import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.init.Blocks; @@ -13,6 +18,7 @@ import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.*; +import gregtech.api.objects.GT_FluidStack; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -23,5018 +29,4080 @@ public class ChemicalRecipes implements Runnable { public void run() { singleBlockOnly(); multiblockOnly(); + registerBoth(); + polymerizationRecipes(); - GT_Values.RA.addChemicalRecipe( - new ItemStack(Items.paper, 1), - new ItemStack(Items.string, 1), - Materials.Glyceryl.getFluid(500), - GT_Values.NF, - GT_ModHandler.getIC2Item("dynamite", 1L), - 160, - 4); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Galena, 3), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Sphalerite, 1), - Materials.SulfuricAcid.getFluid(4000), - new FluidStack(ItemList.sIndiumConcentrate, 8000), - null, - null, - 60, - 150); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4), - GT_Utility.getIntegratedCircuit(1), - new FluidStack(ItemList.sIndiumConcentrate, 8000), - new FluidStack(ItemList.sLeadZincSolution, 8000), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Indium, 1), - 50, - 600); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 36), - GT_Utility.getIntegratedCircuit(9), - new FluidStack(ItemList.sIndiumConcentrate, 72000), - new FluidStack(ItemList.sLeadZincSolution, 72000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Indium, 1), - 450, - 600); + } + + public void registerBoth() { + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.paper, 1), new ItemStack(Items.string, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("dynamite", 1)).fluidInputs(Materials.Glyceryl.getFluid(500)) + .noFluidOutputs().duration(8 * SECONDS).eut(4).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Indium, 1)) + .fluidInputs(new FluidStack(ItemList.sIndiumConcentrate, 8000)) + .fluidOutputs(new FluidStack(ItemList.sLeadZincSolution, 8000)).duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 36), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Indium, 1)) + .fluidInputs(new FluidStack(ItemList.sIndiumConcentrate, 72000)) + .fluidOutputs(new FluidStack(ItemList.sLeadZincSolution, 72000)).duration(22 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); // Platinum Group Sludge chain - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Pentlandite, 1), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(1000L), - new FluidStack(ItemList.sNickelSulfate, 2000), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.PlatinumGroupSludge, 1), - 50, - 30); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Chalcopyrite, 1), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(1000L), - new FluidStack(ItemList.sBlueVitriol, 2000), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.PlatinumGroupSludge, 1), - 50, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Pentlandite, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.PlatinumGroupSludge, 1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(new FluidStack(ItemList.sNickelSulfate, 2000)).duration(2 * SECONDS + 10 * TICKS).eut(30) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Chalcopyrite, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.PlatinumGroupSludge, 1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(new FluidStack(ItemList.sBlueVitriol, 2000)).duration(2 * SECONDS + 10 * TICKS).eut(30) + .addTo(UniversalChemical); // Fe + 3HCl = FeCl3 + 3H - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), - ItemList.Cell_Empty.get(3), - Materials.HydrochloricAcid.getFluid(3000), - Materials.IronIIIChloride.getFluid(1000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3), - 400, - 30); - - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedGold, 8L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 8L), - new FluidStack(FluidRegistry.getFluid("ic2coolant"), 1000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thaumium, 16L), - 400, - 480); - - GT_Values.RA.addChemicalRecipe( - getModItem("GalaxySpace", "item.UnknowCrystal", 4L), - Materials.Osmiridium.getDust(2), - Materials.GrowthMediumSterilized.getFluid(1000L), - getFluidStack("bacterialsludge", 1000), - ItemList.Circuit_Chip_Stemcell.get(64L), - GT_Values.NI, - 600, - 30720); - GT_Values.RA.addChemicalRecipe( - ItemList.Circuit_Chip_Stemcell.get(32L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CosmicNeutronium, 4), - Materials.BioMediumSterilized.getFluid(2000L), - getFluidStack("mutagen", 2000), - ItemList.Circuit_Chip_Biocell.get(32L), - GT_Values.NI, - 1200, - 500000); - - GT_Values.RA.addChemicalRecipe( - new ItemStack(Items.sugar), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plastic, 1), - new FluidStack(ItemList.sToluene, 133), - GT_Values.NF, - ItemList.GelledToluene.get(2), - 140, - 192); - GT_Values.RA.addChemicalRecipe( - new ItemStack(Items.sugar, 9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1), - new FluidStack(ItemList.sToluene, 1197), - GT_Values.NF, - ItemList.GelledToluene.get(18), - 1260, - 192); - GT_Values.RA.addChemicalRecipe( - ItemList.GelledToluene.get(4), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(250), - GT_Values.NF, - new ItemStack(Blocks.tnt, 1), - 200, - 24); - GT_Values.RA.addChemicalRecipe( - ItemList.GelledToluene.get(4), - GT_Utility.getIntegratedCircuit(1), - new FluidStack(ItemList.sNitrationMixture, 200), - Materials.DilutedSulfuricAcid.getFluid(150), - GT_ModHandler.getIC2Item("industrialTnt", 1L), - 80, - 480); - - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_Utility.getIntegratedCircuit(4), - Materials.NatruralGas.getGas(16000), - Materials.Gas.getGas(16000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NatruralGas, 16L), - GT_Utility.getIntegratedCircuit(4), - Materials.Hydrogen.getGas(2000), - Materials.HydricSulfide.getGas(1000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Gas, 16L), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_Utility.getIntegratedCircuit(4), - Materials.SulfuricGas.getGas(16000), - Materials.Gas.getGas(16000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricGas, 16L), - GT_Utility.getIntegratedCircuit(4), - Materials.Hydrogen.getGas(2000), - Materials.HydricSulfide.getGas(1000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Gas, 16L), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_Utility.getIntegratedCircuit(4), - Materials.SulfuricNaphtha.getFluid(12000), - Materials.Naphtha.getFluid(12000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricNaphtha, 12L), - GT_Utility.getIntegratedCircuit(4), - Materials.Hydrogen.getGas(2000), - Materials.HydricSulfide.getGas(1000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naphtha, 12L), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_Utility.getIntegratedCircuit(4), - Materials.SulfuricLightFuel.getFluid(12000), - Materials.LightFuel.getFluid(12000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricLightFuel, 12L), - GT_Utility.getIntegratedCircuit(4), - Materials.Hydrogen.getGas(2000), - Materials.HydricSulfide.getGas(1000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 12L), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_Utility.getIntegratedCircuit(4), - Materials.SulfuricHeavyFuel.getFluid(8000), - Materials.HeavyFuel.getFluid(8000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricHeavyFuel, 8L), - GT_Utility.getIntegratedCircuit(4), - Materials.Hydrogen.getGas(2000), - Materials.HydricSulfide.getGas(1000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 8L), - 160); - - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), - GT_Utility.getIntegratedCircuit(1), - Materials.Naphtha.getFluid(576), - Materials.Polycaprolactam.getMolten(1296), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Potassium, 1), - 640); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 9L), - GT_Utility.getIntegratedCircuit(9), - Materials.Naphtha.getFluid(5184), - Materials.Polycaprolactam.getMolten(11664), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1), - 5760); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), ItemList.Cell_Empty.get(3)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(3000)) + .fluidOutputs(Materials.IronIIIChloride.getFluid(1000)).duration(20 * SECONDS).eut(30) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedGold, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 8)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thaumium, 16)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("ic2coolant"), 1000)).noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GalaxySpace.modID, "item.UnknowCrystal", 4), Materials.Osmiridium.getDust(2)) + .itemOutputs(ItemList.Circuit_Chip_Stemcell.get(64)) + .fluidInputs(Materials.GrowthMediumSterilized.getFluid(1000)) + .fluidOutputs(getFluidStack("bacterialsludge", 1000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LuV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Chip_Stemcell.get(32), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CosmicNeutronium, 4)) + .itemOutputs(ItemList.Circuit_Chip_Biocell.get(32)) + .fluidInputs(Materials.BioMediumSterilized.getFluid(2000)).fluidOutputs(getFluidStack("mutagen", 2000)) + .duration(60 * SECONDS).eut(500000).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Items.sugar), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plastic, 1)) + .itemOutputs(ItemList.GelledToluene.get(2)).fluidInputs(new FluidStack(ItemList.sToluene, 133)) + .noFluidOutputs().duration(7 * SECONDS).eut(192).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Items.sugar, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1)) + .itemOutputs(ItemList.GelledToluene.get(18)).fluidInputs(new FluidStack(ItemList.sToluene, 1197)) + .noFluidOutputs().duration(1 * MINUTES + 3 * SECONDS).eut(192).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.GelledToluene.get(4), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Blocks.tnt, 1)).fluidInputs(Materials.SulfuricAcid.getFluid(250)) + .noFluidOutputs().duration(10 * SECONDS).eut(24).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.GelledToluene.get(4), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_ModHandler.getIC2Item("industrialTnt", 1)) + .fluidInputs(new FluidStack(ItemList.sNitrationMixture, 200)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(150)).duration(4 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1), + Materials.Empty.getCells(1)) + .fluidInputs(Materials.NatruralGas.getGas(16000)).fluidOutputs(Materials.Gas.getGas(16000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NatruralGas, 16), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Gas, 16)) + .fluidInputs(Materials.Hydrogen.getGas(2000)).fluidOutputs(Materials.HydricSulfide.getGas(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1), + Materials.Empty.getCells(1)) + .fluidInputs(Materials.SulfuricGas.getGas(16000)).fluidOutputs(Materials.Gas.getGas(16000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricGas, 16), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Gas, 16)) + .fluidInputs(Materials.Hydrogen.getGas(2000)).fluidOutputs(Materials.HydricSulfide.getGas(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1), + Materials.Empty.getCells(1)) + .fluidInputs(Materials.SulfuricNaphtha.getFluid(12000)).fluidOutputs(Materials.Naphtha.getFluid(12000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricNaphtha, 12), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naphtha, 12)) + .fluidInputs(Materials.Hydrogen.getGas(2000)).fluidOutputs(Materials.HydricSulfide.getGas(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1), + Materials.Empty.getCells(1)) + .fluidInputs(Materials.SulfuricLightFuel.getFluid(12000)) + .fluidOutputs(Materials.LightFuel.getFluid(12000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricLightFuel, 12), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 12)) + .fluidInputs(Materials.Hydrogen.getGas(2000)).fluidOutputs(Materials.HydricSulfide.getGas(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1), + Materials.Empty.getCells(1)) + .fluidInputs(Materials.SulfuricHeavyFuel.getFluid(8000)) + .fluidOutputs(Materials.HeavyFuel.getFluid(8000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricHeavyFuel, 8), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 8)) + .fluidInputs(Materials.Hydrogen.getGas(2000)).fluidOutputs(Materials.HydricSulfide.getGas(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Potassium, 1)) + .fluidInputs(Materials.Naphtha.getFluid(576)).fluidOutputs(Materials.Polycaprolactam.getMolten(1296)) + .duration(32 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 9), + GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1)) + .fluidInputs(Materials.Naphtha.getFluid(5184)).fluidOutputs(Materials.Polycaprolactam.getMolten(11664)) + .duration(4 * MINUTES + 48 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); for (Fluid tFluid : new Fluid[] { FluidRegistry.WATER, GT_ModHandler.getDistilledWater(1L).getFluid() }) { - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(1L), - 100); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(1L), - 100); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(4L), - 400); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(4L), - 400); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(4L), - 400); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(4L), - 400); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(3L), - 300); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), - new FluidStack(tFluid, 1000), - GT_Values.NF, - ItemList.IC2_Fertilizer.get(2L), - 200); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3)) + .itemOutputs(ItemList.IC2_Fertilizer.get(1)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(1)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(4)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(4)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(4)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(4)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(3)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1)) + .itemOutputs(ItemList.IC2_Fertilizer.get(2)).fluidInputs(new FluidStack(tFluid, 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); } // 3quartz dust + Na + H2O = 3quartz gem (Na loss - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - Materials.Water.getFluid(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 3L), - 500); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - Materials.Water.getFluid(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 3L), - 500); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - Materials.Water.getFluid(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Quartzite, 3L), - 500); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_ModHandler.getDistilledWater(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 3L), - 500); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_ModHandler.getDistilledWater(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 3L), - 500); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_ModHandler.getDistilledWater(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Quartzite, 3L), - 500); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 3)) + .fluidInputs(Materials.Water.getFluid(1000)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 3)) + .fluidInputs(Materials.Water.getFluid(1000)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Quartzite, 3)) + .fluidInputs(Materials.Water.getFluid(1000)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 3)) + .fluidInputs(GT_ModHandler.getDistilledWater(1000)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 3)) + .fluidInputs(GT_ModHandler.getDistilledWater(1000)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Quartzite, 3)) + .fluidInputs(GT_ModHandler.getDistilledWater(1000)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // 3UO2 + 4Al = 3U + 2Al2O3 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uraninite, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 10L), - 1000); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uraninite, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 10)) + .noFluidInputs().noFluidOutputs().duration(50 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + // UO2 + 2Mg = U + 2MgO - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uraninite, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4L), - 1000); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uraninite, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4)) + .noFluidInputs().noFluidOutputs().duration(50 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + // Ca + C + 3O = CaCO3 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), - Materials.Oxygen.getGas(3000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 5L), - 500); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 5)) + .fluidInputs(Materials.Oxygen.getGas(3000)).noFluidOutputs().duration(25 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + // C + 4H = CH4 - GT_Values.RA.addChemicalRecipe( - Materials.Carbon.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(4000L), - Materials.Methane.getGas(1000L), - GT_Values.NI, - 200); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Carbon.getDust(1), - Materials.Empty.getCells(1), - Materials.Hydrogen.getGas(4000L), - GT_Values.NF, - Materials.Methane.getCells(1), - GT_Values.NI, - 200, - 30); - // O + 2H = H2O - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_Utility.getIntegratedCircuit(22), - Materials.Hydrogen.getGas(2000L), - GT_ModHandler.getDistilledWater(1000L), - ItemList.Cell_Empty.get(1L), - GT_Values.NI, - 10, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), - GT_Utility.getIntegratedCircuit(22), - Materials.Oxygen.getGas(500L), - GT_ModHandler.getDistilledWater(500L), - ItemList.Cell_Empty.get(1L), - GT_Values.NI, - 5, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(22) }, - new FluidStack[] { Materials.Hydrogen.getGas(16000), Materials.Oxygen.getGas(8000) }, - new FluidStack[] { GT_ModHandler.getDistilledWater(8000) }, - new ItemStack[] {}, - 80, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Hydrogen.getGas(4000)) + .fluidOutputs(Materials.Methane.getGas(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + // TiO2 + 2C + 4Cl = TiCl4 + 2CO - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Rutile, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Carbon, 2L), - Materials.Chlorine.getGas(4000L), - Materials.Titaniumtetrachloride.getFluid(1000L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CarbonMonoxide, 2L), - 400, - 480); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Rutile, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 2L), - Materials.Chlorine.getGas(4000L), - Materials.Titaniumtetrachloride.getFluid(1000L), - GT_Values.NI, - 400, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Rutile, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Carbon, 2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CarbonMonoxide, 2)) + .fluidInputs(Materials.Chlorine.getGas(4000)) + .fluidOutputs(Materials.Titaniumtetrachloride.getFluid(1000)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Rutile, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 2)) + .noItemOutputs().fluidInputs(Materials.Chlorine.getGas(4000)) + .fluidOutputs(Materials.Titaniumtetrachloride.getFluid(1000)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + // 4Na + 2MgCl2 = 2Mg + 4NaCl - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesiumchloride, 6L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 8L), - 400, - 300); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesiumchloride, 6)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 8)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + // rubber - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_Values.NF, - Materials.Rubber.getMolten(1296L), - GT_Values.NI, - 600, - 16); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Sulfur, 1L), - GT_Values.NF, - Materials.Rubber.getMolten(144L), - GT_Values.NI, - 100, - 16); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Rubber.getMolten(1296)).duration(30 * SECONDS) + .eut(16).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Sulfur, 1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Rubber.getMolten(144)).duration(5 * SECONDS) + .eut(16).addTo(UniversalChemical); + // vanilla recipe - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 8L), - new ItemStack(Items.melon, 1, 32767), - new ItemStack(Items.speckled_melon, 1, 0), - 50); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 8L), - new ItemStack(Items.carrot, 1, 32767), - new ItemStack(Items.golden_carrot, 1, 0), - 50); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 8L), - new ItemStack(Items.apple, 1, 32767), - new ItemStack(Items.golden_apple, 1, 0), - 50); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Gold, 8L), - new ItemStack(Items.apple, 1, 32767), - new ItemStack(Items.golden_apple, 1, 1), - 50); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderEye, 1L), - 200, - 480); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), - new ItemStack(Items.slime_ball, 1, 32767), - new ItemStack(Items.magma_cream, 1, 0), - 50); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 8), + new ItemStack(Items.melon, 1, 32767)) + .itemOutputs(new ItemStack(Items.speckled_melon, 1, 0)).noFluidInputs().noFluidOutputs().duration(50) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 8), + new ItemStack(Items.carrot, 1, 32767)) + .itemOutputs(new ItemStack(Items.golden_carrot, 1, 0)).noFluidInputs().noFluidOutputs().duration(50) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 8), + new ItemStack(Items.apple, 1, 32767)) + .itemOutputs(new ItemStack(Items.golden_apple, 1, 0)).noFluidInputs().noFluidOutputs().duration(50) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Gold, 8), + new ItemStack(Items.apple, 1, 32767)) + .itemOutputs(new ItemStack(Items.golden_apple, 1, 1)).noFluidInputs().noFluidOutputs().duration(50) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderEye, 1)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1), + new ItemStack(Items.slime_ball, 1, 32767)) + .itemOutputs(new ItemStack(Items.magma_cream, 1, 0)).noFluidInputs().noFluidOutputs().duration(50) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + // 1/9U +Air ==Pu== 0.1Rn - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Plutonium, 8), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Uranium, 1), - Materials.Air.getGas(1000), - Materials.Radon.getGas(100), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 8), - 12000, - 8); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Plutonium, 8), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Uranium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 8)) + .fluidInputs(Materials.Air.getGas(1000)).fluidOutputs(Materials.Radon.getGas(100)) + .duration(10 * MINUTES).eut(8).addTo(UniversalChemical); // Silicon Line // SiO2 + 2Mg = 2MgO + Si - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4), - 100, - 8); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4), - 100, - 8); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 6), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4), - 100, - 8); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4), - 100, - 8); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 6), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesia, 4)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(UniversalChemical); // 3SiF4 + 4Al = 3Si + 4AlF3 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4), - GT_Utility.getIntegratedCircuit(1), - Materials.SiliconTetrafluoride.getGas(3000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.AluminiumFluoride, 16), - 600, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.AluminiumFluoride, 16)) + .fluidInputs(Materials.SiliconTetrafluoride.getGas(3000)).noFluidOutputs().duration(30 * SECONDS) + .eut(30).addTo(UniversalChemical); + // SiO2 + 4HF = SiF4 + 2H2O - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3), - GT_Utility.getIntegratedCircuit(2), - Materials.HydrofluoricAcid.getFluid(4000), - Materials.SiliconTetrafluoride.getGas(1000), - GT_Values.NI, - 300, - 30); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3), - GT_Utility.getIntegratedCircuit(2), - Materials.HydrofluoricAcid.getFluid(4000), - Materials.SiliconTetrafluoride.getGas(1000), - GT_Values.NI, - 300, - 30); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3), - GT_Utility.getIntegratedCircuit(2), - Materials.HydrofluoricAcid.getFluid(4000), - Materials.SiliconTetrafluoride.getGas(1000), - GT_Values.NI, - 300, - 30); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 6), - GT_Utility.getIntegratedCircuit(2), - Materials.HydrofluoricAcid.getFluid(4000), - Materials.SiliconTetrafluoride.getGas(1000), - GT_Values.NI, - 300, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3), + GT_Utility.getIntegratedCircuit(2)) + .noItemOutputs().fluidInputs(Materials.HydrofluoricAcid.getFluid(4000)) + .fluidOutputs(Materials.SiliconTetrafluoride.getGas(1000)).duration(15 * SECONDS).eut(30) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3), + GT_Utility.getIntegratedCircuit(2)) + .noItemOutputs().fluidInputs(Materials.HydrofluoricAcid.getFluid(4000)) + .fluidOutputs(Materials.SiliconTetrafluoride.getGas(1000)).duration(15 * SECONDS).eut(30) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3), + GT_Utility.getIntegratedCircuit(2)) + .noItemOutputs().fluidInputs(Materials.HydrofluoricAcid.getFluid(4000)) + .fluidOutputs(Materials.SiliconTetrafluoride.getGas(1000)).duration(15 * SECONDS).eut(30) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 6), + GT_Utility.getIntegratedCircuit(2)) + .noItemOutputs().fluidInputs(Materials.HydrofluoricAcid.getFluid(4000)) + .fluidOutputs(Materials.SiliconTetrafluoride.getGas(1000)).duration(15 * SECONDS).eut(30) + .addTo(UniversalChemical); + // 4Na + SiCl4 = 4NaCl + Si - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 4), - GT_Utility.getIntegratedCircuit(1), - Materials.SiliconTetrachloride.getFluid(1000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 8), - 100, - 30); - - if (isBartWorksLoaded) { - // CaSi2 + 2HCl = 2Si + CaCl2 + 2H - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CalciumDisilicide, 3), - GT_Utility.getIntegratedCircuit(1), - Materials.HydrochloricAcid.getFluid(2000), - Materials.Hydrogen.getGas(2000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 2), - getModItem("bartworks", "gt.bwMetaGenerateddust", 3L, 63), - 900, - 30); - // SiCl4 + 2Zn = 2ZnCl2 + Si - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 2), - GT_Utility.getIntegratedCircuit(1), - Materials.SiliconTetrachloride.getFluid(1000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), - getModItem("bartworks", "gt.bwMetaGenerateddust", 6L, 10052), - 400, - 30); - } - // Si + 4Cl = SiCl4 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - ItemList.Cell_Empty.get(2L), - Materials.HydrochloricAcid.getFluid(3000), - Materials.Trichlorosilane.getFluid(1000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), - GT_Values.NI, - 300, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 8)) + .fluidInputs(Materials.SiliconTetrachloride.getFluid(1000)).noFluidOutputs().duration(5 * SECONDS) + .eut(30).addTo(UniversalChemical); // HSiCl3 + 2H = 3HCl + Si - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), - GT_Utility.getIntegratedCircuit(1), - Materials.Trichlorosilane.getFluid(1000), - Materials.HydrochloricAcid.getFluid(3000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), - ItemList.Cell_Empty.get(2L), - 300, - 30); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Trichlorosilane, 1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(2000), - Materials.HydrochloricAcid.getFluid(3000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), - ItemList.Cell_Empty.get(1L), - 300, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), + ItemList.Cell_Empty.get(2)) + .fluidInputs(Materials.Trichlorosilane.getFluid(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(3000)).duration(15 * SECONDS).eut(30) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Trichlorosilane, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), + ItemList.Cell_Empty.get(1)) + .fluidInputs(Materials.Hydrogen.getGas(2000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(3000)) + .duration(15 * SECONDS).eut(30).addTo(UniversalChemical); + // 4HSiCl3 = 3SiCl4 + SiH4 - GT_Values.RA.addChemicalRecipe( - ItemList.Cell_Empty.get(1L), - GT_Utility.getIntegratedCircuit(2), - Materials.Trichlorosilane.getFluid(4000), - Materials.SiliconTetrachloride.getFluid(3000), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Silane, 1), - 240, - 30); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Empty.get(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Silane, 1)) + .fluidInputs(Materials.Trichlorosilane.getFluid(4000)) + .fluidOutputs(Materials.SiliconTetrachloride.getFluid(3000)).duration(12 * SECONDS).eut(30) + .addTo(UniversalChemical); + // SiH4 = Si + 4H - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.Silane.getGas(1000), - Materials.Hydrogen.getGas(4000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), - 300, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Silane, 1), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Hydrogen.getGas(4000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), - ItemList.Cell_Empty.get(1L), - 300, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Silane, 1), - ItemList.Cell_Empty.get(3L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 4), - 300, - 30); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1)) + .fluidInputs(Materials.Silane.getGas(1000)).fluidOutputs(Materials.Hydrogen.getGas(4000)) + .duration(15 * SECONDS).eut(30).addTo(UniversalChemical); + // Ca + 2H = CaH2 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(2000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calciumhydride, 3), - 400, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calciumhydride, 3)) + .fluidInputs(Materials.Hydrogen.getGas(2000)).noFluidOutputs().duration(20 * SECONDS).eut(30) + .addTo(UniversalChemical); // Si + 4Cl = SiCl4 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_Utility.getIntegratedCircuit(2), - Materials.Chlorine.getGas(4000), - Materials.SiliconTetrachloride.getFluid(1000), - null, - 400, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Chlorine, 4), - GT_Values.NF, - Materials.SiliconTetrachloride.getFluid(1000), - ItemList.Cell_Empty.get(4L), - GT_Values.NI, - 400, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_Utility.getIntegratedCircuit(2)) + .noItemOutputs().fluidInputs(Materials.Chlorine.getGas(4000)) + .fluidOutputs(Materials.SiliconTetrachloride.getFluid(1000)).duration(20 * SECONDS).eut(30) + .addTo(UniversalChemical); // 2Na + S = Na2S - GT_Values.RA.addChemicalRecipe( - Materials.Sodium.getDust(2), - Materials.Sulfur.getDust(1), - Materials.SodiumSulfide.getDust(3), - 60); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sodium.getDust(2), Materials.Sulfur.getDust(1)) + .itemOutputs(Materials.SodiumSulfide.getDust(3)).noFluidInputs().noFluidOutputs().duration(60) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + // H2S + H2O + (O2) = 0.5H2SO4(Diluted) ( S loss - GT_Values.RA.addChemicalRecipe( - Materials.HydricSulfide.getCells(1), - GT_Values.NI, - Materials.Water.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(750), - Materials.Empty.getCells(1), - 60); - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Values.NI, - Materials.HydricSulfide.getGas(1000), - Materials.DilutedSulfuricAcid.getFluid(750), - Materials.Empty.getCells(1), - 60); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydricSulfide.getCells(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(750)).duration(3 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1)).itemOutputs(Materials.Empty.getCells(1)) + .fluidInputs(Materials.HydricSulfide.getGas(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(750)).duration(3 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // Ni + 4CO = Ni(CO)4 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CarbonMonoxide, 4L), - GT_Values.NF, - MaterialsKevlar.NickelTetracarbonyl.getFluid(1000), - ItemList.Cell_Empty.get(4L), - 400, - 1920); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - GT_Utility.getIntegratedCircuit(1), - Materials.CarbonMonoxide.getGas(4000), - MaterialsKevlar.NickelTetracarbonyl.getFluid(1000), - GT_Values.NI, - 400, - 1920); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - ItemList.Cell_Empty.get(1L), - Materials.CarbonMonoxide.getGas(4000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.NickelTetracarbonyl, 1L), - 400, - 1920); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.EthyleneOxide, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 5L), - Materials.Dimethyldichlorosilane.getFluid(4000), - MaterialsKevlar.SiliconOil.getFluid(5000), - ItemList.Cell_Empty.get(6L), - GT_Values.NI, - 600, - 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.EthyleneOxide, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Dimethyldichlorosilane, 4L), - Materials.Water.getFluid(5000), - MaterialsKevlar.SiliconOil.getFluid(5000), - ItemList.Cell_Empty.get(5L), - GT_Values.NI, - 600, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CarbonMonoxide, 4)) + .itemOutputs(ItemList.Cell_Empty.get(4)).noFluidInputs() + .fluidOutputs(MaterialsKevlar.NickelTetracarbonyl.getFluid(1000)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.CarbonMonoxide.getGas(4000)) + .fluidOutputs(MaterialsKevlar.NickelTetracarbonyl.getFluid(1000)).duration(20 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), ItemList.Cell_Empty.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.NickelTetracarbonyl, 1)) + .fluidInputs(Materials.CarbonMonoxide.getGas(4000)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(UniversalChemical); // C2H4O + H2O = C2H6O2 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.EthyleneOxide, 1L), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000), - MaterialsKevlar.Ethyleneglycol.getFluid(1000), - ItemList.Cell_Empty.get(1L), - 200, - 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), - GT_Utility.getIntegratedCircuit(2), - MaterialsKevlar.EthyleneOxide.getGas(1000), - MaterialsKevlar.Ethyleneglycol.getFluid(1000), - ItemList.Cell_Empty.get(1L), - GT_Values.NI, - 200, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.EthyleneOxide, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Cell_Empty.get(1)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(MaterialsKevlar.Ethyleneglycol.getFluid(1000)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + // C2H4 + O = C2H4O - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Ethylene, 2L), - GT_Utility.getIntegratedCircuit(4), - Materials.Oxygen.getGas(1000), - MaterialsKevlar.Acetaldehyde.getGas(1000), - ItemList.Cell_Empty.get(2), - 200, - 120); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_Utility.getIntegratedCircuit(5), - Materials.Ethylene.getGas(2000), - MaterialsKevlar.Acetaldehyde.getGas(1000), - ItemList.Cell_Empty.get(1), - 200, - 120); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Ethylene, 2), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(ItemList.Cell_Empty.get(2)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(MaterialsKevlar.Acetaldehyde.getGas(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(ItemList.Cell_Empty.get(1)).fluidInputs(Materials.Ethylene.getGas(2000)) + .fluidOutputs(MaterialsKevlar.Acetaldehyde.getGas(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); // NiAl3 + 2NaOH + 2H2O = NiAl + 2NaAlO2 + 6H - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingot, MaterialsKevlar.NickelAluminide, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 6L), - Materials.Water.getFluid(2000), - Materials.Hydrogen.getGas(6000), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.RaneyNickelActivated, 2L), - Materials.SodiumAluminate.getDust(8), - 1200, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, MaterialsKevlar.NickelAluminide, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 6)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.RaneyNickelActivated, 2), + Materials.SodiumAluminate.getDust(8)) + .fluidInputs(Materials.Water.getFluid(2000)).fluidOutputs(Materials.Hydrogen.getGas(6000)) + .duration(60 * SECONDS).eut(TierEU.RECIPE_EV).addTo(UniversalChemical); + // Cu + O = CuO - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 2L), - ItemList.Cell_Empty.get(1), - 100, - 30); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1L), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 2L), - 100, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 2), + ItemList.Cell_Empty.get(1)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(30).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 2)) + .fluidInputs(Materials.Oxygen.getGas(1000)).noFluidOutputs().duration(5 * SECONDS).eut(30) + .addTo(UniversalChemical); + // 2Bi + 3O = Bi2O3 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 4L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 6L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 10L), - ItemList.Cell_Empty.get(6), - 200, - 120); - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 4L), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(6000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 10L), - 200, - 120); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 4), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 6)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 10), + ItemList.Cell_Empty.get(6)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 10)) + .fluidInputs(Materials.Oxygen.getGas(6000)).noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // C4H6O2 + CNH5 = C5H9NO + H2O - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.Methylamine, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.GammaButyrolactone, 1L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.NMethylIIPyrrolidone, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), - 600, - 7680); - - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 8L), - GT_Utility.getIntegratedCircuit(2), - Materials.Chlorine.getGas(16000), - MaterialsKevlar.SulfurDichloride.getFluid(8000), - GT_Values.NI, - GT_Values.NI, - 800, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.Methylamine, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.GammaButyrolactone, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.NMethylIIPyrrolidone, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 8), + GT_Utility.getIntegratedCircuit(2)) + .noItemOutputs().fluidInputs(Materials.Chlorine.getGas(16000)) + .fluidOutputs(MaterialsKevlar.SulfurDichloride.getFluid(8000)).duration(40 * SECONDS).eut(30) + .addTo(UniversalChemical); + // SCl2 + SO3 = SO2 + SOCl2 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfurTrioxide, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.SulfurDichloride, 1L), - GT_Values.NF, - Materials.SulfurDioxide.getGas(1000L), - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.ThionylChloride, 1L), - ItemList.Cell_Empty.get(1), - 150, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfurTrioxide, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.SulfurDichloride, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.ThionylChloride, 1), + ItemList.Cell_Empty.get(1)) + .noFluidInputs().fluidOutputs(Materials.SulfurDioxide.getGas(1000)).duration(7 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); // C8H10 + 6O =CoC22H14O4= C8H6O4 + 2H2O - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.IVDimethylbenzene, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIINaphthenate, 41L), - Materials.Oxygen.getGas(6000L), - Materials.Water.getFluid(2000L), - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.TerephthalicAcid, 1L), - 150, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.IVDimethylbenzene, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIINaphthenate, 41)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.TerephthalicAcid, 1)) + .fluidInputs(Materials.Oxygen.getGas(6000)).fluidOutputs(Materials.Water.getFluid(2000)) + .duration(7 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV).addTo(UniversalChemical); // 2CH4 + C6H6 = C8H10 + 4H - GT_Values.RA.addChemicalRecipe( - Materials.Methane.getCells(2), - GT_Utility.getIntegratedCircuit(13), - Materials.Benzene.getFluid(1000), - Materials.Hydrogen.getGas(4000), - MaterialsKevlar.IIIDimethylbenzene.getCells(1), - Materials.Empty.getCells(1), - 4000, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Benzene.getCells(1), - GT_Utility.getIntegratedCircuit(14), - Materials.Methane.getGas(2000), - Materials.Hydrogen.getGas(4000), - MaterialsKevlar.IIIDimethylbenzene.getCells(1), - 4000, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methane.getCells(2), GT_Utility.getIntegratedCircuit(13)) + .itemOutputs(MaterialsKevlar.IIIDimethylbenzene.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getGas(4000)) + .duration(3 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), GT_Utility.getIntegratedCircuit(14)) + .itemOutputs(MaterialsKevlar.IIIDimethylbenzene.getCells(1)).fluidInputs(Materials.Methane.getGas(2000)) + .fluidOutputs(Materials.Hydrogen.getGas(4000)).duration(3 * MINUTES + 20 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // 2CH4 + C6H6 = C8H10 + 4H - GT_Values.RA.addChemicalRecipe( - Materials.Methane.getCells(2), - GT_Utility.getIntegratedCircuit(15), - Materials.Benzene.getFluid(1000), - Materials.Hydrogen.getGas(4000), - MaterialsKevlar.IVDimethylbenzene.getCells(1), - Materials.Empty.getCells(1), - 4000, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Benzene.getCells(1), - GT_Utility.getIntegratedCircuit(16), - Materials.Methane.getGas(2000), - Materials.Hydrogen.getGas(4000), - MaterialsKevlar.IVDimethylbenzene.getCells(1), - 4000, - 120); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - MaterialsKevlar.CobaltIIHydroxide.getDust(5), - MaterialsKevlar.NaphthenicAcid.getCells(1), - GT_Values.NF, - GT_Values.NF, - MaterialsKevlar.CobaltIINaphthenate.getDust(41), - ItemList.Cell_Empty.get(1L), - 100, - 480); - GT_Values.RA.addChemicalRecipe( - MaterialsKevlar.CobaltIIHydroxide.getDust(5), - GT_Utility.getIntegratedCircuit(1), - MaterialsKevlar.NaphthenicAcid.getFluid(1000L), - GT_Values.NF, - MaterialsKevlar.CobaltIINaphthenate.getDust(41), - 200, - 480); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - MaterialsKevlar.CobaltIIAcetate.getDust(15), - MaterialsKevlar.NaphthenicAcid.getCells(1), - GT_Values.NF, - Materials.AceticAcid.getFluid(1500L), - MaterialsKevlar.CobaltIINaphthenate.getDust(41), - ItemList.Cell_Empty.get(1L), - 100, - 480); - GT_Values.RA.addChemicalRecipe( - MaterialsKevlar.CobaltIIAcetate.getDust(15), - GT_Utility.getIntegratedCircuit(1), - MaterialsKevlar.NaphthenicAcid.getFluid(1000L), - Materials.AceticAcid.getFluid(1500L), - MaterialsKevlar.CobaltIINaphthenate.getDust(41), - 100, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methane.getCells(2), GT_Utility.getIntegratedCircuit(15)) + .itemOutputs(MaterialsKevlar.IVDimethylbenzene.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getGas(4000)) + .duration(3 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), GT_Utility.getIntegratedCircuit(16)) + .itemOutputs(MaterialsKevlar.IVDimethylbenzene.getCells(1)).fluidInputs(Materials.Methane.getGas(2000)) + .fluidOutputs(Materials.Hydrogen.getGas(4000)).duration(3 * MINUTES + 20 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(MaterialsKevlar.CobaltIIHydroxide.getDust(5), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(MaterialsKevlar.CobaltIINaphthenate.getDust(41)) + .fluidInputs(MaterialsKevlar.NaphthenicAcid.getFluid(1000)).noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(MaterialsKevlar.CobaltIIAcetate.getDust(15), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(MaterialsKevlar.CobaltIINaphthenate.getDust(41)) + .fluidInputs(MaterialsKevlar.NaphthenicAcid.getFluid(1000)) + .fluidOutputs(Materials.AceticAcid.getFluid(1500)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); // Co + 2HNO3 = Co(NO3)2 + 2H - GT_Values.RA.addChemicalRecipe( - Materials.Cobalt.getDust(1), - Materials.NitricAcid.getCells(2), - GT_Values.NF, - GT_Values.NF, - MaterialsKevlar.CobaltIINitrate.getDust(9), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - 100, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Cobalt.getDust(1), Materials.NitricAcid.getCells(2)) + .itemOutputs( + MaterialsKevlar.CobaltIINitrate.getDust(9), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + // Co(NO3)2 + 2KOH = CoH2O2 + 2KNO3 - GT_Values.RA.addChemicalRecipe( - MaterialsKevlar.CobaltIINitrate.getDust(9), - getModItem(MOD_ID_DC, "item.PotassiumHydroxideDust", 6L, 0), - GT_Values.NF, - GT_Values.NF, - MaterialsKevlar.CobaltIIHydroxide.getDust(5), - Materials.Saltpeter.getDust(10), - 100, - 120); + + GT_Values.RA.stdBuilder() + .itemInputs( + MaterialsKevlar.CobaltIINitrate.getDust(9), + getModItem(NewHorizonsCoreMod.modID, "item.PotassiumHydroxideDust", 6L, 0)) + .itemOutputs(MaterialsKevlar.CobaltIIHydroxide.getDust(5), Materials.Saltpeter.getDust(10)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + // CoO + 2C2H4O2 = CoC4H6O4 + 2H - GT_Values.RA.addChemicalRecipe( - Materials.CobaltOxide.getDust(2), - Materials.AceticAcid.getCells(2), - GT_Values.NF, - Materials.Water.getFluid(2000L), - MaterialsKevlar.CobaltIIAcetate.getDust(15), - ItemList.Cell_Empty.get(2L), - 100, - 120); - // P + 3Cl = PCl3 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Phosphorus.getDust(1), - Materials.Chlorine.getCells(3), - GT_Values.NF, - MaterialsKevlar.PhosphorusTrichloride.getFluid(1000L), - ItemList.Cell_Empty.get(3L), - GT_Values.NI, - 200, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Phosphorus.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorine.getGas(3000L), - MaterialsKevlar.PhosphorusTrichloride.getFluid(1000L), - GT_Values.NI, - 200, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Phosphorus.getDust(9), - GT_Utility.getIntegratedCircuit(9), - Materials.Chlorine.getGas(27000L), - MaterialsKevlar.PhosphorusTrichloride.getFluid(9000L), - GT_Values.NI, - 1500, - 120); + GT_Values.RA.stdBuilder().itemInputs(Materials.CobaltOxide.getDust(2), Materials.AceticAcid.getCells(2)) + .itemOutputs(MaterialsKevlar.CobaltIIAcetate.getDust(15), ItemList.Cell_Empty.get(2)).noFluidInputs() + .fluidOutputs(Materials.Water.getFluid(2000)).duration(5 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Phosphorus.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Chlorine.getGas(3000)) + .fluidOutputs(MaterialsKevlar.PhosphorusTrichloride.getFluid(1000)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Phosphorus.getDust(9), GT_Utility.getIntegratedCircuit(9)) + .noItemOutputs().fluidInputs(Materials.Chlorine.getGas(27000)) + .fluidOutputs(MaterialsKevlar.PhosphorusTrichloride.getFluid(9000)).duration(1 * MINUTES + 15 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // Na + H = NaH - GT_Values.RA.addChemicalRecipe( - Materials.Sodium.getDust(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Hydrogen.getGas(1000L), - GT_Values.NF, - MaterialsKevlar.SodiumHydride.getDust(2), - 200, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sodium.getDust(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(MaterialsKevlar.SodiumHydride.getDust(2)).fluidInputs(Materials.Hydrogen.getGas(1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // CH3ONa + H2O = CH4O + NaOH - GT_Values.RA.addChemicalRecipe( - MaterialsKevlar.SodiumMethoxide.getDust(6), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000L), - Materials.Methanol.getFluid(1000L), - Materials.SodiumHydroxide.getDust(3), - 200, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs(MaterialsKevlar.SodiumMethoxide.getDust(6), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.SodiumHydroxide.getDust(3)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.Methanol.getFluid(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); // K + HNO3 = KNO3 + H (not real, but gameplay - GT_Values.RA.addChemicalRecipe( - Materials.Potassium.getDust(1), - GT_Utility.getIntegratedCircuit(2), - Materials.NitricAcid.getFluid(1000), - Materials.Hydrogen.getGas(1000), - Materials.Saltpeter.getDust(5), - 100, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Potassium.getDust(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Saltpeter.getDust(5)).fluidInputs(Materials.NitricAcid.getFluid(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(1000)).duration(5 * SECONDS).eut(30).addTo(UniversalChemical); // CH3COOH + CH3OH = CH3COOCH3 + H2O - GT_Values.RA.addChemicalRecipe( - Materials.AceticAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Methanol.getFluid(1000), - Materials.MethylAcetate.getFluid(1000), - Materials.Water.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.AceticAcid.getFluid(1000), - Materials.MethylAcetate.getFluid(1000), - Materials.Water.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.AceticAcid.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Methanol.getFluid(1000), - Materials.MethylAcetate.getFluid(1000), - Materials.Empty.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.AceticAcid.getFluid(1000), - Materials.MethylAcetate.getFluid(1000), - Materials.Empty.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.AceticAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Methanol.getFluid(1000), - Materials.Water.getFluid(1000), - Materials.MethylAcetate.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.AceticAcid.getFluid(1000), - Materials.Water.getFluid(1000), - Materials.MethylAcetate.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.AceticAcid.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Methanol.getFluid(1000), - GT_Values.NF, - Materials.MethylAcetate.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.AceticAcid.getFluid(1000), - GT_Values.NF, - Materials.MethylAcetate.getCells(1), - 240); + + GT_Values.RA.stdBuilder().itemInputs(Materials.AceticAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.MethylAcetate.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(1000)) + .fluidOutputs(Materials.MethylAcetate.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.AceticAcid.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.MethylAcetate.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(1000)) + .fluidOutputs(Materials.MethylAcetate.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.AceticAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.MethylAcetate.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.MethylAcetate.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.AceticAcid.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.MethylAcetate.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .noFluidOutputs().duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.MethylAcetate.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(1000)) + .noFluidOutputs().duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // CO and CO2 recipes - GT_Values.RA.addChemicalRecipe( - Materials.Carbon.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - Materials.CarbonMonoxide.getGas(1000), - GT_Values.NI, - 40, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getGems(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - Materials.CarbonMonoxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 80, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - Materials.CarbonMonoxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 80, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getGems(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - Materials.CarbonMonoxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 80, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - Materials.CarbonMonoxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 80, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Carbon.getDust(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(2000), - Materials.CarbonDioxide.getGas(1000), - GT_Values.NI, - 40, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getGems(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(2000), - Materials.CarbonDioxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 40, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getDust(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(2000), - Materials.CarbonDioxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 40, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getGems(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(2000), - Materials.CarbonDioxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 40, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getDust(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(2000), - Materials.CarbonDioxide.getGas(1000), - Materials.Ash.getDustTiny(1), - 40, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Carbon.getDust(1), - GT_Values.NI, - Materials.CarbonDioxide.getGas(1000), - Materials.CarbonMonoxide.getGas(2000), - GT_Values.NI, - 800); - - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getGems(9), - GT_Utility.getIntegratedCircuit(9), - Materials.Oxygen.getGas(9000), - Materials.CarbonMonoxide.getGas(9000), - Materials.Ash.getDust(1), - 720, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getDust(9), - GT_Utility.getIntegratedCircuit(9), - Materials.Oxygen.getGas(9000), - Materials.CarbonMonoxide.getGas(9000), - Materials.Ash.getDust(1), - 720, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getGems(9), - GT_Utility.getIntegratedCircuit(9), - Materials.Oxygen.getGas(9000), - Materials.CarbonMonoxide.getGas(9000), - Materials.Ash.getDust(1), - 720, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getDust(9), - GT_Utility.getIntegratedCircuit(9), - Materials.Oxygen.getGas(9000), - Materials.CarbonMonoxide.getGas(9000), - Materials.Ash.getDust(1), - 720, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getGems(9), - GT_Utility.getIntegratedCircuit(8), - Materials.Oxygen.getGas(18000), - Materials.CarbonDioxide.getGas(9000), - Materials.Ash.getDust(1), - 360, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Coal.getDust(9), - GT_Utility.getIntegratedCircuit(8), - Materials.Oxygen.getGas(18000), - Materials.CarbonDioxide.getGas(9000), - Materials.Ash.getDust(1), - 360, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getGems(9), - GT_Utility.getIntegratedCircuit(8), - Materials.Oxygen.getGas(18000), - Materials.CarbonDioxide.getGas(9000), - Materials.Ash.getDust(1), - 360, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Charcoal.getDust(9), - GT_Utility.getIntegratedCircuit(8), - Materials.Oxygen.getGas(18000), - Materials.CarbonDioxide.getGas(9000), - Materials.Ash.getDust(1), - 360, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(2 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getGems(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ash.getDustTiny(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(4 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ash.getDustTiny(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(4 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getGems(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ash.getDustTiny(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(4 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ash.getDustTiny(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(4 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(2)) + .noItemOutputs().fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(2 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getGems(1), 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); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getDust(1), 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); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getGems(1), 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); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getDust(1), 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); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Carbon.getDust(1)).noItemOutputs() + .fluidInputs(Materials.CarbonDioxide.getGas(1000)).fluidOutputs(Materials.CarbonMonoxide.getGas(2000)) + .duration(40 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getGems(9), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(9000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(9000)).duration(36 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getDust(9), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(9000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(9000)).duration(36 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getGems(9), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(9000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(9000)).duration(36 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getDust(9), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(9000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(9000)).duration(36 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getGems(9), GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(18000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(9000)).duration(18 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Coal.getDust(9), GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(18000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(9000)).duration(18 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getGems(9), GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(18000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(9000)).duration(18 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Charcoal.getDust(9), GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(Materials.Ash.getDust(1)).fluidInputs(Materials.Oxygen.getGas(18000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(9000)).duration(18 * SECONDS).eut(8) + .addTo(UniversalChemical); + // CO + 4H = CH3OH - GT_Values.RA.addChemicalRecipe( - Materials.CarbonMonoxide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(4000), - Materials.Methanol.getFluid(1000), - Materials.Empty.getCells(1), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(4), - GT_Utility.getIntegratedCircuit(1), - Materials.CarbonMonoxide.getGas(1000), - Materials.Methanol.getFluid(1000), - Materials.Empty.getCells(4), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.CarbonMonoxide.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Hydrogen.getGas(4000), - GT_Values.NF, - Materials.Methanol.getCells(1), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(4), - GT_Utility.getIntegratedCircuit(11), - Materials.CarbonMonoxide.getGas(1000), - GT_Values.NF, - Materials.Methanol.getCells(1), - Materials.Empty.getCells(3), - 120, - 96); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(4000)) + .fluidOutputs(Materials.Methanol.getFluid(1000)).duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(4), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(4)).fluidInputs(Materials.CarbonMonoxide.getGas(1000)) + .fluidOutputs(Materials.Methanol.getFluid(1000)).duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Methanol.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(4000)) + .noFluidOutputs().duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(4), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Methanol.getCells(1), Materials.Empty.getCells(3)) + .fluidInputs(Materials.CarbonMonoxide.getGas(1000)).noFluidOutputs().duration(6 * SECONDS).eut(96) + .addTo(UniversalChemical); + // CO2 + 6H = CH3OH + H2O - GT_Values.RA.addChemicalRecipe( - Materials.CarbonDioxide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(6000), - Materials.Methanol.getFluid(1000), - Materials.Water.getCells(1), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(6), - GT_Utility.getIntegratedCircuit(1), - Materials.CarbonDioxide.getGas(1000), - Materials.Methanol.getFluid(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(5), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.CarbonDioxide.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Hydrogen.getGas(6000), - Materials.Methanol.getFluid(1000), - Materials.Empty.getCells(1), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(6), - GT_Utility.getIntegratedCircuit(2), - Materials.CarbonDioxide.getGas(1000), - Materials.Methanol.getFluid(1000), - Materials.Empty.getCells(6), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.CarbonDioxide.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Hydrogen.getGas(6000), - GT_Values.NF, - Materials.Methanol.getCells(1), - 120, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(6), - GT_Utility.getIntegratedCircuit(12), - Materials.CarbonDioxide.getGas(1000), - GT_Values.NF, - Materials.Methanol.getCells(1), - Materials.Empty.getCells(5), - 120, - 96); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonDioxide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(6000)) + .fluidOutputs(Materials.Methanol.getFluid(1000)).duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(6), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(5)) + .fluidInputs(Materials.CarbonDioxide.getGas(1000)).fluidOutputs(Materials.Methanol.getFluid(1000)) + .duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonDioxide.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(6000)) + .fluidOutputs(Materials.Methanol.getFluid(1000)).duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(6), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(6)).fluidInputs(Materials.CarbonDioxide.getGas(1000)) + .fluidOutputs(Materials.Methanol.getFluid(1000)).duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonDioxide.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Methanol.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(6000)) + .noFluidOutputs().duration(6 * SECONDS).eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(6), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Methanol.getCells(1), Materials.Empty.getCells(5)) + .fluidInputs(Materials.CarbonDioxide.getGas(1000)).noFluidOutputs().duration(6 * SECONDS).eut(96) + .addTo(UniversalChemical); // CH3OH + CO = CH3COOH - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.CarbonMonoxide.getGas(1000), - Materials.AceticAcid.getFluid(1000), - Materials.Empty.getCells(1), - 300); - GT_Values.RA.addChemicalRecipe( - Materials.CarbonMonoxide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Methanol.getFluid(1000), - Materials.AceticAcid.getFluid(1000), - Materials.Empty.getCells(1), - 300); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.CarbonMonoxide.getGas(1000), - GT_Values.NF, - Materials.AceticAcid.getCells(1), - 300); - GT_Values.RA.addChemicalRecipe( - Materials.CarbonMonoxide.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Methanol.getFluid(1000), - GT_Values.NF, - Materials.AceticAcid.getCells(1), - 300); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.CarbonMonoxide.getGas(1000)) + .fluidOutputs(Materials.AceticAcid.getFluid(1000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.AceticAcid.getFluid(1000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.AceticAcid.getCells(1)).fluidInputs(Materials.CarbonMonoxide.getGas(1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.AceticAcid.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + // CH2CH2 + 2O = CH3COOH - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - GT_Utility.getIntegratedCircuit(9), - Materials.Oxygen.getGas(2000), - Materials.AceticAcid.getFluid(1000), - Materials.Empty.getCells(1), - 100); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(2), - GT_Utility.getIntegratedCircuit(9), - Materials.Ethylene.getGas(1000), - Materials.AceticAcid.getFluid(1000), - Materials.Empty.getCells(2), - 100); - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - GT_Utility.getIntegratedCircuit(19), - Materials.Oxygen.getGas(2000), - GT_Values.NF, - Materials.AceticAcid.getCells(1), - 100); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(2), - GT_Utility.getIntegratedCircuit(19), - Materials.Ethylene.getGas(1000), - GT_Values.NF, - Materials.AceticAcid.getCells(1), - Materials.Empty.getCells(1), - 100); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.AceticAcid.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(9)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.Ethylene.getGas(1000)) + .fluidOutputs(Materials.AceticAcid.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(19)) + .itemOutputs(Materials.AceticAcid.getCells(1)).fluidInputs(Materials.Oxygen.getGas(2000)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(19)) + .itemOutputs(Materials.AceticAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Ethylene.getGas(1000)).noFluidOutputs().duration(5 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // O + C2H4O2 + C2H4 = C4H6O2 + H2O - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - Materials.AceticAcid.getCells(1), - Materials.Oxygen.getGas(1000), - Materials.VinylAcetate.getFluid(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - 180); - GT_Values.RA.addChemicalRecipe( - Materials.AceticAcid.getCells(1), - Materials.Oxygen.getCells(1), - Materials.Ethylene.getGas(1000), - Materials.VinylAcetate.getFluid(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - 180); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(1), - Materials.Ethylene.getCells(1), - Materials.AceticAcid.getFluid(1000), - Materials.VinylAcetate.getFluid(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - 180); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), Materials.AceticAcid.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Oxygen.getGas(1000)).fluidOutputs(Materials.VinylAcetate.getFluid(1000)) + .duration(9 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.AceticAcid.getCells(1), Materials.Oxygen.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Ethylene.getGas(1000)).fluidOutputs(Materials.VinylAcetate.getFluid(1000)) + .duration(9 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), Materials.Ethylene.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.AceticAcid.getFluid(1000)).fluidOutputs(Materials.VinylAcetate.getFluid(1000)) + .duration(9 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // Ethanol -> Ethylene (Intended loss for Sulfuric Acid) - GT_Values.RA.addChemicalRecipe( - Materials.Ethanol.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Ethylene.getCells(1), - 1200, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.SulfuricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Ethanol.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Ethylene.getCells(1), - 1200, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ethanol.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.SulfuricAcid.getFluid(1000), - Materials.Ethylene.getGas(1000), - Materials.DilutedSulfuricAcid.getCells(1), - 1200, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.SulfuricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Ethanol.getFluid(1000), - Materials.Ethylene.getGas(1000), - Materials.DilutedSulfuricAcid.getCells(1), - 1200, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethanol.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ethylene.getCells(1)).fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(60 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ethylene.getCells(1)).fluidInputs(Materials.Ethanol.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(60 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethanol.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)).fluidOutputs(Materials.Ethylene.getGas(1000)) + .duration(60 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(1)).fluidInputs(Materials.Ethanol.getFluid(1000)) + .fluidOutputs(Materials.Ethylene.getGas(1000)).duration(60 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); // H2O + Na = NaOH + H - GT_Values.RA.addChemicalRecipe( - Materials.Sodium.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000), - Materials.Hydrogen.getGas(1000), - Materials.SodiumHydroxide.getDust(3), - 200, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sodium.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.SodiumHydroxide.getDust(3)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(1000)).duration(10 * SECONDS).eut(30).addTo(UniversalChemical); // H + Cl = HCl - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Empty.getCells(1), - 60, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorine.getGas(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Empty.getCells(1), - 60, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Hydrogen.getGas(1000), - GT_Values.NF, - Materials.HydrochloricAcid.getCells(1), - 60, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Chlorine.getGas(1000), - GT_Values.NF, - Materials.HydrochloricAcid.getCells(1), - 60, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).duration(3 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Chlorine.getGas(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).duration(3 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(1000)) + .noFluidOutputs().duration(3 * SECONDS).eut(8).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1)).fluidInputs(Materials.Chlorine.getGas(1000)) + .noFluidOutputs().duration(3 * SECONDS).eut(8).addTo(UniversalChemical); // C3H6 + 2Cl = HCl + C3H5Cl - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Propene.getGas(1000), - Materials.AllylChloride.getFluid(1000), - Materials.HydrochloricAcid.getCells(1), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Propene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorine.getGas(2000), - Materials.AllylChloride.getFluid(1000), - Materials.HydrochloricAcid.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Propene.getGas(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.AllylChloride.getCells(1), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Propene.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Chlorine.getGas(2000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.AllylChloride.getCells(1), - 160); - // H2O + Cl =Hg= HClO + H - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Chlorine.getCells(10), - Materials.Mercury.getCells(1), - Materials.Water.getFluid(10000), - Materials.HypochlorousAcid.getFluid(10000), - Materials.Hydrogen.getCells(10), - Materials.Empty.getCells(1), - 600, - 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Water.getCells(10), - Materials.Mercury.getCells(1), - Materials.Chlorine.getGas(10000), - Materials.HypochlorousAcid.getFluid(10000), - Materials.Hydrogen.getCells(10), - Materials.Empty.getCells(1), - 600, - 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Chlorine.getCells(1), - Materials.Water.getCells(1), - Materials.Mercury.getFluid(100), - Materials.HypochlorousAcid.getFluid(1000), - Materials.Hydrogen.getCells(1), - Materials.Empty.getCells(1), - 60, - 8); + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Propene.getGas(1000)).fluidOutputs(Materials.AllylChloride.getFluid(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Propene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.AllylChloride.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.AllylChloride.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Propene.getGas(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Propene.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.AllylChloride.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // 2Cl + H2O = HCl + HClO (Intended loss) - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000), - Materials.HypochlorousAcid.getFluid(1000), - Materials.DilutedHydrochloricAcid.getCells(1), - Materials.Empty.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorine.getGas(2000), - Materials.HypochlorousAcid.getFluid(1000), - Materials.DilutedHydrochloricAcid.getCells(1), - GT_Values.NI, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Water.getFluid(1000), - Materials.DilutedHydrochloricAcid.getFluid(1000), - Materials.HypochlorousAcid.getCells(1), - Materials.Empty.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Chlorine.getGas(2000), - Materials.DilutedHydrochloricAcid.getFluid(1000), - Materials.HypochlorousAcid.getCells(1), - GT_Values.NI, - 120); - // HClO + NaOH + C3H5Cl = C3H5ClO + NaCl·H2O - GT_Values.RA.addChemicalRecipe( - Materials.HypochlorousAcid.getCells(1), - Materials.SodiumHydroxide.getDust(3), - Materials.AllylChloride.getFluid(1000), - Materials.Epichlorohydrin.getFluid(1000), - Materials.SaltWater.getCells(1), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(3), - Materials.AllylChloride.getCells(1), - Materials.HypochlorousAcid.getFluid(1000), - Materials.Epichlorohydrin.getFluid(1000), - Materials.SaltWater.getCells(1), - 480); - // HCl + C3H8O3 = C3H5ClO + 2H2O - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.HydrochloricAcid.getCells(1), - Materials.Glycerol.getCells(1), - GT_Values.NF, - Materials.Epichlorohydrin.getFluid(1000), - Materials.Water.getCells(2), - GT_Values.NI, - 480, - 30); - - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - Materials.Empty.getCells(1), - Materials.Glycerol.getFluid(1000), - Materials.Epichlorohydrin.getFluid(1000), - Materials.Water.getCells(2), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.Glycerol.getCells(1), - Materials.Empty.getCells(1), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Epichlorohydrin.getFluid(1000), - Materials.Water.getCells(2), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Glycerol.getFluid(1000), - Materials.Water.getFluid(2000), - Materials.Epichlorohydrin.getCells(1), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.Glycerol.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Water.getFluid(2000), - Materials.Epichlorohydrin.getCells(1), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Glycerol.getFluid(1000), - Materials.Epichlorohydrin.getFluid(1000), - Materials.Empty.getCells(1), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.Glycerol.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Epichlorohydrin.getFluid(1000), - Materials.Empty.getCells(1), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Glycerol.getFluid(1000), - GT_Values.NF, - Materials.Epichlorohydrin.getCells(1), - 480); - GT_Values.RA.addChemicalRecipe( - Materials.Glycerol.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.HydrochloricAcid.getFluid(1000), - GT_Values.NF, - Materials.Epichlorohydrin.getCells(1), - 480); + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.DilutedHydrochloricAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(Materials.HypochlorousAcid.getFluid(1000)) + .duration(6 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); - // Ca5(PO4)3Cl + 5H2SO4 + 10H2O = 5CaSO4(H2O)2 + HCl + 3H3PO4 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Apatite.getDust(9), - Materials.SulfuricAcid.getCells(5), - Materials.Water.getFluid(10000), - Materials.PhosphoricAcid.getFluid(3000), - Materials.HydrochloricAcid.getCells(1), - Materials.Empty.getCells(4), - 320, - 30); + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.DilutedHydrochloricAcid.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.HypochlorousAcid.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); - // 10O + 4P = P4O10 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Phosphorus.getDust(4), - GT_Values.NI, - Materials.Oxygen.getGas(10000), - GT_Values.NF, - Materials.PhosphorousPentoxide.getDust(14), - GT_Values.NI, - 40, - 30); + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.HypochlorousAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).duration(6 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.HypochlorousAcid.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).duration(6 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + // HClO + NaOH + C3H5Cl = C3H5ClO + NaCl·H2O + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HypochlorousAcid.getCells(1), Materials.SodiumHydroxide.getDust(3)) + .itemOutputs(Materials.SaltWater.getCells(1)).fluidInputs(Materials.AllylChloride.getFluid(1000)) + .fluidOutputs(Materials.Epichlorohydrin.getFluid(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(3), Materials.AllylChloride.getCells(1)) + .itemOutputs(Materials.SaltWater.getCells(1)).fluidInputs(Materials.HypochlorousAcid.getFluid(1000)) + .fluidOutputs(Materials.Epichlorohydrin.getFluid(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Water.getCells(2)).fluidInputs(Materials.Glycerol.getFluid(1000)) + .fluidOutputs(Materials.Epichlorohydrin.getFluid(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Glycerol.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Water.getCells(2)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.Epichlorohydrin.getFluid(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Epichlorohydrin.getCells(1)).fluidInputs(Materials.Glycerol.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(2000)).duration(24 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Glycerol.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Epichlorohydrin.getCells(1)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(2000)) + .duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Glycerol.getFluid(1000)) + .fluidOutputs(Materials.Epichlorohydrin.getFluid(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Glycerol.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.Epichlorohydrin.getFluid(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Epichlorohydrin.getCells(1)).fluidInputs(Materials.Glycerol.getFluid(1000)) + .noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Glycerol.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Epichlorohydrin.getCells(1)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // P4O10 + 6H2O = 4H3PO4 - GT_Values.RA.addChemicalRecipe( - Materials.PhosphorousPentoxide.getDust(14), - GT_Values.NI, - Materials.Water.getFluid(6000), - Materials.PhosphoricAcid.getFluid(4000), - GT_Values.NI, - 40); + + GT_Values.RA.stdBuilder().itemInputs(Materials.PhosphorousPentoxide.getDust(14)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(6000)).fluidOutputs(Materials.PhosphoricAcid.getFluid(4000)) + .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // C9H12 + 2O = C6H6O + C3H6O - GT_Values.RA.addChemicalRecipe( - Materials.Cumene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(2000), - Materials.Acetone.getFluid(1000), - Materials.Phenol.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Cumene.getFluid(1000), - Materials.Acetone.getFluid(1000), - Materials.Phenol.getCells(1), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Cumene.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Oxygen.getGas(2000), - Materials.Phenol.getFluid(1000), - Materials.Acetone.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Cumene.getFluid(1000), - Materials.Phenol.getFluid(1000), - Materials.Acetone.getCells(1), - Materials.Empty.getCells(1), - 160); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Cumene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Phenol.getCells(1)).fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.Acetone.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Phenol.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Cumene.getFluid(1000)).fluidOutputs(Materials.Acetone.getFluid(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Cumene.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Acetone.getCells(1)).fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.Phenol.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Acetone.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Cumene.getFluid(1000)).fluidOutputs(Materials.Phenol.getFluid(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // C15H16O2 + 2C3H5ClO + 2NaOH = C15H14O2(C3H5O)2 + 2NaCl·H2O - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(6), - Materials.Epichlorohydrin.getCells(2), - Materials.BisphenolA.getFluid(1000), - Materials.Epoxid.getMolten(1000), - Materials.SaltWater.getCells(2), - 200); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.SodiumHydroxide.getDust(6), Materials.Epichlorohydrin.getCells(2)) + .itemOutputs(Materials.SaltWater.getCells(2)).fluidInputs(Materials.BisphenolA.getFluid(1000)) + .fluidOutputs(Materials.Epoxid.getMolten(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // CH4O + HCl = CH3Cl + H2O - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chloromethane.getGas(1000), - Materials.Water.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Methanol.getFluid(1000), - Materials.Chloromethane.getGas(1000), - Materials.Water.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Water.getFluid(1000), - Materials.Chloromethane.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Methanol.getFluid(1000), - Materials.Water.getFluid(1000), - Materials.Chloromethane.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chloromethane.getGas(1000), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Methanol.getFluid(1000), - Materials.Chloromethane.getGas(1000), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.HydrochloricAcid.getFluid(1000), - GT_Values.NF, - Materials.Chloromethane.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Methanol.getFluid(1000), - GT_Values.NF, - Materials.Chloromethane.getCells(1), - 160); - - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Methane.getGas(1000), - Materials.Chloromethane.getGas(1000), - Materials.HydrochloricAcid.getCells(1), - Materials.Empty.getCells(1), - 80); - GT_Values.RA.addChemicalRecipe( - Materials.Methane.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorine.getGas(2000), - Materials.Chloromethane.getGas(1000), - Materials.HydrochloricAcid.getCells(1), - 80); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Methane.getGas(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chloromethane.getCells(1), - Materials.Empty.getCells(1), - 80); - GT_Values.RA.addChemicalRecipe( - Materials.Methane.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Chlorine.getGas(2000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chloromethane.getCells(1), - 80); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.Chloromethane.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.Chloromethane.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chloromethane.getCells(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chloromethane.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.Chloromethane.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.Chloromethane.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Chloromethane.getCells(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Chloromethane.getCells(1)).fluidInputs(Materials.Methanol.getFluid(1000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Methane.getGas(1000)).fluidOutputs(Materials.Chloromethane.getGas(1000)) + .duration(4 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methane.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.Chloromethane.getGas(1000)).duration(4 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chloromethane.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Methane.getGas(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)) + .duration(4 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methane.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chloromethane.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).duration(4 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // Cl6 + CH4 = CHCl3 + 3HCl - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(6), - GT_Utility.getIntegratedCircuit(3), - Materials.Methane.getGas(1000), - Materials.Chloroform.getFluid(1000), - Materials.HydrochloricAcid.getCells(3), - Materials.Empty.getCells(3), - 80); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Methane.getCells(1), - Materials.Empty.getCells(2), - Materials.Chlorine.getGas(6000), - Materials.Chloroform.getFluid(1000), - Materials.HydrochloricAcid.getCells(3), - GT_Values.NI, - 80, - 30); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(6), - GT_Utility.getIntegratedCircuit(13), - Materials.Methane.getGas(1000), - Materials.HydrochloricAcid.getFluid(3000), - Materials.Chloroform.getCells(1), - Materials.Empty.getCells(5), - 80); - GT_Values.RA.addChemicalRecipe( - Materials.Methane.getCells(1), - GT_Utility.getIntegratedCircuit(13), - Materials.Chlorine.getGas(6000), - Materials.HydrochloricAcid.getFluid(3000), - Materials.Chloroform.getCells(1), - 80); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(6), GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(Materials.HydrochloricAcid.getCells(3), Materials.Empty.getCells(3)) + .fluidInputs(Materials.Methane.getGas(1000)).fluidOutputs(Materials.Chloroform.getFluid(1000)) + .duration(4 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(6), GT_Utility.getIntegratedCircuit(13)) + .itemOutputs(Materials.Chloroform.getCells(1), Materials.Empty.getCells(5)) + .fluidInputs(Materials.Methane.getGas(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(3000)) + .duration(4 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methane.getCells(1), GT_Utility.getIntegratedCircuit(13)) + .itemOutputs(Materials.Chloroform.getCells(1)).fluidInputs(Materials.Chlorine.getGas(6000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(3000)).duration(4 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // H + F = HF - GT_Values.RA.addChemicalRecipe( - Materials.Fluorine.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(1000), - Materials.HydrofluoricAcid.getFluid(1000), - Materials.Empty.getCells(1), - 60, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Fluorine.getGas(1000), - Materials.HydrofluoricAcid.getFluid(1000), - Materials.Empty.getCells(1), - 60, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Fluorine.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Hydrogen.getGas(1000), - GT_Values.NF, - Materials.HydrofluoricAcid.getCells(1), - 60, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Fluorine.getGas(1000), - GT_Values.NF, - Materials.HydrofluoricAcid.getCells(1), - 60, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Fluorine.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(1000)) + .fluidOutputs(Materials.HydrofluoricAcid.getFluid(1000)).duration(3 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Fluorine.getGas(1000)) + .fluidOutputs(Materials.HydrofluoricAcid.getFluid(1000)).duration(3 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Fluorine.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.HydrofluoricAcid.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(1000)) + .noFluidOutputs().duration(3 * SECONDS).eut(8).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.HydrofluoricAcid.getCells(1)).fluidInputs(Materials.Fluorine.getGas(1000)) + .noFluidOutputs().duration(3 * SECONDS).eut(8).addTo(UniversalChemical); // 4HF + 2CHCl3 = C2F4 + 6HCl - GT_Values.RA.addChemicalRecipe( - Materials.Chloroform.getCells(2), - Materials.HydrofluoricAcid.getCells(4), - GT_Values.NF, - Materials.Tetrafluoroethylene.getGas(1000), - Materials.HydrochloricAcid.getCells(6), - 480, - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Chloroform.getCells(2), - Materials.Empty.getCells(4), - Materials.HydrofluoricAcid.getFluid(4000), - Materials.Tetrafluoroethylene.getGas(1000), - Materials.HydrochloricAcid.getCells(6), - 480, - 240); - GT_Values.RA.addChemicalRecipe( - Materials.HydrofluoricAcid.getCells(4), - Materials.Empty.getCells(2), - Materials.Chloroform.getFluid(2000), - Materials.Tetrafluoroethylene.getGas(1000), - Materials.HydrochloricAcid.getCells(6), - 480, - 240); - GT_Values.RA.addChemicalRecipe( - Materials.HydrofluoricAcid.getCells(4), - GT_Utility.getIntegratedCircuit(11), - Materials.Chloroform.getFluid(2000), - Materials.HydrochloricAcid.getFluid(6000), - Materials.Tetrafluoroethylene.getCells(1), - Materials.Empty.getCells(3), - 480, - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Chloroform.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.HydrofluoricAcid.getFluid(4000), - Materials.HydrochloricAcid.getFluid(6000), - Materials.Tetrafluoroethylene.getCells(1), - Materials.Empty.getCells(1), - 480, - 240); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chloroform.getCells(2), Materials.HydrofluoricAcid.getCells(4)) + .itemOutputs(Materials.HydrochloricAcid.getCells(6)).noFluidInputs() + .fluidOutputs(Materials.Tetrafluoroethylene.getGas(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chloroform.getCells(2), Materials.Empty.getCells(4)) + .itemOutputs(Materials.HydrochloricAcid.getCells(6)) + .fluidInputs(Materials.HydrofluoricAcid.getFluid(4000)) + .fluidOutputs(Materials.Tetrafluoroethylene.getGas(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrofluoricAcid.getCells(4), Materials.Empty.getCells(2)) + .itemOutputs(Materials.HydrochloricAcid.getCells(6)).fluidInputs(Materials.Chloroform.getFluid(2000)) + .fluidOutputs(Materials.Tetrafluoroethylene.getGas(1000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HydrofluoricAcid.getCells(4), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Tetrafluoroethylene.getCells(1), Materials.Empty.getCells(3)) + .fluidInputs(Materials.Chloroform.getFluid(2000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(6000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chloroform.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Tetrafluoroethylene.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.HydrofluoricAcid.getFluid(4000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(6000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); // Si + 2CH3Cl = C2H6Cl2Si - GT_Values.RA.addChemicalRecipe( - Materials.Silicon.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chloromethane.getGas(2000), - Materials.Dimethyldichlorosilane.getFluid(1000), - GT_Values.NI, - 240, - 96); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Silicon.getDust(1), - Materials.Chloromethane.getCells(2), - GT_Values.NF, - Materials.Dimethyldichlorosilane.getFluid(1000), - Materials.Empty.getCells(2), - GT_Values.NI, - 240, - 96); - - GT_Values.RA.addChemicalRecipe( - Materials.Dimethyldichlorosilane.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000), - Materials.DilutedHydrochloricAcid.getFluid(1000), - Materials.Polydimethylsiloxane.getDust(3), - Materials.Empty.getCells(1), - 240, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Dimethyldichlorosilane.getFluid(1000), - Materials.DilutedHydrochloricAcid.getFluid(1000), - Materials.Polydimethylsiloxane.getDust(3), - Materials.Empty.getCells(1), - 240, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Dimethyldichlorosilane.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Water.getFluid(1000), - GT_Values.NF, - Materials.Polydimethylsiloxane.getDust(3), - Materials.DilutedHydrochloricAcid.getCells(1), - 240, - 96); - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Dimethyldichlorosilane.getFluid(1000), - GT_Values.NF, - Materials.Polydimethylsiloxane.getDust(3), - Materials.DilutedHydrochloricAcid.getCells(1), - 240, - 96); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Dimethyldichlorosilane.getCells(1), - Materials.Water.getCells(1), - GT_Values.NF, - Materials.DilutedHydrochloricAcid.getFluid(1000), - Materials.Polydimethylsiloxane.getDust(3), - Materials.Empty.getCells(2), - 240, - 96); - - GT_Values.RA.addChemicalRecipe( - Materials.Polydimethylsiloxane.getDust(9), - Materials.Sulfur.getDust(1), - GT_Values.NF, - Materials.Silicone.getMolten(1296), - GT_Values.NI, - 600); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Chloromethane.getGas(2000)) + .fluidOutputs(Materials.Dimethyldichlorosilane.getFluid(1000)).duration(12 * SECONDS).eut(96) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Dimethyldichlorosilane.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).duration(12 * SECONDS).eut(96) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Dimethyldichlorosilane.getFluid(1000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).duration(12 * SECONDS).eut(96) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Dimethyldichlorosilane.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Polydimethylsiloxane.getDust(3), Materials.DilutedHydrochloricAcid.getCells(1)) + .fluidInputs(Materials.Water.getFluid(1000)).noFluidOutputs().duration(12 * SECONDS).eut(96) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Polydimethylsiloxane.getDust(3), Materials.DilutedHydrochloricAcid.getCells(1)) + .fluidInputs(Materials.Dimethyldichlorosilane.getFluid(1000)).noFluidOutputs().duration(12 * SECONDS) + .eut(96).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Polydimethylsiloxane.getDust(9), Materials.Sulfur.getDust(1)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Silicone.getMolten(1296)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // Potassium Nitride // K + HNO3 = KNO3 + H - GT_Values.RA.addChemicalRecipe( - Materials.Potassium.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.NitricAcid.getFluid(1000), - Materials.Hydrogen.getGas(1000), - Materials.PotassiumNitrade.getDust(5), - 100, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Potassium.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.PotassiumNitrade.getDust(5)).fluidInputs(Materials.NitricAcid.getFluid(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(1000)).duration(5 * SECONDS).eut(30).addTo(UniversalChemical); // Chromium Trioxide // CrO2 + O = CrO3 - GT_Values.RA.addChemicalRecipe( - Materials.ChromiumDioxide.getDust(3), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - GT_Values.NF, - Materials.ChromiumTrioxide.getDust(4), - GT_Values.NI, - 100, - 60); + + GT_Values.RA.stdBuilder().itemInputs(Materials.ChromiumDioxide.getDust(3), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.ChromiumTrioxide.getDust(4)).fluidInputs(Materials.Oxygen.getGas(1000)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // Nitrochlorobenzene // C6H5Cl + HNO3 = C6H4ClNO2 + H2O - GT_Values.RA.addChemicalRecipe( - Materials.Chlorobenzene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.NitrationMixture.getFluid(2000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Nitrochlorobenzene.getCells(1), - 100, - 480); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorobenzene.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.NitrationMixture.getFluid(2000), - Materials.Nitrochlorobenzene.getFluid(1000), - Materials.DilutedSulfuricAcid.getCells(1), - 100, - 480); - GT_Values.RA.addChemicalRecipe( - Materials.NitrationMixture.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorobenzene.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Nitrochlorobenzene.getCells(1), - Materials.Empty.getCells(1), - 100, - 480); - GT_Values.RA.addChemicalRecipe( - Materials.NitrationMixture.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Chlorobenzene.getFluid(1000), - Materials.Nitrochlorobenzene.getFluid(1000), - Materials.DilutedSulfuricAcid.getCells(1), - Materials.Empty.getCells(1), - 100, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorobenzene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Nitrochlorobenzene.getCells(1)) + .fluidInputs(Materials.NitrationMixture.getFluid(2000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorobenzene.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(1)) + .fluidInputs(Materials.NitrationMixture.getFluid(2000)) + .fluidOutputs(Materials.Nitrochlorobenzene.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitrationMixture.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Nitrochlorobenzene.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Chlorobenzene.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.NitrationMixture.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Chlorobenzene.getFluid(1000)) + .fluidOutputs(Materials.Nitrochlorobenzene.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); // C6H6 + 2CH4 = C8H10 + 4H - GT_Values.RA.addChemicalRecipe( - Materials.Methane.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Benzene.getFluid(1000), - Materials.Hydrogen.getGas(4000), - Materials.Dimethylbenzene.getCells(1), - Materials.Empty.getCells(1), - 4000, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Benzene.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Methane.getGas(2000), - Materials.Hydrogen.getGas(4000), - Materials.Dimethylbenzene.getCells(1), - 4000, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methane.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Dimethylbenzene.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getGas(4000)) + .duration(3 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Dimethylbenzene.getCells(1)).fluidInputs(Materials.Methane.getGas(2000)) + .fluidOutputs(Materials.Hydrogen.getGas(4000)).duration(3 * MINUTES + 20 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // Phthalic Acid // C8H10 + 6O =K2Cr2O7= C8H6O4 + 2H2O - GT_Values.RA.addChemicalRecipe( - Materials.Dimethylbenzene.getCells(1), - Materials.Potassiumdichromate.getDustTiny(1), - Materials.Oxygen.getGas(6000), - Materials.Water.getFluid(2000), - Materials.PhthalicAcid.getCells(1), - 100, - 1920); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(6), - Materials.Potassiumdichromate.getDustTiny(1), - Materials.Dimethylbenzene.getFluid(1000), - Materials.Water.getFluid(2000), - Materials.PhthalicAcid.getCells(1), - ItemList.Cell_Empty.get(5L), - 100, - 1920); - - GT_Values.RA.addChemicalRecipe( - Materials.Dimethylbenzene.getCells(9), - Materials.Potassiumdichromate.getDust(1), - Materials.Oxygen.getGas(54000), - Materials.Water.getFluid(18000), - Materials.PhthalicAcid.getCells(9), - 900, - 1920); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(54), - Materials.Potassiumdichromate.getDust(1), - Materials.Dimethylbenzene.getFluid(9000), - Materials.Water.getFluid(18000), - Materials.PhthalicAcid.getCells(9), - ItemList.Cell_Empty.get(45L), - 900, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Dimethylbenzene.getCells(1), Materials.Potassiumdichromate.getDustTiny(1)) + .itemOutputs(Materials.PhthalicAcid.getCells(1)).fluidInputs(Materials.Oxygen.getGas(6000)) + .fluidOutputs(Materials.Water.getFluid(2000)).duration(5 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(6), Materials.Potassiumdichromate.getDustTiny(1)) + .itemOutputs(Materials.PhthalicAcid.getCells(1), ItemList.Cell_Empty.get(5)) + .fluidInputs(Materials.Dimethylbenzene.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(2000)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_EV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Dimethylbenzene.getCells(9), Materials.Potassiumdichromate.getDust(1)) + .itemOutputs(Materials.PhthalicAcid.getCells(9)).fluidInputs(Materials.Oxygen.getGas(54000)) + .fluidOutputs(Materials.Water.getFluid(18000)).duration(45 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(54), Materials.Potassiumdichromate.getDust(1)) + .itemOutputs(Materials.PhthalicAcid.getCells(9), ItemList.Cell_Empty.get(45)) + .fluidInputs(Materials.Dimethylbenzene.getFluid(9000)).fluidOutputs(Materials.Water.getFluid(18000)) + .duration(45 * SECONDS).eut(TierEU.RECIPE_EV).addTo(UniversalChemical); // These following recipes are broken in element term. // But they are kept in gamewise, too much existed setup will be broken. // Dichlorobenzidine - GT_Values.RA.addChemicalRecipe( - Materials.Copper.getDustTiny(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Nitrochlorobenzene.getFluid(2000), - Materials.Dichlorobenzidine.getFluid(1000), - null, - 200, - 1920); - GT_Values.RA.addChemicalRecipe( - Materials.Copper.getDust(1), - GT_Utility.getIntegratedCircuit(9), - Materials.Nitrochlorobenzene.getFluid(18000), - Materials.Dichlorobenzidine.getFluid(9000), - null, - 1800, - 1920); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Copper.getDustTiny(1), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Nitrochlorobenzene.getFluid(2000)) + .fluidOutputs(Materials.Dichlorobenzidine.getFluid(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Copper.getDust(1), GT_Utility.getIntegratedCircuit(9)) + .noItemOutputs().fluidInputs(Materials.Nitrochlorobenzene.getFluid(18000)) + .fluidOutputs(Materials.Dichlorobenzidine.getFluid(9000)).duration(1 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(UniversalChemical); // Diphenyl Isophthalate - GT_Values.RA.addChemicalRecipe( - Materials.PhthalicAcid.getCells(1), - Materials.SulfuricAcid.getCells(1), - Materials.Phenol.getFluid(2000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Diphenylisophthalate.getCells(1), - ItemList.Cell_Empty.get(1L), - 100, - 7680); - GT_Values.RA.addChemicalRecipe( - Materials.PhthalicAcid.getCells(1), - Materials.Phenol.getCells(2), - Materials.SulfuricAcid.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Diphenylisophthalate.getCells(1), - ItemList.Cell_Empty.get(2L), - 100, - 7680); - GT_Values.RA.addChemicalRecipe( - Materials.SulfuricAcid.getCells(1), - Materials.Phenol.getCells(2), - Materials.PhthalicAcid.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Diphenylisophthalate.getCells(1), - ItemList.Cell_Empty.get(2L), - 100, - 7680); + + GT_Values.RA.stdBuilder().itemInputs(Materials.PhthalicAcid.getCells(1), Materials.SulfuricAcid.getCells(1)) + .itemOutputs(Materials.Diphenylisophthalate.getCells(1), ItemList.Cell_Empty.get(1)) + .fluidInputs(Materials.Phenol.getFluid(2000)).fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_IV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.PhthalicAcid.getCells(1), Materials.Phenol.getCells(2)) + .itemOutputs(Materials.Diphenylisophthalate.getCells(1), ItemList.Cell_Empty.get(2)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_IV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(1), Materials.Phenol.getCells(2)) + .itemOutputs(Materials.Diphenylisophthalate.getCells(1), ItemList.Cell_Empty.get(2)) + .fluidInputs(Materials.PhthalicAcid.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_IV) + .addTo(UniversalChemical); // Diaminobenzidin - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(2), - Materials.Zinc.getDust(1), - Materials.Dichlorobenzidine.getFluid(1000), - Materials.HydrochloricAcid.getFluid(2000), - Materials.Diaminobenzidin.getCells(1), - ItemList.Cell_Empty.get(1L), - 100, - 7680); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(2), Materials.Zinc.getDust(1)) + .itemOutputs(Materials.Diaminobenzidin.getCells(1), ItemList.Cell_Empty.get(1)) + .fluidInputs(Materials.Dichlorobenzidine.getFluid(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(2000)).duration(5 * SECONDS).eut(TierEU.RECIPE_IV) + .addTo(UniversalChemical); // Polybenzimidazole // C12H14N4 + C20H14O4 = C20H12N4 + 2C6H6O + 2H2O - GT_Values.RA.addChemicalRecipe( - Materials.Diphenylisophthalate.getCells(1), - Materials.Diaminobenzidin.getCells(1), - GT_Values.NF, - Materials.Polybenzimidazole.getMolten(1000), - Materials.Phenol.getCells(2), - 100, - 7680); - - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), - Materials.Glass.getMolten(864L), - GT_Values.NF, - getModItem(MOD_ID_RC, "tile.railcraft.glass", 6L), - 50); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Diphenylisophthalate.getCells(1), Materials.Diaminobenzidin.getCells(1)) + .itemOutputs(Materials.Phenol.getCells(2)).noFluidInputs() + .fluidOutputs(Materials.Polybenzimidazole.getMolten(1000)).duration(5 * SECONDS).eut(TierEU.RECIPE_IV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1)) + .itemOutputs(getModItem(Railcraft.modID, "tile.railcraft.glass", 6)) + .fluidInputs(Materials.Glass.getMolten(864)).noFluidOutputs().duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // NH3 + 2CH4O = C2H7N + 2H2O - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Ammonia.getGas(1000), - Materials.Dimethylamine.getGas(1000), - Materials.Water.getCells(2), - 240, - 120); - - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Ammonia.getGas(1000), - Materials.Water.getFluid(1000), - Materials.Dimethylamine.getCells(1), - Materials.Empty.getCells(1), - 240, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Methanol.getFluid(2000), - Materials.Water.getFluid(1000), - Materials.Dimethylamine.getCells(1), - 240, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(2), - GT_Utility.getIntegratedCircuit(2), - Materials.Ammonia.getGas(1000), - Materials.Dimethylamine.getGas(1000), - Materials.Empty.getCells(2), - 240, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Methanol.getCells(2), - GT_Utility.getIntegratedCircuit(12), - Materials.Ammonia.getGas(1000), - GT_Values.NF, - Materials.Dimethylamine.getCells(1), - Materials.Empty.getCells(1), - 240, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Methanol.getFluid(2000), - GT_Values.NF, - Materials.Dimethylamine.getCells(1), - 240, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(2)).fluidInputs(Materials.Ammonia.getGas(1000)) + .fluidOutputs(Materials.Dimethylamine.getGas(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Dimethylamine.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Ammonia.getGas(1000)).fluidOutputs(Materials.Water.getFluid(1000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Dimethylamine.getCells(1)).fluidInputs(Materials.Methanol.getFluid(2000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.Ammonia.getGas(1000)) + .fluidOutputs(Materials.Dimethylamine.getGas(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(2), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Dimethylamine.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Ammonia.getGas(1000)).noFluidOutputs().duration(12 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Dimethylamine.getCells(1)).fluidInputs(Materials.Methanol.getFluid(2000)) + .noFluidOutputs().duration(12 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); // NH3 + HClO = NH2Cl + H2O - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.HypochlorousAcid.getFluid(1000), - Materials.Chloramine.getFluid(1000), - Materials.Water.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HypochlorousAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Ammonia.getGas(1000), - Materials.Chloramine.getFluid(1000), - Materials.Water.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.HypochlorousAcid.getFluid(1000), - Materials.Water.getFluid(1000), - Materials.Chloramine.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HypochlorousAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Ammonia.getGas(1000), - Materials.Water.getFluid(1000), - Materials.Chloramine.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.HypochlorousAcid.getFluid(1000), - Materials.Chloramine.getFluid(1000), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HypochlorousAcid.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Ammonia.getGas(1000), - Materials.Chloramine.getFluid(1000), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.HypochlorousAcid.getFluid(1000), - GT_Values.NF, - Materials.Chloramine.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.HypochlorousAcid.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Ammonia.getGas(1000), - GT_Values.NF, - Materials.Chloramine.getCells(1), - 160); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.HypochlorousAcid.getFluid(1000)) + .fluidOutputs(Materials.Chloramine.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HypochlorousAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.Ammonia.getGas(1000)) + .fluidOutputs(Materials.Chloramine.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chloramine.getCells(1)).fluidInputs(Materials.HypochlorousAcid.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HypochlorousAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chloramine.getCells(1)).fluidInputs(Materials.Ammonia.getGas(1000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.HypochlorousAcid.getFluid(1000)) + .fluidOutputs(Materials.Chloramine.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HypochlorousAcid.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Ammonia.getGas(1000)) + .fluidOutputs(Materials.Chloramine.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Chloramine.getCells(1)).fluidInputs(Materials.HypochlorousAcid.getFluid(1000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HypochlorousAcid.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Chloramine.getCells(1)).fluidInputs(Materials.Ammonia.getGas(1000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // 2NO2 = N2O4 - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - Materials.NitrogenDioxide.getGas(2000), - Materials.DinitrogenTetroxide.getGas(1000), - GT_Values.NI, - 640); - GT_Values.RA.addChemicalRecipe( - Materials.NitrogenDioxide.getCells(2), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NF, - Materials.DinitrogenTetroxide.getGas(1000), - Materials.Empty.getCells(2), - 640); - GT_Values.RA.addChemicalRecipe( - Materials.NitrogenDioxide.getCells(2), - GT_Utility.getIntegratedCircuit(12), - GT_Values.NF, - GT_Values.NF, - Materials.DinitrogenTetroxide.getCells(1), - Materials.Empty.getCells(1), - 640); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs(Materials.NitrogenDioxide.getGas(2000)) + .fluidOutputs(Materials.DinitrogenTetroxide.getGas(1000)).duration(32 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitrogenDioxide.getCells(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(2)).noFluidInputs() + .fluidOutputs(Materials.DinitrogenTetroxide.getGas(1000)).duration(32 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitrogenDioxide.getCells(2), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.DinitrogenTetroxide.getCells(1), Materials.Empty.getCells(1)).noFluidInputs() + .noFluidOutputs().duration(32 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // 2NH3 + 5O = 2NO + 3H2O - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(4), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(10000), - Materials.Water.getFluid(6000), - Materials.NitricOxide.getCells(4), - 320); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(10), - GT_Utility.getIntegratedCircuit(1), - Materials.Ammonia.getGas(4000), - Materials.Water.getFluid(6000), - Materials.NitricOxide.getCells(4), - Materials.Empty.getCells(6), - 320); - - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(10), - GT_Utility.getIntegratedCircuit(11), - Materials.Ammonia.getGas(4000), - Materials.NitricOxide.getGas(4000), - Materials.Water.getCells(6), - Materials.Empty.getCells(4), - 320); - GT_Values.RA.addChemicalRecipe( - Materials.Ammonia.getCells(4), - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(10000), - GT_Values.NF, - Materials.NitricOxide.getCells(4), - 320); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(10), - GT_Utility.getIntegratedCircuit(2), - Materials.Ammonia.getGas(4000), - GT_Values.NF, - Materials.NitricOxide.getCells(4), - Materials.Empty.getCells(6), - 320); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(10), - GT_Utility.getIntegratedCircuit(12), - Materials.Ammonia.getGas(4000), - Materials.NitricOxide.getGas(4000), - Materials.Empty.getCells(10), - 320); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(4), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.NitricOxide.getCells(4)).fluidInputs(Materials.Oxygen.getGas(10000)) + .fluidOutputs(Materials.Water.getFluid(6000)).duration(16 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(10), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.NitricOxide.getCells(4), Materials.Empty.getCells(6)) + .fluidInputs(Materials.Ammonia.getGas(4000)).fluidOutputs(Materials.Water.getFluid(6000)) + .duration(16 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(10), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Water.getCells(6), Materials.Empty.getCells(4)) + .fluidInputs(Materials.Ammonia.getGas(4000)).fluidOutputs(Materials.NitricOxide.getGas(4000)) + .duration(16 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(4), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.NitricOxide.getCells(4)).fluidInputs(Materials.Oxygen.getGas(10000)) + .noFluidOutputs().duration(16 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(10), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.NitricOxide.getCells(4), Materials.Empty.getCells(6)) + .fluidInputs(Materials.Ammonia.getGas(4000)).noFluidOutputs().duration(16 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(10), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Empty.getCells(10)).fluidInputs(Materials.Ammonia.getGas(4000)) + .fluidOutputs(Materials.NitricOxide.getGas(4000)).duration(16 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // NO + O = NO2 - GT_Values.RA.addChemicalRecipe( - Materials.NitricOxide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - Materials.NitrogenDioxide.getGas(1000), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.NitricOxide.getGas(1000), - Materials.NitrogenDioxide.getGas(1000), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.NitricOxide.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Oxygen.getGas(1000), - GT_Values.NF, - Materials.NitrogenDioxide.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.NitricOxide.getGas(1000), - GT_Values.NF, - Materials.NitrogenDioxide.getCells(1), - 160); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitricOxide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.NitrogenDioxide.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.NitricOxide.getGas(1000)) + .fluidOutputs(Materials.NitrogenDioxide.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitricOxide.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.NitrogenDioxide.getCells(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.NitrogenDioxide.getCells(1)).fluidInputs(Materials.NitricOxide.getGas(1000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // H2O + 3NO2 = 2HNO3 + NO - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.NitrogenDioxide.getGas(3000), - Materials.NitricAcid.getFluid(2000), - Materials.NitricOxide.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.NitrogenDioxide.getCells(3), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000), - Materials.NitricAcid.getFluid(2000), - Materials.NitricOxide.getCells(1), - Materials.Empty.getCells(2), - 240); - - GT_Values.RA.addChemicalRecipe( - Materials.NitrogenDioxide.getCells(3), - GT_Utility.getIntegratedCircuit(11), - Materials.Water.getFluid(1000), - Materials.NitricOxide.getGas(1000), - Materials.NitricAcid.getCells(2), - Materials.Empty.getCells(1), - 240); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.NitricOxide.getCells(1)).fluidInputs(Materials.NitrogenDioxide.getGas(3000)) + .fluidOutputs(Materials.NitricAcid.getFluid(2000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitrogenDioxide.getCells(3), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.NitricOxide.getCells(1), Materials.Empty.getCells(2)) + .fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(Materials.NitricAcid.getFluid(2000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitrogenDioxide.getCells(3), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.NitricAcid.getCells(2), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(Materials.NitricOxide.getGas(1000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // S + 2H = H2S - GT_Values.RA.addChemicalRecipe( - Materials.Sulfur.getDust(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(2000), - Materials.HydricSulfide.getGas(1000), - GT_Values.NI, - 60, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Hydrogen.getGas(2000)) + .fluidOutputs(Materials.HydricSulfide.getGas(1000)).duration(3 * SECONDS).eut(8) + .addTo(UniversalChemical); // S + 2O = SO2 - GT_Values.RA.addChemicalRecipe( - Materials.Sulfur.getDust(1), - GT_Utility.getIntegratedCircuit(3), - Materials.Oxygen.getGas(2000), - Materials.SulfurDioxide.getGas(1000), - GT_Values.NI, - 60, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(3)) + .noItemOutputs().fluidInputs(Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(1000)).duration(3 * SECONDS).eut(8) + .addTo(UniversalChemical); // H2S + 3O = SO2 + H2O - GT_Values.RA.addChemicalRecipe( - Materials.HydricSulfide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(1000), - Materials.Water.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(3), - GT_Utility.getIntegratedCircuit(1), - Materials.HydricSulfide.getGas(1000), - Materials.SulfurDioxide.getGas(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(2), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.HydricSulfide.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Oxygen.getGas(3000), - Materials.Water.getFluid(1000), - Materials.SulfurDioxide.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(3), - GT_Utility.getIntegratedCircuit(11), - Materials.HydricSulfide.getGas(1000), - Materials.Water.getFluid(1000), - Materials.SulfurDioxide.getCells(1), - Materials.Empty.getCells(2), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.HydricSulfide.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Oxygen.getGas(3000), - Materials.SulfurDioxide.getGas(1000), - Materials.Empty.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(3), - GT_Utility.getIntegratedCircuit(2), - Materials.HydricSulfide.getGas(1000), - Materials.SulfurDioxide.getGas(1000), - Materials.Empty.getCells(3), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.HydricSulfide.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.Oxygen.getGas(3000), - GT_Values.NF, - Materials.SulfurDioxide.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(3), - GT_Utility.getIntegratedCircuit(12), - Materials.HydricSulfide.getGas(1000), - GT_Values.NF, - Materials.SulfurDioxide.getCells(1), - Materials.Empty.getCells(2), - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydricSulfide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.Oxygen.getGas(3000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(2)) + .fluidInputs(Materials.HydricSulfide.getGas(1000)).fluidOutputs(Materials.SulfurDioxide.getGas(1000)) + .duration(6 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydricSulfide.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.SulfurDioxide.getCells(1)).fluidInputs(Materials.Oxygen.getGas(3000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.SulfurDioxide.getCells(1), Materials.Empty.getCells(2)) + .fluidInputs(Materials.HydricSulfide.getGas(1000)).fluidOutputs(Materials.Water.getFluid(1000)) + .duration(6 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydricSulfide.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Oxygen.getGas(3000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(3)).fluidInputs(Materials.HydricSulfide.getGas(1000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydricSulfide.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.SulfurDioxide.getCells(1)).fluidInputs(Materials.Oxygen.getGas(3000)) + .noFluidOutputs().duration(6 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.SulfurDioxide.getCells(1), Materials.Empty.getCells(2)) + .fluidInputs(Materials.HydricSulfide.getGas(1000)).noFluidOutputs().duration(6 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // 2H2S + SO2 = 3S + 2H2O - GT_Values.RA.addChemicalRecipe( - Materials.SulfurDioxide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.HydricSulfide.getGas(2000), - Materials.Water.getFluid(2000), - Materials.Sulfur.getDust(3), - Materials.Empty.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.HydricSulfide.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfurDioxide.getGas(1000), - Materials.Water.getFluid(2000), - Materials.Sulfur.getDust(3), - Materials.Empty.getCells(2), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.SulfurDioxide.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.HydricSulfide.getGas(2000), - GT_Values.NF, - Materials.Sulfur.getDust(3), - Materials.Empty.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.HydricSulfide.getCells(2), - GT_Utility.getIntegratedCircuit(2), - Materials.SulfurDioxide.getGas(1000), - GT_Values.NF, - Materials.Sulfur.getDust(3), - Materials.Empty.getCells(2), - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfurDioxide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Sulfur.getDust(3), Materials.Empty.getCells(1)) + .fluidInputs(Materials.HydricSulfide.getGas(2000)).fluidOutputs(Materials.Water.getFluid(2000)) + .duration(6 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydricSulfide.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Sulfur.getDust(3), Materials.Empty.getCells(2)) + .fluidInputs(Materials.SulfurDioxide.getGas(1000)).fluidOutputs(Materials.Water.getFluid(2000)) + .duration(6 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfurDioxide.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Sulfur.getDust(3), Materials.Empty.getCells(1)) + .fluidInputs(Materials.HydricSulfide.getGas(2000)).noFluidOutputs().duration(6 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydricSulfide.getCells(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Sulfur.getDust(3), Materials.Empty.getCells(2)) + .fluidInputs(Materials.SulfurDioxide.getGas(1000)).noFluidOutputs().duration(6 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // SO2 + O = SO3 - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfurDioxide.getGas(1000), - Materials.SulfurTrioxide.getGas(1000), - Materials.Empty.getCells(1), - 200); - GT_Values.RA.addChemicalRecipe( - Materials.SulfurDioxide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000), - Materials.SulfurTrioxide.getGas(1000), - Materials.Empty.getCells(1), - 200); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.SulfurDioxide.getGas(1000), - GT_Values.NF, - Materials.SulfurTrioxide.getCells(1), - 200); - GT_Values.RA.addChemicalRecipe( - Materials.SulfurDioxide.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Oxygen.getGas(1000), - GT_Values.NF, - Materials.SulfurTrioxide.getCells(1), - 200); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.SulfurDioxide.getGas(1000)) + .fluidOutputs(Materials.SulfurTrioxide.getGas(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfurDioxide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.SulfurTrioxide.getGas(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.SulfurTrioxide.getCells(1)).fluidInputs(Materials.SulfurDioxide.getGas(1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfurDioxide.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.SulfurTrioxide.getCells(1)).fluidInputs(Materials.Oxygen.getGas(1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // SO3 + H2O = H2SO4 - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfurTrioxide.getGas(1000), - Materials.SulfuricAcid.getFluid(1000), - Materials.Empty.getCells(1), - 320, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.SulfurTrioxide.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000), - Materials.SulfuricAcid.getFluid(1000), - Materials.Empty.getCells(1), - 320, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.SulfurTrioxide.getGas(1000), - GT_Values.NF, - Materials.SulfuricAcid.getCells(1), - 320, - 8); - GT_Values.RA.addChemicalRecipe( - Materials.SulfurTrioxide.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Water.getFluid(1000), - GT_Values.NF, - Materials.SulfuricAcid.getCells(1), - 320, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.SulfurTrioxide.getGas(1000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(16 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfurTrioxide.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(16 * SECONDS).eut(8) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.SulfuricAcid.getCells(1)).fluidInputs(Materials.SulfurTrioxide.getGas(1000)) + .noFluidOutputs().duration(16 * SECONDS).eut(8).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfurTrioxide.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.SulfuricAcid.getCells(1)).fluidInputs(Materials.Water.getFluid(1000)) + .noFluidOutputs().duration(16 * SECONDS).eut(8).addTo(UniversalChemical); // C2H4 + 2Cl = C2H3Cl + HCl - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Ethylene.getGas(1000), - Materials.VinylChloride.getGas(1000), - Materials.HydrochloricAcid.getCells(1), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorine.getGas(2000), - Materials.VinylChloride.getGas(1000), - Materials.HydrochloricAcid.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Ethylene.getGas(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.VinylChloride.getCells(1), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Chlorine.getGas(2000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.VinylChloride.getCells(1), - 160); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Ethylene.getGas(1000)).fluidOutputs(Materials.VinylChloride.getGas(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.VinylChloride.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.VinylChloride.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Ethylene.getGas(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.VinylChloride.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // C2H4O2 =H2SO4= C2H2O + H2O - GT_Values.RA.addChemicalRecipe( - Materials.AceticAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Ethenone.getCells(1), - 160, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.SulfuricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.AceticAcid.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Ethenone.getCells(1), - 160, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.AceticAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.SulfuricAcid.getFluid(1000), - Materials.Ethenone.getGas(1000), - Materials.DilutedSulfuricAcid.getCells(1), - 160, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.SulfuricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.AceticAcid.getFluid(1000), - Materials.Ethenone.getGas(1000), - Materials.DilutedSulfuricAcid.getCells(1), - 160, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.AceticAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ethenone.getCells(1)).fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Ethenone.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.AceticAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)).fluidOutputs(Materials.Ethenone.getGas(1000)) + .duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(1000)) + .fluidOutputs(Materials.Ethenone.getGas(1000)).duration(8 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); // C2H2O + 8HNO3 = 2CN4O8 + 9H2O // Chemically this recipe is wrong, but kept for minimizing breaking change. - GT_Values.RA.addChemicalRecipe( - Materials.Ethenone.getCells(1), - Materials.Empty.getCells(1), - Materials.NitricAcid.getFluid(8000), - Materials.Water.getFluid(9000), - Materials.Tetranitromethane.getCells(2), - 480, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ethenone.getCells(1), - GT_Utility.getIntegratedCircuit(12), - Materials.NitricAcid.getFluid(8000), - Materials.Tetranitromethane.getFluid(2000), - Materials.Empty.getCells(1), - 480, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.NitricAcid.getCells(8), - GT_Utility.getIntegratedCircuit(1), - Materials.Ethenone.getGas(1000), - Materials.Water.getFluid(9000), - Materials.Tetranitromethane.getCells(2), - Materials.Empty.getCells(6), - 480, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.NitricAcid.getCells(8), - GT_Utility.getIntegratedCircuit(2), - Materials.Ethenone.getGas(1000), - GT_Values.NF, - Materials.Tetranitromethane.getCells(2), - Materials.Empty.getCells(6), - 480, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.NitricAcid.getCells(8), - GT_Utility.getIntegratedCircuit(12), - Materials.Ethenone.getGas(1000), - Materials.Tetranitromethane.getFluid(2000), - Materials.Empty.getCells(8), - 480, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.NitricAcid.getCells(8), - Materials.Empty.getCells(1), - Materials.Ethenone.getGas(1000), - Materials.Tetranitromethane.getFluid(2000), - Materials.Water.getCells(9), - 480, - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ethenone.getCells(1), - Materials.NitricAcid.getCells(8), - GT_Values.NF, - Materials.Tetranitromethane.getFluid(2000), - Materials.Water.getCells(9), - 480, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethenone.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Tetranitromethane.getCells(2)).fluidInputs(Materials.NitricAcid.getFluid(8000)) + .fluidOutputs(Materials.Water.getFluid(9000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethenone.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.NitricAcid.getFluid(8000)) + .fluidOutputs(Materials.Tetranitromethane.getFluid(2000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitricAcid.getCells(8), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Tetranitromethane.getCells(2), Materials.Empty.getCells(6)) + .fluidInputs(Materials.Ethenone.getGas(1000)).fluidOutputs(Materials.Water.getFluid(9000)) + .duration(24 * SECONDS).eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitricAcid.getCells(8), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Tetranitromethane.getCells(2), Materials.Empty.getCells(6)) + .fluidInputs(Materials.Ethenone.getGas(1000)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitricAcid.getCells(8), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.Empty.getCells(8)).fluidInputs(Materials.Ethenone.getGas(1000)) + .fluidOutputs(Materials.Tetranitromethane.getFluid(2000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitricAcid.getCells(8), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Water.getCells(9)).fluidInputs(Materials.Ethenone.getGas(1000)) + .fluidOutputs(Materials.Tetranitromethane.getFluid(2000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethenone.getCells(1), Materials.NitricAcid.getCells(8)) + .itemOutputs(Materials.Water.getCells(9)).noFluidInputs() + .fluidOutputs(Materials.Tetranitromethane.getFluid(2000)).duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); // C3H6 + C2H4 = C5H8 + 2H - GT_Values.RA.addChemicalRecipe( - Materials.Propene.getCells(1), - Materials.Empty.getCells(1), - Materials.Ethylene.getGas(1000), - Materials.Isoprene.getFluid(1000), - Materials.Hydrogen.getCells(2), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - Materials.Empty.getCells(1), - Materials.Propene.getGas(1000), - Materials.Isoprene.getFluid(1000), - Materials.Hydrogen.getCells(2), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Propene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Ethylene.getGas(1000), - Materials.Hydrogen.getGas(2000), - Materials.Isoprene.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Propene.getGas(1000), - Materials.Hydrogen.getGas(2000), - Materials.Isoprene.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(5), - Materials.Propene.getGas(2000), - Materials.Isoprene.getFluid(1000), - Materials.Methane.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Propene.getCells(2), - GT_Utility.getIntegratedCircuit(5), - GT_Values.NF, - Materials.Isoprene.getFluid(1000), - Materials.Methane.getCells(1), - Materials.Empty.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(15), - Materials.Propene.getGas(2000), - Materials.Methane.getGas(1000), - Materials.Isoprene.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Propene.getCells(2), - GT_Utility.getIntegratedCircuit(15), - GT_Values.NF, - Materials.Methane.getGas(1000), - Materials.Isoprene.getCells(1), - Materials.Empty.getCells(1), - 120); - - GT_Values.RA.addChemicalRecipe( - ItemList.Cell_Air.get(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Isoprene.getFluid(144), - GT_Values.NF, - Materials.RawRubber.getDust(1), - Materials.Empty.getCells(1), - 160); - GT_Values.RA.addChemicalRecipe( - Materials.Oxygen.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Isoprene.getFluid(288), - GT_Values.NF, - Materials.RawRubber.getDust(3), - Materials.Empty.getCells(2), - 320); - GT_Values.RA.addChemicalRecipe( - Materials.Isoprene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Air.getGas(14000), - GT_Values.NF, - Materials.RawRubber.getDust(7), - Materials.Empty.getCells(1), - 1120); - GT_Values.RA.addChemicalRecipe( - Materials.Isoprene.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(14000), - GT_Values.NF, - Materials.RawRubber.getDust(21), - Materials.Empty.getCells(2), - 2240); - - GT_Values.RA.addChemicalRecipe( - Materials.Benzene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Ethylene.getGas(1000), - Materials.Hydrogen.getGas(2000), - Materials.Styrene.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Benzene.getFluid(1000), - Materials.Hydrogen.getGas(2000), - Materials.Styrene.getCells(1), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Benzene.getCells(1), - Materials.Empty.getCells(1), - Materials.Ethylene.getGas(1000), - Materials.Styrene.getFluid(1000), - Materials.Hydrogen.getCells(2), - 120); - GT_Values.RA.addChemicalRecipe( - Materials.Ethylene.getCells(1), - Materials.Empty.getCells(1), - Materials.Benzene.getFluid(1000), - Materials.Styrene.getFluid(1000), - Materials.Hydrogen.getCells(2), - 120); - - GT_Values.RA.addChemicalRecipe( - Materials.RawStyreneButadieneRubber.getDust(9), - Materials.Sulfur.getDust(1), - GT_Values.NF, - Materials.StyreneButadieneRubber.getMolten(1296), - GT_Values.NI, - 600); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Propene.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Hydrogen.getCells(2)).fluidInputs(Materials.Ethylene.getGas(1000)) + .fluidOutputs(Materials.Isoprene.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Hydrogen.getCells(2)).fluidInputs(Materials.Propene.getGas(1000)) + .fluidOutputs(Materials.Isoprene.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Propene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Isoprene.getCells(1)).fluidInputs(Materials.Ethylene.getGas(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(2000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Isoprene.getCells(1)).fluidInputs(Materials.Propene.getGas(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(2000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(Materials.Methane.getCells(1)).fluidInputs(Materials.Propene.getGas(2000)) + .fluidOutputs(Materials.Isoprene.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Propene.getCells(2), GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(Materials.Methane.getCells(1), Materials.Empty.getCells(1)).noFluidInputs() + .fluidOutputs(Materials.Isoprene.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(15)) + .itemOutputs(Materials.Isoprene.getCells(1)).fluidInputs(Materials.Propene.getGas(2000)) + .fluidOutputs(Materials.Methane.getGas(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Propene.getCells(2), GT_Utility.getIntegratedCircuit(15)) + .itemOutputs(Materials.Isoprene.getCells(1), Materials.Empty.getCells(1)).noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Air.get(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.RawRubber.getDust(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Isoprene.getFluid(144)).noFluidOutputs().duration(8 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.RawRubber.getDust(3), Materials.Empty.getCells(2)) + .fluidInputs(Materials.Isoprene.getFluid(288)).noFluidOutputs().duration(16 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Isoprene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.RawRubber.getDust(7), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Air.getGas(14000)).noFluidOutputs().duration(56 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Isoprene.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.RawRubber.getDust(21), Materials.Empty.getCells(2)) + .fluidInputs(Materials.Oxygen.getGas(14000)).noFluidOutputs().duration(1 * MINUTES + 52 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Styrene.getCells(1)).fluidInputs(Materials.Ethylene.getGas(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(2000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Styrene.getCells(1)).fluidInputs(Materials.Benzene.getFluid(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(2000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Hydrogen.getCells(2)).fluidInputs(Materials.Ethylene.getGas(1000)) + .fluidOutputs(Materials.Styrene.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Hydrogen.getCells(2)).fluidInputs(Materials.Benzene.getFluid(1000)) + .fluidOutputs(Materials.Styrene.getFluid(1000)).duration(6 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.RawStyreneButadieneRubber.getDust(9), Materials.Sulfur.getDust(1)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.StyreneButadieneRubber.getMolten(1296)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // C6H6 + 4Cl = C6H4Cl2 + 2HCl - GT_Values.RA.addChemicalRecipe( - Materials.Benzene.getCells(1), - GT_Utility.getIntegratedCircuit(2), - Materials.Chlorine.getGas(4000), - Materials.HydrochloricAcid.getFluid(2000), - Materials.Dichlorobenzene.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(4), - GT_Utility.getIntegratedCircuit(2), - Materials.Benzene.getFluid(1000), - Materials.HydrochloricAcid.getFluid(2000), - Materials.Dichlorobenzene.getCells(1), - Materials.Empty.getCells(3), - 240); - - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(4), - GT_Utility.getIntegratedCircuit(12), - Materials.Benzene.getFluid(1000), - Materials.Dichlorobenzene.getFluid(1000), - Materials.HydrochloricAcid.getCells(2), - Materials.Empty.getCells(2), - 240); - - GT_Values.RA.addChemicalRecipe( - Materials.SodiumSulfide.getDust(3), - ItemList.Cell_Air.get(8), - Materials.Dichlorobenzene.getFluid(1000), - Materials.PolyphenyleneSulfide.getMolten(1000), - Materials.Salt.getDust(2), - Materials.Empty.getCells(8), - 240, - 360); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumSulfide.getDust(3), - Materials.Oxygen.getCells(8), - Materials.Dichlorobenzene.getFluid(1000), - Materials.PolyphenyleneSulfide.getMolten(1500), - Materials.Salt.getDust(2), - Materials.Empty.getCells(8), - 240, - 360); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Dichlorobenzene.getCells(1)).fluidInputs(Materials.Chlorine.getGas(4000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(2000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(4), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Dichlorobenzene.getCells(1), Materials.Empty.getCells(3)) + .fluidInputs(Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(2000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(4), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Materials.HydrochloricAcid.getCells(2), Materials.Empty.getCells(2)) + .fluidInputs(Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.Dichlorobenzene.getFluid(1000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumSulfide.getDust(3), ItemList.Cell_Air.get(8)) + .itemOutputs(Materials.Salt.getDust(2), Materials.Empty.getCells(8)) + .fluidInputs(Materials.Dichlorobenzene.getFluid(1000)) + .fluidOutputs(Materials.PolyphenyleneSulfide.getMolten(1000)).duration(12 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumSulfide.getDust(3), Materials.Oxygen.getCells(8)) + .itemOutputs(Materials.Salt.getDust(2), Materials.Empty.getCells(8)) + .fluidInputs(Materials.Dichlorobenzene.getFluid(1000)) + .fluidOutputs(Materials.PolyphenyleneSulfide.getMolten(1500)).duration(12 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(UniversalChemical); // NaCl + H2SO4 = NaHSO4 + HCl - GT_Values.RA.addChemicalRecipe( - Materials.Salt.getDust(2), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.SodiumBisulfate.getDust(7), - 60); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Salt.getDust(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.SodiumBisulfate.getDust(7)).fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).duration(3 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // NaOH + H2SO4 = NaHSO4 + H2O - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(3), - GT_Utility.getIntegratedCircuit(1), - Materials.SulfuricAcid.getFluid(1000), - Materials.Water.getFluid(1000), - Materials.SodiumBisulfate.getDust(7), - 60); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.SodiumBisulfate.getDust(7)).fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(1000)).duration(3 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // Biodiesel recipes - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.Methanol.getCells(1), - Materials.SeedOil.getFluid(6000), - Materials.BioDiesel.getFluid(6000), - Materials.Glycerol.getCells(1), - 600); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.SeedOil.getCells(6), - Materials.Methanol.getFluid(1000), - Materials.Glycerol.getFluid(1000), - Materials.BioDiesel.getCells(6), - 600); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.Methanol.getCells(1), - Materials.FishOil.getFluid(6000), - Materials.BioDiesel.getFluid(6000), - Materials.Glycerol.getCells(1), - 600); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.FishOil.getCells(6), - Materials.Methanol.getFluid(1000), - Materials.Glycerol.getFluid(1000), - Materials.BioDiesel.getCells(6), - 600); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.Ethanol.getCells(1), - Materials.SeedOil.getFluid(6000), - Materials.BioDiesel.getFluid(6000), - Materials.Glycerol.getCells(1), - 600); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.SeedOil.getCells(6), - Materials.Ethanol.getFluid(1000), - Materials.Glycerol.getFluid(1000), - Materials.BioDiesel.getCells(6), - 600); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.Ethanol.getCells(1), - Materials.FishOil.getFluid(6000), - Materials.BioDiesel.getFluid(6000), - Materials.Glycerol.getCells(1), - 600); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDustTiny(1), - Materials.FishOil.getCells(6), - Materials.Ethanol.getFluid(1000), - Materials.Glycerol.getFluid(1000), - Materials.BioDiesel.getCells(6), - 600); - - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.Methanol.getCells(9), - Materials.SeedOil.getFluid(54000), - Materials.BioDiesel.getFluid(54000), - Materials.Glycerol.getCells(9), - 5400); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.SeedOil.getCells(54), - Materials.Methanol.getFluid(9000), - Materials.Glycerol.getFluid(9000), - Materials.BioDiesel.getCells(54), - 5400); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.Methanol.getCells(9), - Materials.FishOil.getFluid(54000), - Materials.BioDiesel.getFluid(54000), - Materials.Glycerol.getCells(9), - 5400); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.FishOil.getCells(54), - Materials.Methanol.getFluid(9000), - Materials.Glycerol.getFluid(9000), - Materials.BioDiesel.getCells(54), - 5400); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.Ethanol.getCells(9), - Materials.SeedOil.getFluid(54000), - Materials.BioDiesel.getFluid(54000), - Materials.Glycerol.getCells(9), - 5400); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.SeedOil.getCells(54), - Materials.Ethanol.getFluid(9000), - Materials.Glycerol.getFluid(9000), - Materials.BioDiesel.getCells(54), - 5400); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.Ethanol.getCells(9), - Materials.FishOil.getFluid(54000), - Materials.BioDiesel.getFluid(54000), - Materials.Glycerol.getCells(9), - 5400); - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(1), - Materials.FishOil.getCells(54), - Materials.Ethanol.getFluid(9000), - Materials.Glycerol.getFluid(9000), - Materials.BioDiesel.getCells(54), - 5400); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.Methanol.getCells(1)) + .itemOutputs(Materials.Glycerol.getCells(1)).fluidInputs(Materials.SeedOil.getFluid(6000)) + .fluidOutputs(Materials.BioDiesel.getFluid(6000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.SeedOil.getCells(6)) + .itemOutputs(Materials.BioDiesel.getCells(6)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.Glycerol.getFluid(1000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.Methanol.getCells(1)) + .itemOutputs(Materials.Glycerol.getCells(1)).fluidInputs(Materials.FishOil.getFluid(6000)) + .fluidOutputs(Materials.BioDiesel.getFluid(6000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.FishOil.getCells(6)) + .itemOutputs(Materials.BioDiesel.getCells(6)).fluidInputs(Materials.Methanol.getFluid(1000)) + .fluidOutputs(Materials.Glycerol.getFluid(1000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.Ethanol.getCells(1)) + .itemOutputs(Materials.Glycerol.getCells(1)).fluidInputs(Materials.SeedOil.getFluid(6000)) + .fluidOutputs(Materials.BioDiesel.getFluid(6000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.SeedOil.getCells(6)) + .itemOutputs(Materials.BioDiesel.getCells(6)).fluidInputs(Materials.Ethanol.getFluid(1000)) + .fluidOutputs(Materials.Glycerol.getFluid(1000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.Ethanol.getCells(1)) + .itemOutputs(Materials.Glycerol.getCells(1)).fluidInputs(Materials.FishOil.getFluid(6000)) + .fluidOutputs(Materials.BioDiesel.getFluid(6000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDustTiny(1), Materials.FishOil.getCells(6)) + .itemOutputs(Materials.BioDiesel.getCells(6)).fluidInputs(Materials.Ethanol.getFluid(1000)) + .fluidOutputs(Materials.Glycerol.getFluid(1000)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.Methanol.getCells(9)) + .itemOutputs(Materials.Glycerol.getCells(9)).fluidInputs(Materials.SeedOil.getFluid(54000)) + .fluidOutputs(Materials.BioDiesel.getFluid(54000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.SeedOil.getCells(54)) + .itemOutputs(Materials.BioDiesel.getCells(54)).fluidInputs(Materials.Methanol.getFluid(9000)) + .fluidOutputs(Materials.Glycerol.getFluid(9000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.Methanol.getCells(9)) + .itemOutputs(Materials.Glycerol.getCells(9)).fluidInputs(Materials.FishOil.getFluid(54000)) + .fluidOutputs(Materials.BioDiesel.getFluid(54000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.FishOil.getCells(54)) + .itemOutputs(Materials.BioDiesel.getCells(54)).fluidInputs(Materials.Methanol.getFluid(9000)) + .fluidOutputs(Materials.Glycerol.getFluid(9000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.Ethanol.getCells(9)) + .itemOutputs(Materials.Glycerol.getCells(9)).fluidInputs(Materials.SeedOil.getFluid(54000)) + .fluidOutputs(Materials.BioDiesel.getFluid(54000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.SeedOil.getCells(54)) + .itemOutputs(Materials.BioDiesel.getCells(54)).fluidInputs(Materials.Ethanol.getFluid(9000)) + .fluidOutputs(Materials.Glycerol.getFluid(9000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.Ethanol.getCells(9)) + .itemOutputs(Materials.Glycerol.getCells(9)).fluidInputs(Materials.FishOil.getFluid(54000)) + .fluidOutputs(Materials.BioDiesel.getFluid(54000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(1), Materials.FishOil.getCells(54)) + .itemOutputs(Materials.BioDiesel.getCells(54)).fluidInputs(Materials.Ethanol.getFluid(9000)) + .fluidOutputs(Materials.Glycerol.getFluid(9000)).duration(4 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // C3H8O3 + 3HNO3 =H2SO4= C3H5N3O9 + 3H2O - GT_Values.RA.addChemicalRecipe( - Materials.Glycerol.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.NitrationMixture.getFluid(6000), - Materials.DilutedSulfuricAcid.getFluid(3000), - Materials.Glyceryl.getCells(1), - 180); - GT_Values.RA.addChemicalRecipe( - Materials.NitrationMixture.getCells(6), - GT_Utility.getIntegratedCircuit(1), - Materials.Glycerol.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(3000), - Materials.Glyceryl.getCells(1), - Materials.Empty.getCells(5), - 180); - - GT_Values.RA.addChemicalRecipe( - Materials.NitrationMixture.getCells(6), - GT_Utility.getIntegratedCircuit(11), - Materials.Glycerol.getFluid(1000), - Materials.Glyceryl.getFluid(1000), - Materials.DilutedSulfuricAcid.getCells(3), - Materials.Empty.getCells(3), - 180); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Glycerol.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Glyceryl.getCells(1)).fluidInputs(Materials.NitrationMixture.getFluid(6000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(3000)).duration(9 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitrationMixture.getCells(6), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Glyceryl.getCells(1), Materials.Empty.getCells(5)) + .fluidInputs(Materials.Glycerol.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(3000)).duration(9 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.NitrationMixture.getCells(6), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(3), Materials.Empty.getCells(3)) + .fluidInputs(Materials.Glycerol.getFluid(1000)).fluidOutputs(Materials.Glyceryl.getFluid(1000)) + .duration(9 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // CaO + CO2 = CaCO3 - GT_Values.RA.addChemicalRecipe( - Materials.Quicklime.getDust(2), - GT_Values.NI, - Materials.CarbonDioxide.getGas(1000), - GT_Values.NF, - Materials.Calcite.getDust(5), - 80); - GT_Values.RA.addChemicalRecipe( - Materials.Calcite.getDust(5), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Quicklime.getDust(2), - 240); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Quicklime.getDust(2)).itemOutputs(Materials.Calcite.getDust(5)) + .fluidInputs(Materials.CarbonDioxide.getGas(1000)).noFluidOutputs().duration(4 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Calcite.getDust(5), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Quicklime.getDust(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + // MgO + CO2 = MgCO3 - GT_Values.RA.addChemicalRecipe( - Materials.Magnesia.getDust(2), - GT_Values.NI, - Materials.CarbonDioxide.getGas(1000), - GT_Values.NF, - Materials.Magnesite.getDust(5), - 80); - GT_Values.RA.addChemicalRecipe( - Materials.Magnesite.getDust(5), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.CarbonDioxide.getGas(1000), - Materials.Magnesia.getDust(2), - 240); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Magnesia.getDust(2)).itemOutputs(Materials.Magnesite.getDust(5)) + .fluidInputs(Materials.CarbonDioxide.getGas(1000)).noFluidOutputs().duration(4 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Magnesite.getDust(5), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Magnesia.getDust(2)).noFluidInputs() + .fluidOutputs(Materials.CarbonDioxide.getGas(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); // C6H6 + 2Cl = C6H5Cl + HCl - GT_Values.RA.addChemicalRecipe( - Materials.Benzene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorine.getGas(2000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chlorobenzene.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Benzene.getFluid(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chlorobenzene.getCells(1), - Materials.Empty.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorine.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Benzene.getFluid(1000), - Materials.Chlorobenzene.getFluid(1000), - Materials.HydrochloricAcid.getCells(1), - Materials.Empty.getCells(1), - 240); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Chlorobenzene.getCells(1)).fluidInputs(Materials.Chlorine.getGas(2000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Chlorobenzene.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.Chlorobenzene.getFluid(1000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // C6H5Cl + H2O = C6H6O + HCl - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorobenzene.getFluid(1000), - Materials.Phenol.getFluid(1000), - Materials.DilutedHydrochloricAcid.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorobenzene.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(1000), - Materials.Phenol.getFluid(1000), - Materials.DilutedHydrochloricAcid.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Water.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Chlorobenzene.getFluid(1000), - Materials.DilutedHydrochloricAcid.getFluid(1000), - Materials.Phenol.getCells(1), - 240); - GT_Values.RA.addChemicalRecipe( - Materials.Chlorobenzene.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Water.getFluid(1000), - Materials.DilutedHydrochloricAcid.getFluid(1000), - Materials.Phenol.getCells(1), - 240); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.DilutedHydrochloricAcid.getCells(1)) + .fluidInputs(Materials.Chlorobenzene.getFluid(1000)).fluidOutputs(Materials.Phenol.getFluid(1000)) + .duration(12 * SECONDS).eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorobenzene.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.DilutedHydrochloricAcid.getCells(1)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.Phenol.getFluid(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Phenol.getCells(1)).fluidInputs(Materials.Chlorobenzene.getFluid(1000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).duration(12 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorobenzene.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Phenol.getCells(1)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).duration(12 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); // C6H5Cl + NaOH = C6H6O + NaCl - GT_Values.RA.addChemicalRecipe( - Materials.SodiumHydroxide.getDust(12), - GT_Utility.getIntegratedCircuit(1), - Materials.Chlorobenzene.getFluid(4000), - Materials.Phenol.getFluid(4000), - Materials.Salt.getDust(8), - 960); - - GT_Values.RA.addChemicalRecipe( - Materials.GasolineRaw.getCells(10), - Materials.Toluene.getCells(1), - GT_Values.NF, - GT_Values.NF, - Materials.GasolineRegular.getCells(11), - 10, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(12), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Salt.getDust(8)).fluidInputs(Materials.Chlorobenzene.getFluid(4000)) + .fluidOutputs(Materials.Phenol.getFluid(4000)).duration(48 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(Materials.GasolineRaw.getCells(10), Materials.Toluene.getCells(1)) + .itemOutputs(Materials.GasolineRegular.getCells(11)).noFluidInputs().noFluidOutputs() + .duration(10 * TICKS).eut(TierEU.RECIPE_HV).addTo(UniversalChemical); // Oxide Recipe - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - Materials.Antimony.getDust(2), - Materials.Oxygen.getGas(3000), - GT_Values.NF, - Materials.AntimonyTrioxide.getDust(5), - 20, - 30); - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - Materials.Lead.getDust(1), - Materials.Oxygen.getGas(1000), - GT_Values.NF, - Materials.Massicot.getDust(2), - 20, - 30); - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - Materials.Arsenic.getDust(2), - Materials.Oxygen.getGas(3000), - GT_Values.NF, - Materials.ArsenicTrioxide.getDust(5), - 20, - 30); - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - Materials.Cobalt.getDust(1), - Materials.Oxygen.getGas(1000), - GT_Values.NF, - Materials.CobaltOxide.getDust(2), - 20, - 30); - GT_Values.RA.addChemicalRecipe( - GT_Utility.getIntegratedCircuit(2), - Materials.Zinc.getDust(1), - Materials.Oxygen.getGas(1000), - GT_Values.NF, - Materials.Zincite.getDust(2), - 20, - 30); - - if (isGTNHLanthanidLoaded && isGTPPLoaded) { + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2), Materials.Antimony.getDust(2)) + .itemOutputs(Materials.AntimonyTrioxide.getDust(5)).fluidInputs(Materials.Oxygen.getGas(3000)) + .noFluidOutputs().duration(20 * TICKS).eut(30).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2), Materials.Lead.getDust(1)) + .itemOutputs(Materials.Massicot.getDust(2)).fluidInputs(Materials.Oxygen.getGas(1000)).noFluidOutputs() + .duration(20 * TICKS).eut(30).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2), Materials.Arsenic.getDust(2)) + .itemOutputs(Materials.ArsenicTrioxide.getDust(5)).fluidInputs(Materials.Oxygen.getGas(3000)) + .noFluidOutputs().duration(20 * TICKS).eut(30).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2), Materials.Cobalt.getDust(1)) + .itemOutputs(Materials.CobaltOxide.getDust(2)).fluidInputs(Materials.Oxygen.getGas(1000)) + .noFluidOutputs().duration(20 * TICKS).eut(30).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2), Materials.Zinc.getDust(1)) + .itemOutputs(Materials.Zincite.getDust(2)).fluidInputs(Materials.Oxygen.getGas(1000)).noFluidOutputs() + .duration(20 * TICKS).eut(30).addTo(UniversalChemical); + + if (BartWorks.isModLoaded()) { + // CaSi2 + 2HCl = 2Si + CaCl2 + 2H + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CalciumDisilicide, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 2), + getModItem(BartWorks.modID, "gt.bwMetaGenerateddust", 3L, 63)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(2000)) + .fluidOutputs(Materials.Hydrogen.getGas(2000)).duration(45 * SECONDS).eut(30) + .addTo(UniversalChemical); + + // SiCl4 + 2Zn = 2ZnCl2 + Si + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), + getModItem(BartWorks.modID, "gt.bwMetaGenerateddust", 6L, 10052)) + .fluidInputs(Materials.SiliconTetrachloride.getFluid(1000)).noFluidOutputs().duration(20 * SECONDS) + .eut(30).addTo(UniversalChemical); + } + + if (GTNHLanthanides.isModLoaded() && GTPlusPlus.isModLoaded()) { // C4H8O + 2H =Pd= C4H10O - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.Butyraldehyde, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Palladium, 1L), - Materials.Hydrogen.getGas(2000), - new FluidStack(FluidRegistry.getFluid("butanol"), 1000), - ItemList.Cell_Empty.get(1L), - 200, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.Butyraldehyde, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Palladium, 1)) + .itemOutputs(ItemList.Cell_Empty.get(1)).fluidInputs(Materials.Hydrogen.getGas(2000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("butanol"), 1000)).duration(10 * SECONDS) + .eut(30).addTo(UniversalChemical); // 4CH2O + C2H4O =NaOH= C5H12O4 + CO - GT_Values.RA.addChemicalRecipe( - getModItem(MOD_ID_GTPP, "Formaldehyde", 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 1L), - MaterialsKevlar.Acetaldehyde.getGas(1000), - Materials.CarbonMonoxide.getGas(1000), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 21L), - Materials.Empty.getCells(4), - 600, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(GTPlusPlus.modID, "Formaldehyde", 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 21), + Materials.Empty.getCells(4)) + .fluidInputs(MaterialsKevlar.Acetaldehyde.getGas(1000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(30 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); // 4CH2O + C2H4O =NaOH= C5H12O4 + CO - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.Acetaldehyde, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 1L), - new FluidStack(FluidRegistry.getFluid("formaldehyde"), 4000), - Materials.CarbonMonoxide.getGas(1000), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 21L), - Materials.Empty.getCells(1), - 600, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.Acetaldehyde, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 21), + Materials.Empty.getCells(1)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("formaldehyde"), 4000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(1000)).duration(30 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); + // CaC2 + 2H2O = Ca(OH)2 + C2H2 - GT_Values.RA.addChemicalRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CalciumCarbide, 3L), - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(2000L), - MaterialsKevlar.Acetylene.getGas(1000L), - getModItem(MOD_ID_GTPP, "itemDustCalciumHydroxide", 5L), - 300, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CalciumCarbide, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(GTPlusPlus.modID, "itemDustCalciumHydroxide", 5)) + .fluidInputs(Materials.Water.getFluid(2000)).fluidOutputs(MaterialsKevlar.Acetylene.getGas(1000)) + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(UniversalChemical); // Co(NO3)2 + 2NaOH = Co(OH)2 + 2NaNO3 - GT_Values.RA.addChemicalRecipe( - MaterialsKevlar.CobaltIINitrate.getDust(9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 6L), - GT_Values.NF, - GT_Values.NF, - MaterialsKevlar.CobaltIIHydroxide.getDust(5), - getModItem(MOD_ID_GTPP, "itemDustSodiumNitrate", 10L), - 100, - 120); + + GT_Values.RA.stdBuilder() + .itemInputs( + MaterialsKevlar.CobaltIINitrate.getDust(9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 6)) + .itemOutputs( + MaterialsKevlar.CobaltIIHydroxide.getDust(5), + getModItem(GTPlusPlus.modID, "itemDustSodiumNitrate", 10)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(UniversalChemical); } } + public void addDefaultPolymerizationRecipes(Fluid aBasicMaterial, ItemStack aBasicMaterialCell, Fluid aPolymer) { + // Oxygen/Titaniumtetrafluoride -> +50% Output each + GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Air.get(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(new GT_FluidStack(aBasicMaterial, 144)) + .fluidOutputs(new GT_FluidStack(aPolymer, 144)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(new GT_FluidStack(aBasicMaterial, 144)) + .fluidOutputs(new GT_FluidStack(aPolymer, 216)).duration(8 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(aBasicMaterialCell, GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Air.getGas(14000)) + .fluidOutputs(new GT_FluidStack(aPolymer, 1000)).duration(56 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(aBasicMaterialCell, GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Oxygen.getGas(7000)) + .fluidOutputs(new GT_FluidStack(aPolymer, 1500)).duration(56 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs( + new GT_FluidStack(aBasicMaterial, 2160), + Materials.Air.getGas(7500), + Materials.Titaniumtetrachloride.getFluid(100)) + .fluidOutputs(new GT_FluidStack(aPolymer, 3240)).duration(40 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs( + new GT_FluidStack(aBasicMaterial, 2160), + Materials.Oxygen.getGas(7500), + Materials.Titaniumtetrachloride.getFluid(100)) + .fluidOutputs(new GT_FluidStack(aPolymer, 4320)).duration(40 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sMultiblockChemicalRecipes); + + } + public void polymerizationRecipes() { - GT_Values.RA.addDefaultPolymerizationRecipes( + addDefaultPolymerizationRecipes( Materials.VinylAcetate.mFluid, Materials.VinylAcetate.getCells(1), Materials.PolyvinylAcetate.mFluid); - GT_Values.RA.addDefaultPolymerizationRecipes( + addDefaultPolymerizationRecipes( Materials.Ethylene.mGas, Materials.Ethylene.getCells(1), Materials.Plastic.mStandardMoltenFluid); - GT_Values.RA.addDefaultPolymerizationRecipes( + addDefaultPolymerizationRecipes( Materials.Tetrafluoroethylene.mGas, Materials.Tetrafluoroethylene.getCells(1), Materials.Polytetrafluoroethylene.mStandardMoltenFluid); - GT_Values.RA.addDefaultPolymerizationRecipes( + addDefaultPolymerizationRecipes( Materials.VinylChloride.mGas, Materials.VinylChloride.getCells(1), Materials.PolyvinylChloride.mStandardMoltenFluid); - GT_Values.RA.addDefaultPolymerizationRecipes( + addDefaultPolymerizationRecipes( Materials.Styrene.mFluid, Materials.Styrene.getCells(1), Materials.Polystyrene.mStandardMoltenFluid); } public void singleBlockOnly() { + GT_Values.RA.stdBuilder().itemInputs(Materials.Methane.getCells(1), Materials.Empty.getCells(2)) + .itemOutputs(Materials.HydrochloricAcid.getCells(3)).fluidInputs(Materials.Chlorine.getGas(6000)) + .fluidOutputs(Materials.Chloroform.getFluid(1000)).duration(4 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Silicon.getDust(1), Materials.Chloromethane.getCells(2)) + .itemOutputs(Materials.Empty.getCells(2)).noFluidInputs() + .fluidOutputs(Materials.Dimethyldichlorosilane.getFluid(1000)).duration(12 * SECONDS).eut(96) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Dimethyldichlorosilane.getCells(1), Materials.Water.getCells(1)) + .itemOutputs(Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(2)).noFluidInputs() + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).duration(12 * SECONDS).eut(96) + .addTo(sChemicalRecipes); + + // Ca5(PO4)3Cl + 5H2SO4 + 10H2O = 5CaSO4(H2O)2 + HCl + 3H3PO4 + + GT_Values.RA.stdBuilder().itemInputs(Materials.Apatite.getDust(9), Materials.SulfuricAcid.getCells(5)) + .itemOutputs(Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(4)) + .fluidInputs(Materials.Water.getFluid(10000)).fluidOutputs(Materials.PhosphoricAcid.getFluid(3000)) + .duration(16 * SECONDS).eut(30).addTo(sChemicalRecipes); + + // 10O + 4P = P4O10 + + GT_Values.RA.stdBuilder().itemInputs(Materials.Phosphorus.getDust(4)) + .itemOutputs(Materials.PhosphorousPentoxide.getDust(14)).fluidInputs(Materials.Oxygen.getGas(10000)) + .noFluidOutputs().duration(2 * SECONDS).eut(30).addTo(sChemicalRecipes); + + // HCl + C3H8O3 = C3H5ClO + 2H2O + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), Materials.Glycerol.getCells(1)) + .itemOutputs(Materials.Water.getCells(2)).noFluidInputs() + .fluidOutputs(Materials.Epichlorohydrin.getFluid(1000)).duration(24 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + // H2O + Cl =Hg= HClO + H + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(10), Materials.Mercury.getCells(1)) + .itemOutputs(Materials.Hydrogen.getCells(10), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Water.getFluid(10000)).fluidOutputs(Materials.HypochlorousAcid.getFluid(10000)) + .duration(30 * SECONDS).eut(8).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(10), Materials.Mercury.getCells(1)) + .itemOutputs(Materials.Hydrogen.getCells(10), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Chlorine.getGas(10000)).fluidOutputs(Materials.HypochlorousAcid.getFluid(10000)) + .duration(30 * SECONDS).eut(8).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Chlorine.getCells(1), Materials.Water.getCells(1)) + .itemOutputs(Materials.Hydrogen.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Mercury.getFluid(100)).fluidOutputs(Materials.HypochlorousAcid.getFluid(1000)) + .duration(3 * SECONDS).eut(8).addTo(sChemicalRecipes); + + // P + 3Cl = PCl3 + + GT_Values.RA.stdBuilder().itemInputs(Materials.Phosphorus.getDust(1), Materials.Chlorine.getCells(3)) + .itemOutputs(ItemList.Cell_Empty.get(3)).noFluidInputs() + .fluidOutputs(MaterialsKevlar.PhosphorusTrichloride.getFluid(1000)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.EthyleneOxide, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 5)) + .itemOutputs(ItemList.Cell_Empty.get(6)).fluidInputs(Materials.Dimethyldichlorosilane.getFluid(4000)) + .fluidOutputs(MaterialsKevlar.SiliconOil.getFluid(5000)).duration(30 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.EthyleneOxide, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Dimethyldichlorosilane, 4)) + .itemOutputs(ItemList.Cell_Empty.get(5)).fluidInputs(Materials.Water.getFluid(5000)) + .fluidOutputs(MaterialsKevlar.SiliconOil.getFluid(5000)).duration(30 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(ItemList.Cell_Empty.get(1)).fluidInputs(MaterialsKevlar.EthyleneOxide.getGas(1000)) + .fluidOutputs(MaterialsKevlar.Ethyleneglycol.getFluid(1000)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(MaterialsKevlar.CobaltIIHydroxide.getDust(5), MaterialsKevlar.NaphthenicAcid.getCells(1)) + .itemOutputs(MaterialsKevlar.CobaltIINaphthenate.getDust(41), ItemList.Cell_Empty.get(1)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(MaterialsKevlar.CobaltIIAcetate.getDust(15), MaterialsKevlar.NaphthenicAcid.getCells(1)) + .itemOutputs(MaterialsKevlar.CobaltIINaphthenate.getDust(41), ItemList.Cell_Empty.get(1)) + .noFluidInputs().fluidOutputs(Materials.AceticAcid.getFluid(1500)).duration(5 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Chlorine, 4)) + .itemOutputs(ItemList.Cell_Empty.get(4)).noFluidInputs() + .fluidOutputs(Materials.SiliconTetrachloride.getFluid(1000)).duration(20 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Galena, 3), + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Sphalerite, 1)) + .noItemOutputs().fluidInputs(Materials.SulfuricAcid.getFluid(4000)) + .fluidOutputs(new FluidStack(ItemList.sIndiumConcentrate, 8000)).duration(3 * SECONDS).eut(150) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Carbon.getDust(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Methane.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(4000)) + .noFluidOutputs().duration(10 * SECONDS).eut(30).addTo(sChemicalRecipes); + + // O + 2H = H2O + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(ItemList.Cell_Empty.get(1)).fluidInputs(Materials.Hydrogen.getGas(2000)) + .fluidOutputs(GT_ModHandler.getDistilledWater(1000)).duration(10 * TICKS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1), + GT_Utility.getIntegratedCircuit(22)) + .itemOutputs(ItemList.Cell_Empty.get(1)).fluidInputs(Materials.Oxygen.getGas(500)) + .fluidOutputs(GT_ModHandler.getDistilledWater(500)).duration(5 * TICKS).eut(30).addTo(sChemicalRecipes); + + // Si + 4Cl = SiCl4 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + ItemList.Cell_Empty.get(2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(3000)) + .fluidOutputs(Materials.Trichlorosilane.getFluid(1000)).duration(15 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Silane, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), + ItemList.Cell_Empty.get(1)) + .noFluidInputs().fluidOutputs(Materials.Hydrogen.getGas(4000)).duration(15 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Silane, 1), ItemList.Cell_Empty.get(3)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 4)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(30).addTo(sChemicalRecipes); + // S + 2Cl = SCl2 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 8L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Chlorine, 16L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.SulfurDichloride, 8L), - ItemList.Cell_Empty.get(8), - 800, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 8L), - ItemList.Cell_Empty.get(8L), - Materials.Chlorine.getGas(16000), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.SulfurDichloride, 8L), - GT_Values.NI, - 800, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 8), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Chlorine, 16)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.SulfurDichloride, 8), + ItemList.Cell_Empty.get(8)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(30).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 8), ItemList.Cell_Empty.get(8)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, MaterialsKevlar.SulfurDichloride, 8)) + .fluidInputs(Materials.Chlorine.getGas(16000)).noFluidOutputs().duration(40 * SECONDS).eut(30) + .addTo(sChemicalRecipes); // C6H6 + C3H6 = C9H12 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Propene.getCells(8), - Materials.PhosphoricAcid.getCells(1), - Materials.Benzene.getFluid(8000), - Materials.Cumene.getFluid(8000), - Materials.Empty.getCells(9), - GT_Values.NI, - 1920, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.PhosphoricAcid.getCells(1), - Materials.Benzene.getCells(8), - Materials.Propene.getGas(8000), - Materials.Cumene.getFluid(8000), - Materials.Empty.getCells(9), - GT_Values.NI, - 1920, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Benzene.getCells(1), - Materials.Propene.getCells(1), - Materials.PhosphoricAcid.getFluid(125), - Materials.Cumene.getFluid(1000), - Materials.Empty.getCells(2), - GT_Values.NI, - 240, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Propene.getCells(8), Materials.PhosphoricAcid.getCells(1)) + .itemOutputs(Materials.Empty.getCells(9)).fluidInputs(Materials.Benzene.getFluid(8000)) + .fluidOutputs(Materials.Cumene.getFluid(8000)).duration(1 * MINUTES + 36 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.PhosphoricAcid.getCells(1), Materials.Benzene.getCells(8)) + .itemOutputs(Materials.Empty.getCells(9)).fluidInputs(Materials.Propene.getGas(8000)) + .fluidOutputs(Materials.Cumene.getFluid(8000)).duration(1 * MINUTES + 36 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), Materials.Propene.getCells(1)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.PhosphoricAcid.getFluid(125)) + .fluidOutputs(Materials.Cumene.getFluid(1000)).duration(12 * SECONDS).eut(30).addTo(sChemicalRecipes); // C3H6O + 2C6H6O =HCl= C15H16O2 + H2O - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Acetone.getCells(1), - Materials.Phenol.getCells(2), - Materials.HydrochloricAcid.getFluid(1000), - Materials.BisphenolA.getFluid(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(2), - 160, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.HydrochloricAcid.getCells(1), - Materials.Acetone.getCells(1), - Materials.Phenol.getFluid(2000), - Materials.BisphenolA.getFluid(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - 160, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Phenol.getCells(2), - Materials.HydrochloricAcid.getCells(1), - Materials.Acetone.getFluid(1000), - Materials.BisphenolA.getFluid(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(2), - 160, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Acetone.getCells(1), Materials.Phenol.getCells(2)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(2)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.BisphenolA.getFluid(1000)).duration(8 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), Materials.Acetone.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Phenol.getFluid(2000)).fluidOutputs(Materials.BisphenolA.getFluid(1000)) + .duration(8 * SECONDS).eut(30).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Phenol.getCells(2), Materials.HydrochloricAcid.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(2)) + .fluidInputs(Materials.Acetone.getFluid(1000)).fluidOutputs(Materials.BisphenolA.getFluid(1000)) + .duration(8 * SECONDS).eut(30).addTo(sChemicalRecipes); // N + 3H = NH3 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Nitrogen.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Hydrogen.getGas(3000), - Materials.Ammonia.getGas(1000), - Materials.Empty.getCells(1), - GT_Values.NI, - 320, - 384); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Hydrogen.getCells(3), - GT_Utility.getIntegratedCircuit(1), - Materials.Nitrogen.getGas(1000), - Materials.Ammonia.getGas(1000), - Materials.Empty.getCells(3), - GT_Values.NI, - 320, - 384); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Nitrogen.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Hydrogen.getGas(3000), - GT_Values.NF, - Materials.Ammonia.getCells(1), - GT_Values.NI, - 320, - 384); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Hydrogen.getCells(3), - GT_Utility.getIntegratedCircuit(11), - Materials.Nitrogen.getGas(1000), - GT_Values.NF, - Materials.Ammonia.getCells(1), - Materials.Empty.getCells(2), - 320, - 384); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Ammonia.getCells(1), - Materials.Empty.getCells(1), - Materials.Methanol.getFluid(2000), - Materials.Dimethylamine.getGas(1000), - Materials.Water.getCells(2), - GT_Values.NI, - 240, - 120); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Ammonia.getCells(4), - Materials.Empty.getCells(2), - Materials.Oxygen.getGas(10000), - Materials.NitricOxide.getGas(4000), - Materials.Water.getCells(6), - GT_Values.NI, - 320, - 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - Materials.NitrogenDioxide.getGas(3000), - Materials.NitricOxide.getGas(1000), - Materials.NitricAcid.getCells(2), - GT_Values.NI, - 240, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Nitrogen.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(3000)) + .fluidOutputs(Materials.Ammonia.getGas(1000)).duration(16 * SECONDS).eut(384).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(3), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(3)).fluidInputs(Materials.Nitrogen.getGas(1000)) + .fluidOutputs(Materials.Ammonia.getGas(1000)).duration(16 * SECONDS).eut(384).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Nitrogen.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Ammonia.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(3000)) + .noFluidOutputs().duration(16 * SECONDS).eut(384).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Hydrogen.getCells(3), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Ammonia.getCells(1), Materials.Empty.getCells(2)) + .fluidInputs(Materials.Nitrogen.getGas(1000)).noFluidOutputs().duration(16 * SECONDS).eut(384) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Water.getCells(2)).fluidInputs(Materials.Methanol.getFluid(2000)) + .fluidOutputs(Materials.Dimethylamine.getGas(1000)).duration(12 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ammonia.getCells(4), Materials.Empty.getCells(2)) + .itemOutputs(Materials.Water.getCells(6)).fluidInputs(Materials.Oxygen.getGas(10000)) + .fluidOutputs(Materials.NitricOxide.getGas(4000)).duration(16 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.NitricAcid.getCells(2)).fluidInputs(Materials.NitrogenDioxide.getGas(3000)) + .fluidOutputs(Materials.NitricOxide.getGas(1000)).duration(12 * SECONDS).eut(30) + .addTo(sChemicalRecipes); // 2NO2 + O + H2O = 2HNO3 - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.NitrogenDioxide.getCells(2), - Materials.Oxygen.getCells(1), - Materials.Water.getFluid(1000), - Materials.NitricAcid.getFluid(2000), - Materials.Empty.getCells(3), - GT_Values.NI, - 240, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Oxygen.getCells(1), - Materials.Water.getCells(1), - Materials.NitrogenDioxide.getGas(2000), - Materials.NitricAcid.getFluid(2000), - Materials.Empty.getCells(2), - GT_Values.NI, - 240, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Water.getCells(1), - Materials.NitrogenDioxide.getCells(2), - Materials.Oxygen.getGas(1000), - Materials.NitricAcid.getFluid(2000), - Materials.Empty.getCells(3), - GT_Values.NI, - 240, - 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Sulfur.getDust(1), - Materials.Empty.getCells(1), - Materials.Hydrogen.getGas(2000), - GT_Values.NF, - Materials.HydricSulfide.getCells(1), - GT_Values.NI, - 60, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.NitrogenDioxide.getCells(2), Materials.Oxygen.getCells(1)) + .itemOutputs(Materials.Empty.getCells(3)).fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.NitricAcid.getFluid(2000)).duration(12 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), Materials.Water.getCells(1)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.NitrogenDioxide.getGas(2000)) + .fluidOutputs(Materials.NitricAcid.getFluid(2000)).duration(12 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), Materials.NitrogenDioxide.getCells(2)) + .itemOutputs(Materials.Empty.getCells(3)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.NitricAcid.getFluid(2000)).duration(12 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sulfur.getDust(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.HydricSulfide.getCells(1)).fluidInputs(Materials.Hydrogen.getGas(2000)) + .noFluidOutputs().duration(3 * SECONDS).eut(8).addTo(sChemicalRecipes); // C2H4 + HCl + O = C2H3Cl + H2O - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Ethylene.getCells(1), - Materials.HydrochloricAcid.getCells(1), - Materials.Oxygen.getGas(1000), - Materials.VinylChloride.getGas(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - 160, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.HydrochloricAcid.getCells(1), - Materials.Oxygen.getCells(1), - Materials.Ethylene.getGas(1000), - Materials.VinylChloride.getGas(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - 160, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Oxygen.getCells(1), - Materials.Ethylene.getCells(1), - Materials.HydrochloricAcid.getFluid(1000), - Materials.VinylChloride.getGas(1000), - Materials.Water.getCells(1), - Materials.Empty.getCells(1), - 160, - 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Butadiene.getCells(1), - ItemList.Cell_Air.get(5), - Materials.Styrene.getFluid(350), - GT_Values.NF, - Materials.RawStyreneButadieneRubber.getDust(9), - Materials.Empty.getCells(6), - 160, - 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Butadiene.getCells(1), - Materials.Oxygen.getCells(5), - Materials.Styrene.getFluid(350), - GT_Values.NF, - Materials.RawStyreneButadieneRubber.getDust(13), - Materials.Empty.getCells(6), - 160, - 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Styrene.getCells(1), - ItemList.Cell_Air.get(15), - Materials.Butadiene.getGas(3000), - GT_Values.NF, - Materials.RawStyreneButadieneRubber.getDust(27), - Materials.Empty.getCells(16), - 480, - 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Styrene.getCells(1), - Materials.Oxygen.getCells(15), - Materials.Butadiene.getGas(3000), - GT_Values.NF, - Materials.RawStyreneButadieneRubber.getDust(41), - Materials.Empty.getCells(16), - 480, - 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Styrene.getCells(1), - Materials.Butadiene.getCells(3), - Materials.Air.getGas(15000), - GT_Values.NF, - Materials.RawStyreneButadieneRubber.getDust(27), - Materials.Empty.getCells(4), - 480, - 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Styrene.getCells(1), - Materials.Butadiene.getCells(3), - Materials.Oxygen.getGas(15000), - GT_Values.NF, - Materials.RawStyreneButadieneRubber.getDust(41), - Materials.Empty.getCells(4), - 480, - 240); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Benzene.getCells(1), - Materials.Empty.getCells(1), - Materials.Chlorine.getGas(4000), - Materials.Dichlorobenzene.getFluid(1000), - Materials.HydrochloricAcid.getCells(2), - GT_Values.NI, - 240, - 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Glycerol.getCells(1), - Materials.Empty.getCells(2), - Materials.NitrationMixture.getFluid(6000), - Materials.Glyceryl.getFluid(1000), - Materials.DilutedSulfuricAcid.getCells(3), - GT_Values.NI, - 180, - 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.SodiumHydroxide.getDust(12), - Materials.Empty.getCells(4), - Materials.Chlorobenzene.getFluid(4000), - GT_Values.NF, - Materials.Salt.getDust(8), - Materials.Phenol.getCells(4), - 960, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.SodiumHydroxide.getDust(12), - Materials.Chlorobenzene.getCells(4), - GT_Values.NF, - GT_Values.NF, - Materials.Salt.getDust(8), - Materials.Phenol.getCells(4), - 960, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethylene.getCells(1), Materials.HydrochloricAcid.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Oxygen.getGas(1000)).fluidOutputs(Materials.VinylChloride.getGas(1000)) + .duration(8 * SECONDS).eut(30).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), Materials.Oxygen.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Ethylene.getGas(1000)).fluidOutputs(Materials.VinylChloride.getGas(1000)) + .duration(8 * SECONDS).eut(30).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), Materials.Ethylene.getCells(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.VinylChloride.getGas(1000)).duration(8 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Butadiene.getCells(1), ItemList.Cell_Air.get(5)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(9), Materials.Empty.getCells(6)) + .fluidInputs(Materials.Styrene.getFluid(350)).noFluidOutputs().duration(8 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Butadiene.getCells(1), Materials.Oxygen.getCells(5)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(13), Materials.Empty.getCells(6)) + .fluidInputs(Materials.Styrene.getFluid(350)).noFluidOutputs().duration(8 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Styrene.getCells(1), ItemList.Cell_Air.get(15)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(27), Materials.Empty.getCells(16)) + .fluidInputs(Materials.Butadiene.getGas(3000)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Styrene.getCells(1), Materials.Oxygen.getCells(15)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(41), Materials.Empty.getCells(16)) + .fluidInputs(Materials.Butadiene.getGas(3000)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(27), Materials.Empty.getCells(4)) + .fluidInputs(Materials.Air.getGas(15000)).noFluidOutputs().duration(24 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(41), Materials.Empty.getCells(4)) + .fluidInputs(Materials.Oxygen.getGas(15000)).noFluidOutputs().duration(24 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Benzene.getCells(1), Materials.Empty.getCells(1)) + .itemOutputs(Materials.HydrochloricAcid.getCells(2)).fluidInputs(Materials.Chlorine.getGas(4000)) + .fluidOutputs(Materials.Dichlorobenzene.getFluid(1000)).duration(12 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Glycerol.getCells(1), Materials.Empty.getCells(2)) + .itemOutputs(Materials.DilutedSulfuricAcid.getCells(3)) + .fluidInputs(Materials.NitrationMixture.getFluid(6000)).fluidOutputs(Materials.Glyceryl.getFluid(1000)) + .duration(9 * SECONDS).eut(30).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(12), Materials.Empty.getCells(4)) + .itemOutputs(Materials.Salt.getDust(8), Materials.Phenol.getCells(4)) + .fluidInputs(Materials.Chlorobenzene.getFluid(4000)).noFluidOutputs().duration(48 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(12), Materials.Chlorobenzene.getCells(4)) + .itemOutputs(Materials.Salt.getDust(8), Materials.Phenol.getCells(4)).noFluidInputs().noFluidOutputs() + .duration(48 * SECONDS).eut(30).addTo(sChemicalRecipes); // Recipes for gasoline // 2N + O = N2O - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Nitrogen.getCells(2), - Materials.Oxygen.getCells(1), - GT_Values.NF, - GT_Values.NF, - Materials.NitrousOxide.getCells(1), - Materials.Empty.getCells(2), - 200, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Nitrogen.getCells(2), - GT_Utility.getIntegratedCircuit(1), - Materials.Oxygen.getGas(1000L), - Materials.NitrousOxide.getGas(1000L), - Materials.Empty.getCells(2), - GT_Values.NI, - 200, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Nitrogen.getCells(2), - GT_Utility.getIntegratedCircuit(11), - Materials.Oxygen.getGas(1000L), - GT_Values.NF, - Materials.NitrousOxide.getCells(1), - Materials.Empty.getCells(1), - 200, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Oxygen.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.Nitrogen.getGas(2000L), - Materials.NitrousOxide.getGas(1000L), - Materials.Empty.getCells(1), - GT_Values.NI, - 200, - 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Oxygen.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.Nitrogen.getGas(2000L), - GT_Values.NF, - Materials.NitrousOxide.getCells(1), - GT_Values.NI, - 200, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Nitrogen.getCells(2), Materials.Oxygen.getCells(1)) + .itemOutputs(Materials.NitrousOxide.getCells(1), Materials.Empty.getCells(2)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(30).addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Nitrogen.getCells(2), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.NitrousOxide.getGas(1000)).duration(10 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Nitrogen.getCells(2), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.NitrousOxide.getCells(1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.Oxygen.getGas(1000)).noFluidOutputs().duration(10 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.Nitrogen.getGas(2000)) + .fluidOutputs(Materials.NitrousOxide.getGas(1000)).duration(10 * SECONDS).eut(30) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.NitrousOxide.getCells(1)).fluidInputs(Materials.Nitrogen.getGas(2000)) + .noFluidOutputs().duration(10 * SECONDS).eut(30).addTo(sChemicalRecipes); // C2H6O + C4H8 = C6H14O - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Ethanol.getCells(1), - Materials.Butene.getCells(1), - GT_Values.NF, - GT_Values.NF, - Materials.AntiKnock.getCells(1), - Materials.Empty.getCells(1), - 400, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Ethanol.getCells(1), Materials.Butene.getCells(1)) + .itemOutputs(Materials.AntiKnock.getCells(1), Materials.Empty.getCells(1)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sChemicalRecipes); // Potassium Dichromate // 2KNO3 + 2CrO3 = K2Cr2O7 + 2NO + 3O - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.Saltpeter.getDust(10), - Materials.ChromiumTrioxide.getDust(8), - GT_Values.NF, - Materials.NitricOxide.getGas(2000), - Materials.Potassiumdichromate.getDust(11), - GT_Values.NI, - 100, - 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly( - Materials.PotassiumNitrade.getDust(10), - Materials.ChromiumTrioxide.getDust(8), - GT_Values.NF, - Materials.NitricOxide.getGas(2000), - Materials.Potassiumdichromate.getDust(11), - GT_Values.NI, - 100, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Saltpeter.getDust(10), Materials.ChromiumTrioxide.getDust(8)) + .itemOutputs(Materials.Potassiumdichromate.getDust(11)).noFluidInputs() + .fluidOutputs(Materials.NitricOxide.getGas(2000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.PotassiumNitrade.getDust(10), Materials.ChromiumTrioxide.getDust(8)) + .itemOutputs(Materials.Potassiumdichromate.getDust(11)).noFluidInputs() + .fluidOutputs(Materials.NitricOxide.getGas(2000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sChemicalRecipes); } public void multiblockOnly() { - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.PotassiumNitrade.getDust(10), Materials.ChromiumTrioxide.getDust(8) }, - null, - new FluidStack[] { Materials.NitricOxide.getGas(2000), Materials.Oxygen.getGas(3000) }, - new ItemStack[] { Materials.Potassiumdichromate.getDust(11) }, - 100, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Saltpeter.getDust(10), Materials.ChromiumTrioxide.getDust(8) }, - null, - new FluidStack[] { Materials.NitricOxide.getGas(2000), Materials.Oxygen.getGas(3000) }, - new ItemStack[] { Materials.Potassiumdichromate.getDust(11) }, - 100, - 480); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(22)).itemOutputs() + .fluidInputs(Materials.Hydrogen.getGas(16000), Materials.Oxygen.getGas(8000)) + .fluidOutputs(GT_ModHandler.getDistilledWater(8000)).duration(4 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.PotassiumNitrade.getDust(10), Materials.ChromiumTrioxide.getDust(8)) + .itemOutputs(Materials.Potassiumdichromate.getDust(11)).noFluidInputs() + .fluidOutputs(Materials.NitricOxide.getGas(2000), Materials.Oxygen.getGas(3000)).duration(5 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Saltpeter.getDust(10), Materials.ChromiumTrioxide.getDust(8)) + .itemOutputs(Materials.Potassiumdichromate.getDust(11)).noFluidInputs() + .fluidOutputs(Materials.NitricOxide.getGas(2000), Materials.Oxygen.getGas(3000)).duration(5 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); // Potassium Dichromate shortcut // 2 Cr + 6O + 10 Saltpeter/Potassium Dichromate = 10 K2Cr2O7 + 2NO + 3O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.PotassiumNitrade.getDust(64), Materials.PotassiumNitrade.getDust(64), - Materials.PotassiumNitrade.getDust(32), Materials.Chrome.getDust(2 * 16), - GT_Utility.getIntegratedCircuit(11) }, - new FluidStack[] { Materials.Oxygen.getGas(6000 * 16) }, - new FluidStack[] { Materials.NitricOxide.getGas(2000 * 16), Materials.Oxygen.getGas(3000 * 16) }, - new ItemStack[] { Materials.Potassiumdichromate.getDust(64), Materials.Potassiumdichromate.getDust(64), - Materials.Potassiumdichromate.getDust(48) }, - 2560, - (int) GT_Values.VP[7]); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Saltpeter.getDust(64), Materials.Saltpeter.getDust(64), - Materials.Saltpeter.getDust(32), Materials.Chrome.getDust(2 * 16), - GT_Utility.getIntegratedCircuit(11) }, - new FluidStack[] { Materials.Oxygen.getGas(6000 * 16) }, - new FluidStack[] { Materials.NitricOxide.getGas(2000 * 16), Materials.Oxygen.getGas(3000 * 16) }, - new ItemStack[] { Materials.Potassiumdichromate.getDust(64), Materials.Potassiumdichromate.getDust(64), - Materials.Potassiumdichromate.getDust(48) }, - 2560, - (int) GT_Values.VP[7]); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { Materials.Benzene.getFluid(1000L), Materials.Methane.getGas(2000L) }, - new FluidStack[] { Materials.Dimethylbenzene.getFluid(1000L), Materials.Hydrogen.getGas(4000L) }, - null, - 4000, - 120); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.PotassiumNitrade.getDust(64), + Materials.PotassiumNitrade.getDust(64), + Materials.PotassiumNitrade.getDust(32), + Materials.Chrome.getDust(2 * 16), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs( + Materials.Potassiumdichromate.getDust(64), + Materials.Potassiumdichromate.getDust(64), + Materials.Potassiumdichromate.getDust(48)) + .fluidInputs(Materials.Oxygen.getGas(6000 * 16)) + .fluidOutputs(Materials.NitricOxide.getGas(2000 * 16), Materials.Oxygen.getGas(3000 * 16)) + .duration(2 * MINUTES + 8 * SECONDS).eut((int) GT_Values.VP[7]).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Saltpeter.getDust(64), + Materials.Saltpeter.getDust(64), + Materials.Saltpeter.getDust(32), + Materials.Chrome.getDust(2 * 16), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs( + Materials.Potassiumdichromate.getDust(64), + Materials.Potassiumdichromate.getDust(64), + Materials.Potassiumdichromate.getDust(48)) + .fluidInputs(Materials.Oxygen.getGas(6000 * 16)) + .fluidOutputs(Materials.NitricOxide.getGas(2000 * 16), Materials.Oxygen.getGas(3000 * 16)) + .duration(2 * MINUTES + 8 * SECONDS).eut((int) GT_Values.VP[7]).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.Benzene.getFluid(1000), Materials.Methane.getGas(2000)) + .fluidOutputs(Materials.Dimethylbenzene.getFluid(1000), Materials.Hydrogen.getGas(4000)) + .duration(3 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Galena, 3), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Sphalerite, 1) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(4000) }, - new FluidStack[] { new FluidStack(ItemList.sIndiumConcentrate, 8000) }, - null, - 60, - 150); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(8), + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Sphalerite, 1)) + .noItemOutputs().fluidInputs(Materials.SulfuricAcid.getFluid(4000)) + .fluidOutputs(new FluidStack(ItemList.sIndiumConcentrate, 8000)).duration(3 * SECONDS).eut(150) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(8), GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Galena, 27), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Sphalerite, 9) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(36000) }, - new FluidStack[] { new FluidStack(ItemList.sIndiumConcentrate, 72000) }, - null, - 160, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Pentlandite, 9) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(9000L) }, - new FluidStack[] { new FluidStack(ItemList.sNickelSulfate, 18000) }, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PlatinumGroupSludge, 1) }, - 25, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Chalcopyrite, 9) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(9000L) }, - new FluidStack[] { new FluidStack(ItemList.sBlueVitriol, 18000) }, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PlatinumGroupSludge, 1) }, - 25, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Plutonium, 64L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), - GT_Utility.getIntegratedCircuit(8) }, - new FluidStack[] { Materials.Air.getGas(8000L) }, - new FluidStack[] { Materials.Radon.getGas(800L) }, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 64L) }, - 1500, - 480); + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Sphalerite, 9)) + .noItemOutputs().fluidInputs(Materials.SulfuricAcid.getFluid(36000)) + .fluidOutputs(new FluidStack(ItemList.sIndiumConcentrate, 72000)).duration(8 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Pentlandite, 9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PlatinumGroupSludge, 1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(9000)) + .fluidOutputs(new FluidStack(ItemList.sNickelSulfate, 18000)).duration(1 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Chalcopyrite, 9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PlatinumGroupSludge, 1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(9000)) + .fluidOutputs(new FluidStack(ItemList.sBlueVitriol, 18000)).duration(1 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Plutonium, 64), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 64)) + .fluidInputs(Materials.Air.getGas(8000)).fluidOutputs(Materials.Radon.getGas(800)) + .duration(1 * MINUTES + 15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); // 3SiO2 + 4Al = 3Si + 2Al2O3 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4) }, - null, - null, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 10) }, - 10, - 120); + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 10)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sMultiblockChemicalRecipes); // 10Si + 30HCl -> 0.3 SiH2Cl2 + 9 HSiCl3 + 0.3 SiCl4 + 0.2 Si2Cl6 + 20.4H - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 10) }, - new FluidStack[] { Materials.HydrochloricAcid.getFluid(30000) }, - new FluidStack[] { Materials.Trichlorosilane.getFluid(9000), - Materials.SiliconTetrachloride.getFluid(300), Materials.Hexachlorodisilane.getFluid(200), - Materials.Dichlorosilane.getGas(300), Materials.Hydrogen.getGas(20400) }, - null, - 150, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 10)) + .noItemOutputs().fluidInputs(Materials.HydrochloricAcid.getFluid(30000)) + .fluidOutputs( + Materials.Trichlorosilane.getFluid(9000), + Materials.SiliconTetrachloride.getFluid(300), + Materials.Hexachlorodisilane.getFluid(200), + Materials.Dichlorosilane.getGas(300), + Materials.Hydrogen.getGas(20400)) + .duration(7 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); // 2CO + 2C3H6 + 4H =RhHCO(P(C6H5)3)3= C4H8O + C4H8O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(4), - MaterialsKevlar.OrganorhodiumCatalyst.getDustTiny(1) }, - new FluidStack[] { Materials.Hydrogen.getGas(4000), Materials.Propene.getGas(2000), - Materials.CarbonMonoxide.getGas(2000) }, - new FluidStack[] { MaterialsKevlar.Butyraldehyde.getFluid(1000), - MaterialsKevlar.Isobutyraldehyde.getFluid(1000) }, - null, - 300, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - MaterialsKevlar.OrganorhodiumCatalyst.getDust(1) }, - new FluidStack[] { Materials.Hydrogen.getGas(36000), Materials.Propene.getGas(18000), - Materials.CarbonMonoxide.getGas(18000) }, - new FluidStack[] { MaterialsKevlar.Butyraldehyde.getFluid(9000), - MaterialsKevlar.Isobutyraldehyde.getFluid(9000) }, - null, - 2000, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.getIntegratedCircuit(4), MaterialsKevlar.OrganorhodiumCatalyst.getDustTiny(1)) + .noItemOutputs() + .fluidInputs( + Materials.Hydrogen.getGas(4000), + Materials.Propene.getGas(2000), + Materials.CarbonMonoxide.getGas(2000)) + .fluidOutputs( + MaterialsKevlar.Butyraldehyde.getFluid(1000), + MaterialsKevlar.Isobutyraldehyde.getFluid(1000)) + .duration(15 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.getIntegratedCircuit(9), MaterialsKevlar.OrganorhodiumCatalyst.getDust(1)) + .noItemOutputs() + .fluidInputs( + Materials.Hydrogen.getGas(36000), + Materials.Propene.getGas(18000), + Materials.CarbonMonoxide.getGas(18000)) + .fluidOutputs( + MaterialsKevlar.Butyraldehyde.getFluid(9000), + MaterialsKevlar.Isobutyraldehyde.getFluid(9000)) + .duration(1 * MINUTES + 40 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); // C2H4 + O =Al2O3,Ag= C2H4O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 1L) }, - new FluidStack[] { Materials.Ethylene.getGas(1000), Materials.Oxygen.getGas(1000) }, - new FluidStack[] { MaterialsKevlar.EthyleneOxide.getGas(1000) }, - null, - 50, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(8), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 9L) }, - new FluidStack[] { Materials.Ethylene.getGas(9000), Materials.Oxygen.getGas(9000) }, - new FluidStack[] { MaterialsKevlar.EthyleneOxide.getGas(9000) }, - null, - 400, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { MaterialsKevlar.EthyleneOxide.getGas(1000), - Materials.Dimethyldichlorosilane.getFluid(4000), Materials.Water.getFluid(5000) }, - new FluidStack[] { MaterialsKevlar.SiliconOil.getFluid(5000) }, - null, - 15, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(8) }, - new FluidStack[] { MaterialsKevlar.EthyleneOxide.getGas(9000), - Materials.Dimethyldichlorosilane.getFluid(36000), Materials.Water.getFluid(45000) }, - new FluidStack[] { MaterialsKevlar.SiliconOil.getFluid(45000) }, - null, - 100, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 1)) + .noItemOutputs().fluidInputs(Materials.Ethylene.getGas(1000), Materials.Oxygen.getGas(1000)) + .fluidOutputs(MaterialsKevlar.EthyleneOxide.getGas(1000)).duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 9)) + .noItemOutputs().fluidInputs(Materials.Ethylene.getGas(9000), Materials.Oxygen.getGas(9000)) + .fluidOutputs(MaterialsKevlar.EthyleneOxide.getGas(9000)).duration(20 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs( + MaterialsKevlar.EthyleneOxide.getGas(1000), + Materials.Dimethyldichlorosilane.getFluid(4000), + Materials.Water.getFluid(5000)) + .fluidOutputs(MaterialsKevlar.SiliconOil.getFluid(5000)).duration(15 * TICKS).eut(TierEU.RECIPE_EV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(8)).noItemOutputs() + .fluidInputs( + MaterialsKevlar.EthyleneOxide.getGas(9000), + Materials.Dimethyldichlorosilane.getFluid(36000), + Materials.Water.getFluid(45000)) + .fluidOutputs(MaterialsKevlar.SiliconOil.getFluid(45000)).duration(5 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(sMultiblockChemicalRecipes); // NH3 + CH4O =SiO2,Al2O3= CH5N + H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(10), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L) }, - new FluidStack[] { Materials.Methanol.getFluid(1000), Materials.Ammonia.getGas(1000) }, - new FluidStack[] { MaterialsKevlar.Methylamine.getGas(1000L), Materials.Water.getFluid(1000L) }, - null, - 1500, - 500000); - - GT_Values.RA - .addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 1L), - GT_OreDictUnificator - .get(OrePrefixes.dust, MaterialsKevlar.DiphenylmethaneDiisocyanate, 5L) }, - new FluidStack[] { MaterialsKevlar.Ethyleneglycol.getFluid(4000), - MaterialsKevlar.SiliconOil.getFluid(1000) }, - new FluidStack[] { MaterialsKevlar.PolyurethaneResin.getFluid(1000L) }, - null, - 200, - 500000); - GT_Values.RA - .addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 9L), - GT_OreDictUnificator - .get(OrePrefixes.dust, MaterialsKevlar.DiphenylmethaneDiisocyanate, 45L) }, - new FluidStack[] { MaterialsKevlar.Ethyleneglycol.getFluid(36000), - MaterialsKevlar.SiliconOil.getFluid(9000) }, - new FluidStack[] { MaterialsKevlar.PolyurethaneResin.getFluid(9000L) }, - null, - 1500, - 500000); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(10), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1)) + .noItemOutputs().fluidInputs(Materials.Methanol.getFluid(1000), Materials.Ammonia.getGas(1000)) + .fluidOutputs(MaterialsKevlar.Methylamine.getGas(1000), Materials.Water.getFluid(1000)) + .duration(1 * MINUTES + 15 * SECONDS).eut(500000).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.DiphenylmethaneDiisocyanate, 5)) + .noItemOutputs() + .fluidInputs(MaterialsKevlar.Ethyleneglycol.getFluid(4000), MaterialsKevlar.SiliconOil.getFluid(1000)) + .fluidOutputs(MaterialsKevlar.PolyurethaneResin.getFluid(1000)).duration(10 * SECONDS).eut(500000) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.Pentaerythritol, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.DiphenylmethaneDiisocyanate, 45)) + .noItemOutputs() + .fluidInputs(MaterialsKevlar.Ethyleneglycol.getFluid(36000), MaterialsKevlar.SiliconOil.getFluid(9000)) + .fluidOutputs(MaterialsKevlar.PolyurethaneResin.getFluid(9000)).duration(1 * MINUTES + 15 * SECONDS) + .eut(500000).addTo(sMultiblockChemicalRecipes); // 3NH3 + 6CH4O =Al2O3,SiO2= CH5N + C2H7N + C3H9N + 6H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L) }, - new FluidStack[] { Materials.Methanol.getFluid(6000), Materials.Ammonia.getGas(3000) }, - new FluidStack[] { MaterialsKevlar.Methylamine.getGas(1000L), Materials.Dimethylamine.getGas(1000L), - MaterialsKevlar.Trimethylamine.getGas(1000L), Materials.Water.getFluid(6000L) }, - null, - 400, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(11), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 9L) }, - new FluidStack[] { Materials.Methanol.getFluid(54000), Materials.Ammonia.getGas(27000) }, - new FluidStack[] { MaterialsKevlar.Methylamine.getGas(9000L), Materials.Dimethylamine.getGas(9000L), - MaterialsKevlar.Trimethylamine.getGas(9000L), Materials.Water.getFluid(54000L) }, - null, - 3000, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1)) + .noItemOutputs().fluidInputs(Materials.Methanol.getFluid(6000), Materials.Ammonia.getGas(3000)) + .fluidOutputs( + MaterialsKevlar.Methylamine.getGas(1000), + Materials.Dimethylamine.getGas(1000), + MaterialsKevlar.Trimethylamine.getGas(1000), + Materials.Water.getFluid(6000)) + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(11), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminiumoxide, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 9)) + .noItemOutputs().fluidInputs(Materials.Methanol.getFluid(54000), Materials.Ammonia.getGas(27000)) + .fluidOutputs( + MaterialsKevlar.Methylamine.getGas(9000), + Materials.Dimethylamine.getGas(9000), + MaterialsKevlar.Trimethylamine.getGas(9000), + Materials.Water.getFluid(54000)) + .duration(2 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); // 18SOCl2 + 5C10H10O4 + 6CO2 = 7C8H4Cl2O2 + 22HCl + 18SO2 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { MaterialsKevlar.ThionylChloride.getFluid(18000), - MaterialsKevlar.DimethylTerephthalate.getFluid(5000L), Materials.CarbonDioxide.getGas(6000L) }, - new FluidStack[] { Materials.DilutedHydrochloricAcid.getFluid(22000L), - Materials.SulfurDioxide.getGas(18000L) }, - new ItemStack[] { - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 64L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 48L) }, - 400, - 1920); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 64), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 48)) + .fluidInputs( + MaterialsKevlar.ThionylChloride.getFluid(18000), + MaterialsKevlar.DimethylTerephthalate.getFluid(5000), + Materials.CarbonDioxide.getGas(6000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(22000), Materials.SulfurDioxide.getGas(18000)) + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); // 2CH4O + C8H6O4 =H2SO4= C10H10O4 + 2H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { MaterialsKevlar.TerephthalicAcid.getFluid(1000L), Materials.Methanol.getFluid(2000), - Materials.SulfuricAcid.getFluid(2000) }, - new FluidStack[] { MaterialsKevlar.DimethylTerephthalate.getFluid(1000L), - Materials.DilutedSulfuricAcid.getFluid(2000) }, - null, - 250, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { MaterialsKevlar.TerephthalicAcid.getFluid(9000L), Materials.Methanol.getFluid(18000), - Materials.SulfuricAcid.getFluid(18000) }, - new FluidStack[] { MaterialsKevlar.DimethylTerephthalate.getFluid(9000L), - Materials.DilutedSulfuricAcid.getFluid(18000) }, - null, - 1750, - 1920); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Benzene.getFluid(1000), Materials.Methane.getGas(2000) }, - new FluidStack[] { MaterialsKevlar.IIIDimethylbenzene.getFluid(1000L), - Materials.Hydrogen.getGas(4000) }, - null, - 4000, - 120); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(3) }, - new FluidStack[] { Materials.Benzene.getFluid(1000), Materials.Methane.getGas(2000) }, - new FluidStack[] { MaterialsKevlar.IVDimethylbenzene.getFluid(1000L), Materials.Hydrogen.getGas(4000) }, - null, - 4000, - 120); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIHydroxide, 45L) }, - new FluidStack[] { MaterialsKevlar.NaphthenicAcid.getFluid(10000L) }, - new FluidStack[] { GT_Values.NF, }, - new ItemStack[] { MaterialsKevlar.CobaltIINaphthenate.getDust(64), + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + MaterialsKevlar.TerephthalicAcid.getFluid(1000), + Materials.Methanol.getFluid(2000), + Materials.SulfuricAcid.getFluid(2000)) + .fluidOutputs( + MaterialsKevlar.DimethylTerephthalate.getFluid(1000), + Materials.DilutedSulfuricAcid.getFluid(2000)) + .duration(12 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs( + MaterialsKevlar.TerephthalicAcid.getFluid(9000), + Materials.Methanol.getFluid(18000), + Materials.SulfuricAcid.getFluid(18000)) + .fluidOutputs( + MaterialsKevlar.DimethylTerephthalate.getFluid(9000), + Materials.DilutedSulfuricAcid.getFluid(18000)) + .duration(1 * MINUTES + 27 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs(Materials.Benzene.getFluid(1000), Materials.Methane.getGas(2000)) + .fluidOutputs(MaterialsKevlar.IIIDimethylbenzene.getFluid(1000), Materials.Hydrogen.getGas(4000)) + .duration(3 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(3)).noItemOutputs() + .fluidInputs(Materials.Benzene.getFluid(1000), Materials.Methane.getGas(2000)) + .fluidOutputs(MaterialsKevlar.IVDimethylbenzene.getFluid(1000), Materials.Hydrogen.getGas(4000)) + .duration(3 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIHydroxide, 45)) + .itemOutputs( + MaterialsKevlar.CobaltIINaphthenate.getDust(64), + MaterialsKevlar.CobaltIINaphthenate.getDust(64), MaterialsKevlar.CobaltIINaphthenate.getDust(64), MaterialsKevlar.CobaltIINaphthenate.getDust(64), MaterialsKevlar.CobaltIINaphthenate.getDust(64), + MaterialsKevlar.CobaltIINaphthenate.getDust(49)) + .fluidInputs(MaterialsKevlar.NaphthenicAcid.getFluid(10000)).noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIAcetate, 64), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIAcetate, 64), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIAcetate, 7)) + .itemOutputs( MaterialsKevlar.CobaltIINaphthenate.getDust(64), - MaterialsKevlar.CobaltIINaphthenate.getDust(49), }, - 200, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIAcetate, 64L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIAcetate, 64L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.CobaltIIAcetate, 7L) }, - new FluidStack[] { MaterialsKevlar.NaphthenicAcid.getFluid(10000L) }, - new FluidStack[] { Materials.AceticAcid.getFluid(15000L), }, - new ItemStack[] { MaterialsKevlar.CobaltIINaphthenate.getDust(64), MaterialsKevlar.CobaltIINaphthenate.getDust(64), MaterialsKevlar.CobaltIINaphthenate.getDust(64), MaterialsKevlar.CobaltIINaphthenate.getDust(64), MaterialsKevlar.CobaltIINaphthenate.getDust(64), - MaterialsKevlar.CobaltIINaphthenate.getDust(49), }, - 200, - 1920); + MaterialsKevlar.CobaltIINaphthenate.getDust(49)) + .fluidInputs(MaterialsKevlar.NaphthenicAcid.getFluid(10000)) + .fluidOutputs(Materials.AceticAcid.getFluid(15000)).duration(10 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(sMultiblockChemicalRecipes); // PCl3 + 3C6H5Cl + 6Na = 6NaCl + C18H15P - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 6L) }, - new FluidStack[] { MaterialsKevlar.PhosphorusTrichloride.getFluid(1000L), - Materials.Chlorobenzene.getFluid(3000) }, - null, - new ItemStack[] { MaterialsKevlar.Triphenylphosphene.getDust(34), Materials.Salt.getDust(12) }, - 400, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 6)) + .itemOutputs(MaterialsKevlar.Triphenylphosphene.getDust(34), Materials.Salt.getDust(12)) + .fluidInputs( + MaterialsKevlar.PhosphorusTrichloride.getFluid(1000), + Materials.Chlorobenzene.getFluid(3000)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); // 4NaH + C3H9BO3 = NaBH4 + 3CH3ONa - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), MaterialsKevlar.SodiumHydride.getDust(8) }, - new FluidStack[] { MaterialsKevlar.TrimethylBorate.getFluid(1000L) }, - null, - new ItemStack[] { MaterialsKevlar.SodiumBorohydride.getDust(6), - MaterialsKevlar.SodiumMethoxide.getDust(18) }, - 600, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), MaterialsKevlar.SodiumHydride.getDust(64) }, - new FluidStack[] { MaterialsKevlar.TrimethylBorate.getFluid(8000L) }, - null, - new ItemStack[] { MaterialsKevlar.SodiumBorohydride.getDust(48), - MaterialsKevlar.SodiumMethoxide.getDust(64), MaterialsKevlar.SodiumMethoxide.getDust(64), - MaterialsKevlar.SodiumMethoxide.getDust(16) }, - 600, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.getIntegratedCircuit(1), MaterialsKevlar.SodiumHydride.getDust(8)) + .itemOutputs(MaterialsKevlar.SodiumBorohydride.getDust(6), MaterialsKevlar.SodiumMethoxide.getDust(18)) + .fluidInputs(MaterialsKevlar.TrimethylBorate.getFluid(1000)).noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.getIntegratedCircuit(9), MaterialsKevlar.SodiumHydride.getDust(64)) + .itemOutputs( + MaterialsKevlar.SodiumBorohydride.getDust(48), + MaterialsKevlar.SodiumMethoxide.getDust(64), + MaterialsKevlar.SodiumMethoxide.getDust(64), + MaterialsKevlar.SodiumMethoxide.getDust(16)) + .fluidInputs(MaterialsKevlar.TrimethylBorate.getFluid(8000)).noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); // 2CH3COOH = CH3COCH3 + CO2 + H - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.copyAmount(0, Materials.Calcite.getDust(5)), - GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.AceticAcid.getFluid(2000) }, - new FluidStack[] { Materials.Acetone.getFluid(1000), Materials.CarbonDioxide.getGas(1000), - Materials.Water.getFluid(1000) }, - null, - 400, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.copyAmount(0, Materials.Calcium.getDust(1)), - GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.AceticAcid.getFluid(2000) }, - new FluidStack[] { Materials.Acetone.getFluid(1000), Materials.CarbonDioxide.getGas(1000), - Materials.Water.getFluid(1000) }, - null, - 400, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.copyAmount(0, Materials.Quicklime.getDust(2)), - GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.AceticAcid.getFluid(2000) }, - new FluidStack[] { Materials.Acetone.getFluid(1000), Materials.CarbonDioxide.getGas(1000), - Materials.Water.getFluid(1000) }, - null, - 400, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(0, Materials.Calcite.getDust(5)), GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs().fluidInputs(Materials.AceticAcid.getFluid(2000)) + .fluidOutputs( + Materials.Acetone.getFluid(1000), + Materials.CarbonDioxide.getGas(1000), + Materials.Water.getFluid(1000)) + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(0, Materials.Calcium.getDust(1)), GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs().fluidInputs(Materials.AceticAcid.getFluid(2000)) + .fluidOutputs( + Materials.Acetone.getFluid(1000), + Materials.CarbonDioxide.getGas(1000), + Materials.Water.getFluid(1000)) + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(0, Materials.Quicklime.getDust(2)), + GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs().fluidInputs(Materials.AceticAcid.getFluid(2000)) + .fluidOutputs( + Materials.Acetone.getFluid(1000), + Materials.CarbonDioxide.getGas(1000), + Materials.Water.getFluid(1000)) + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); // C + 4H + O = CH3OH - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(23) }, - new FluidStack[] { Materials.Hydrogen.getGas(4000), Materials.Oxygen.getGas(1000) }, - new FluidStack[] { Materials.Methanol.getFluid(1000) }, - null, - 320, - 96); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(23)) + .noItemOutputs().fluidInputs(Materials.Hydrogen.getGas(4000), Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.Methanol.getFluid(1000)).duration(16 * SECONDS).eut(96) + .addTo(sMultiblockChemicalRecipes); // This recipe collides with one for Vinyl Chloride // 2C + 4H + 2O = CH3COOH - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Carbon.getDust(2), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Hydrogen.getGas(4000), Materials.Oxygen.getGas(2000) }, - new FluidStack[] { Materials.AceticAcid.getFluid(1000) }, - null, - 480, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Carbon.getDust(2), GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs().fluidInputs(Materials.Hydrogen.getGas(4000), Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.AceticAcid.getFluid(1000)).duration(24 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + // 2CO + 4H = CH3COOH - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.CarbonMonoxide.getGas(2000), Materials.Hydrogen.getGas(4000) }, - new FluidStack[] { Materials.AceticAcid.getFluid(1000) }, - null, - 320, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(8) }, - new FluidStack[] { Materials.Hydrogen.getGas(9000), Materials.Chlorine.getGas(9000) }, - new FluidStack[] { Materials.HydrochloricAcid.getFluid(9000) }, - null, - 7, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Chlorine.getGas(10000), Materials.Water.getFluid(10000), - Materials.Mercury.getFluid(1000) }, - new FluidStack[] { Materials.HypochlorousAcid.getFluid(10000), Materials.Hydrogen.getGas(10000) }, - null, - 600, - 8); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.CarbonMonoxide.getGas(2000), Materials.Hydrogen.getGas(4000)) + .fluidOutputs(Materials.AceticAcid.getFluid(1000)).duration(16 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(8)).noItemOutputs() + .fluidInputs(Materials.Hydrogen.getGas(9000), Materials.Chlorine.getGas(9000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(9000)).duration(7 * TICKS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs( + Materials.Chlorine.getGas(10000), + Materials.Water.getFluid(10000), + Materials.Mercury.getFluid(1000)) + .fluidOutputs(Materials.HypochlorousAcid.getFluid(10000), Materials.Hydrogen.getGas(10000)) + .duration(30 * SECONDS).eut(8).addTo(sMultiblockChemicalRecipes); // H2O + 4Cl + C3H6 + NaOH = C3H5ClO + NaCl·H2O + 2HCl - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(23) }, - new FluidStack[] { Materials.Propene.getGas(1000), Materials.Chlorine.getGas(4000), - Materials.Water.getFluid(1000) }, - new FluidStack[] { Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getFluid(1000), - Materials.HydrochloricAcid.getFluid(2000) }, - null, - 640, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(23)) + .noItemOutputs() + .fluidInputs( + Materials.Propene.getGas(1000), + Materials.Chlorine.getGas(4000), + Materials.Water.getFluid(1000)) + .fluidOutputs( + Materials.Epichlorohydrin.getFluid(1000), + Materials.SaltWater.getFluid(1000), + Materials.HydrochloricAcid.getFluid(2000)) + .duration(32 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + // H2O + 2Cl + C3H6 + NaOH =Hg= C3H5ClO + NaCl·H2O + 2H - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Propene.getGas(1000), Materials.Chlorine.getGas(2000), - Materials.Water.getFluid(1000), Materials.Mercury.getFluid(100) }, - new FluidStack[] { Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getFluid(1000), - Materials.Hydrogen.getGas(2000) }, - null, - 640, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs() + .fluidInputs( + Materials.Propene.getGas(1000), + Materials.Chlorine.getGas(2000), + Materials.Water.getFluid(1000), + Materials.Mercury.getFluid(100)) + .fluidOutputs( + Materials.Epichlorohydrin.getFluid(1000), + Materials.SaltWater.getFluid(1000), + Materials.Hydrogen.getGas(2000)) + .duration(32 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + // HClO + 2Cl + C3H6 + NaOH = C3H5ClO + NaCl·H2O + HCl - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Propene.getGas(1000), Materials.Chlorine.getGas(2000), - Materials.HypochlorousAcid.getFluid(1000) }, - new FluidStack[] { Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getFluid(1000), - Materials.HydrochloricAcid.getFluid(1000) }, - null, - 640, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Apatite.getDust(9) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(5000), Materials.Water.getFluid(10000) }, - new FluidStack[] { Materials.PhosphoricAcid.getFluid(3000), Materials.HydrochloricAcid.getFluid(1000) }, - new ItemStack[] { Materials.Gypsum.getDust(40) }, - 320, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Phosphorus.getDust(4), GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { Materials.Oxygen.getGas(10000) }, - null, - new ItemStack[] { Materials.PhosphorousPentoxide.getDust(14) }, - 40, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs() + .fluidInputs( + Materials.Propene.getGas(1000), + Materials.Chlorine.getGas(2000), + Materials.HypochlorousAcid.getFluid(1000)) + .fluidOutputs( + Materials.Epichlorohydrin.getFluid(1000), + Materials.SaltWater.getFluid(1000), + Materials.HydrochloricAcid.getFluid(1000)) + .duration(32 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Apatite.getDust(9)).itemOutputs(Materials.Gypsum.getDust(40)) + .fluidInputs(Materials.SulfuricAcid.getFluid(5000), Materials.Water.getFluid(10000)) + .fluidOutputs(Materials.PhosphoricAcid.getFluid(3000), Materials.HydrochloricAcid.getFluid(1000)) + .duration(16 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Phosphorus.getDust(4), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.PhosphorousPentoxide.getDust(14)).fluidInputs(Materials.Oxygen.getGas(10000)) + .noFluidOutputs().duration(2 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); // 2P + 5O + 3H2O = 2H3PO4 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Phosphorus.getDust(1), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Oxygen.getGas(2500), Materials.Water.getFluid(1500) }, - new FluidStack[] { Materials.PhosphoricAcid.getFluid(1000) }, - null, - 320, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { Materials.Propene.getGas(8000), Materials.Benzene.getFluid(8000), - Materials.PhosphoricAcid.getFluid(1000) }, - new FluidStack[] { Materials.Cumene.getFluid(8000) }, - null, - 1920, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Propene.getGas(1000), Materials.Benzene.getFluid(1000), - Materials.PhosphoricAcid.getFluid(100), Materials.Oxygen.getGas(2000) }, - new FluidStack[] { Materials.Phenol.getFluid(1000), Materials.Acetone.getFluid(1000) }, - null, - 480, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { Materials.Acetone.getFluid(1000), Materials.Phenol.getFluid(2000), - Materials.HydrochloricAcid.getFluid(1000) }, - new FluidStack[] { Materials.BisphenolA.getFluid(1000), Materials.Water.getFluid(1000) }, - null, - 160, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.SodiumHydroxide.getDust(6), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Acetone.getFluid(1000), Materials.Phenol.getFluid(2000), - Materials.HydrochloricAcid.getFluid(1000), Materials.Epichlorohydrin.getFluid(2000) }, - new FluidStack[] { Materials.Epoxid.getMolten(1000), Materials.SaltWater.getFluid(2000) }, - null, - 480, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.Hydrogen.getGas(9000), Materials.Fluorine.getGas(9000) }, - new FluidStack[] { Materials.HydrofluoricAcid.getFluid(9000) }, - null, - 7, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.HydrofluoricAcid.getFluid(4000), Materials.Methane.getGas(2000), - Materials.Chlorine.getGas(12000) }, - new FluidStack[] { Materials.Tetrafluoroethylene.getGas(1000), - Materials.HydrochloricAcid.getFluid(12000) }, - null, - 540, - 240); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Methane.getGas(2000), Materials.Chlorine.getGas(4000), - Materials.Water.getFluid(1000) }, - new FluidStack[] { Materials.HydrochloricAcid.getFluid(2000), - Materials.DilutedHydrochloricAcid.getFluid(2000) }, - new ItemStack[] { Materials.Polydimethylsiloxane.getDust(3) }, - 480, - 96); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Methanol.getFluid(2000), Materials.HydrochloricAcid.getFluid(2000) }, - new FluidStack[] { Materials.DilutedHydrochloricAcid.getFluid(2000) }, - new ItemStack[] { Materials.Polydimethylsiloxane.getDust(3) }, - 480, - 96); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Nitrogen.getGas(10000), Materials.Hydrogen.getGas(30000) }, - new FluidStack[] { Materials.Ammonia.getGas(10000) }, - new ItemStack[] { null }, - 800, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Phosphorus.getDust(1), GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs().fluidInputs(Materials.Oxygen.getGas(2500), Materials.Water.getFluid(1500)) + .fluidOutputs(Materials.PhosphoricAcid.getFluid(1000)).duration(16 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + Materials.Propene.getGas(8000), + Materials.Benzene.getFluid(8000), + Materials.PhosphoricAcid.getFluid(1000)) + .fluidOutputs(Materials.Cumene.getFluid(8000)).duration(1 * MINUTES + 36 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.Propene.getGas(1000), + Materials.Benzene.getFluid(1000), + Materials.PhosphoricAcid.getFluid(100), + Materials.Oxygen.getGas(2000)) + .fluidOutputs(Materials.Phenol.getFluid(1000), Materials.Acetone.getFluid(1000)).duration(24 * SECONDS) + .eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + Materials.Acetone.getFluid(1000), + Materials.Phenol.getFluid(2000), + Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.BisphenolA.getFluid(1000), Materials.Water.getFluid(1000)).duration(8 * SECONDS) + .eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(6), GT_Utility.getIntegratedCircuit(24)) + .noItemOutputs() + .fluidInputs( + Materials.Acetone.getFluid(1000), + Materials.Phenol.getFluid(2000), + Materials.HydrochloricAcid.getFluid(1000), + Materials.Epichlorohydrin.getFluid(2000)) + .fluidOutputs(Materials.Epoxid.getMolten(1000), Materials.SaltWater.getFluid(2000)) + .duration(24 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs(Materials.Hydrogen.getGas(9000), Materials.Fluorine.getGas(9000)) + .fluidOutputs(Materials.HydrofluoricAcid.getFluid(9000)).duration(7 * TICKS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.HydrofluoricAcid.getFluid(4000), + Materials.Methane.getGas(2000), + Materials.Chlorine.getGas(12000)) + .fluidOutputs(Materials.Tetrafluoroethylene.getGas(1000), Materials.HydrochloricAcid.getFluid(12000)) + .duration(27 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(24)) + .itemOutputs(Materials.Polydimethylsiloxane.getDust(3)) + .fluidInputs( + Materials.Methane.getGas(2000), + Materials.Chlorine.getGas(4000), + Materials.Water.getFluid(1000)) + .fluidOutputs( + Materials.HydrochloricAcid.getFluid(2000), + Materials.DilutedHydrochloricAcid.getFluid(2000)) + .duration(24 * SECONDS).eut(96).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(24)) + .itemOutputs(Materials.Polydimethylsiloxane.getDust(3)) + .fluidInputs(Materials.Methanol.getFluid(2000), Materials.HydrochloricAcid.getFluid(2000)) + .fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(2000)).duration(24 * SECONDS).eut(96) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Nitrogen.getGas(10000), Materials.Hydrogen.getGas(30000)) + .fluidOutputs(Materials.Ammonia.getGas(10000)).duration(40 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); // 2NH3 + 7O = N2O4 + 3H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(23) }, - new FluidStack[] { Materials.Ammonia.getGas(2000), Materials.Oxygen.getGas(7000) }, - new FluidStack[] { Materials.DinitrogenTetroxide.getGas(1000), Materials.Water.getFluid(3000) }, - null, - 480, - 30); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(23)).noItemOutputs() + .fluidInputs(Materials.Ammonia.getGas(2000), Materials.Oxygen.getGas(7000)) + .fluidOutputs(Materials.DinitrogenTetroxide.getGas(1000), Materials.Water.getFluid(3000)) + .duration(24 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + // 7O + 6H + 2N = N2O4 + 3H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(23) }, - new FluidStack[] { Materials.Nitrogen.getGas(2000), Materials.Hydrogen.getGas(6000), - Materials.Oxygen.getGas(7000) }, - new FluidStack[] { Materials.DinitrogenTetroxide.getGas(1000), Materials.Water.getFluid(3000) }, - null, - 1100, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.Oxygen.getGas(100000), Materials.Ammonia.getGas(36000) }, - new FluidStack[] { Materials.NitricOxide.getGas(36000), Materials.Water.getFluid(54000) }, - null, - 170, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(8) }, - new FluidStack[] { Materials.Oxygen.getGas(100000), Materials.Ammonia.getGas(36000) }, - new FluidStack[] { Materials.NitricOxide.getGas(36000) }, - null, - 170, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.NitricOxide.getGas(9000), Materials.Oxygen.getGas(9000) }, - new FluidStack[] { Materials.NitrogenDioxide.getGas(9000) }, - null, - 80, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.NitrogenDioxide.getGas(27000), Materials.Water.getFluid(9000) }, - new FluidStack[] { Materials.NitricAcid.getFluid(18000), Materials.NitricOxide.getGas(9000) }, - null, - 120, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Hydrogen.getGas(3000), Materials.Nitrogen.getGas(1000), - Materials.Oxygen.getGas(4000) }, - new FluidStack[] { Materials.NitricAcid.getFluid(1000), Materials.Water.getFluid(1000) }, - null, - 320, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Ammonia.getGas(1000), Materials.Oxygen.getGas(4000) }, - new FluidStack[] { Materials.NitricAcid.getFluid(1000), Materials.Water.getFluid(1000) }, - null, - 320, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.NitrogenDioxide.getGas(2000), Materials.Oxygen.getGas(1000), - Materials.Water.getFluid(1000) }, - new FluidStack[] { Materials.NitricAcid.getFluid(2000) }, - null, - 320, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), Materials.Sulfur.getDust(9) }, - new FluidStack[] { Materials.Hydrogen.getGas(18000) }, - new FluidStack[] { Materials.HydricSulfide.getGas(9000) }, - null, - 4, - 120); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), Materials.Sulfur.getDust(9) }, - new FluidStack[] { Materials.Oxygen.getGas(18000) }, - new FluidStack[] { Materials.SulfurDioxide.getGas(9000) }, - null, - 4, - 120); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.HydricSulfide.getGas(9000), Materials.Oxygen.getGas(27000) }, - new FluidStack[] { Materials.SulfurDioxide.getGas(9000), Materials.Water.getFluid(9000) }, - null, - 60, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(8) }, - new FluidStack[] { Materials.HydricSulfide.getGas(9000), Materials.Oxygen.getGas(27000) }, - new FluidStack[] { Materials.SulfurDioxide.getGas(9000) }, - null, - 60, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(7) }, - new FluidStack[] { Materials.SulfurDioxide.getGas(9000), Materials.HydricSulfide.getGas(18000) }, - null, - new ItemStack[] { Materials.Sulfur.getDust(27) }, - 60, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.SulfurTrioxide.getGas(9000), Materials.Water.getFluid(9000) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(9000) }, - null, - 260, - 480); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(23)).noItemOutputs() + .fluidInputs( + Materials.Nitrogen.getGas(2000), + Materials.Hydrogen.getGas(6000), + Materials.Oxygen.getGas(7000)) + .fluidOutputs(Materials.DinitrogenTetroxide.getGas(1000), Materials.Water.getFluid(3000)) + .duration(55 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs(Materials.Oxygen.getGas(100000), Materials.Ammonia.getGas(36000)) + .fluidOutputs(Materials.NitricOxide.getGas(36000), Materials.Water.getFluid(54000)) + .duration(8 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(8)).noItemOutputs() + .fluidInputs(Materials.Oxygen.getGas(100000), Materials.Ammonia.getGas(36000)) + .fluidOutputs(Materials.NitricOxide.getGas(36000)).duration(8 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs(Materials.NitricOxide.getGas(9000), Materials.Oxygen.getGas(9000)) + .fluidOutputs(Materials.NitrogenDioxide.getGas(9000)).duration(4 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs(Materials.NitrogenDioxide.getGas(27000), Materials.Water.getFluid(9000)) + .fluidOutputs(Materials.NitricAcid.getFluid(18000), Materials.NitricOxide.getGas(9000)) + .duration(6 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.Hydrogen.getGas(3000), + Materials.Nitrogen.getGas(1000), + Materials.Oxygen.getGas(4000)) + .fluidOutputs(Materials.NitricAcid.getFluid(1000), Materials.Water.getFluid(1000)) + .duration(16 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Ammonia.getGas(1000), Materials.Oxygen.getGas(4000)) + .fluidOutputs(Materials.NitricAcid.getFluid(1000), Materials.Water.getFluid(1000)) + .duration(16 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.NitrogenDioxide.getGas(2000), + Materials.Oxygen.getGas(1000), + Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.NitricAcid.getFluid(2000)).duration(16 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9), Materials.Sulfur.getDust(9)) + .noItemOutputs().fluidInputs(Materials.Hydrogen.getGas(18000)) + .fluidOutputs(Materials.HydricSulfide.getGas(9000)).duration(4 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9), Materials.Sulfur.getDust(9)) + .noItemOutputs().fluidInputs(Materials.Oxygen.getGas(18000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(9000)).duration(4 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs(Materials.HydricSulfide.getGas(9000), Materials.Oxygen.getGas(27000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(9000), Materials.Water.getFluid(9000)) + .duration(3 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(8)).noItemOutputs() + .fluidInputs(Materials.HydricSulfide.getGas(9000), Materials.Oxygen.getGas(27000)) + .fluidOutputs(Materials.SulfurDioxide.getGas(9000)).duration(3 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(7)) + .itemOutputs(Materials.Sulfur.getDust(27)) + .fluidInputs(Materials.SulfurDioxide.getGas(9000), Materials.HydricSulfide.getGas(18000)) + .noFluidOutputs().duration(3 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs(Materials.SulfurTrioxide.getGas(9000), Materials.Water.getFluid(9000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(9000)).duration(13 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); // S + O3 + H2O = H2SO4 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24), Materials.Sulfur.getDust(1) }, - new FluidStack[] { Materials.Oxygen.getGas(3000), Materials.Water.getFluid(1000) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(1000) }, - null, - 480, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(7), Materials.Sulfur.getDust(9) }, - new FluidStack[] { Materials.Oxygen.getGas(27000), Materials.Water.getFluid(9000) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(9000) }, - null, - 260, - 480); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24), Materials.Sulfur.getDust(1)) + .noItemOutputs().fluidInputs(Materials.Oxygen.getGas(3000), Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(24 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(7), Materials.Sulfur.getDust(9)) + .noItemOutputs().fluidInputs(Materials.Oxygen.getGas(27000), Materials.Water.getFluid(9000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(9000)).duration(13 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); // H2S + O4 = H2SO4 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.HydricSulfide.getGas(1000), Materials.Oxygen.getGas(4000) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(1000) }, - null, - 480, - 30); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.HydricSulfide.getGas(1000), Materials.Oxygen.getGas(4000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(24 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); // SO2 + O + H2O = H2SO4 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.SulfurDioxide.getGas(1000), Materials.Oxygen.getGas(1000), - Materials.Water.getFluid(1000) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(1000) }, - null, - 600, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.SulfurDioxide.getGas(9000), Materials.Oxygen.getGas(9000), - Materials.Water.getFluid(9000) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(9000) }, - null, - 150, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.HydrochloricAcid.getFluid(1000), Materials.Ethylene.getGas(1000), - Materials.Oxygen.getGas(1000) }, - new FluidStack[] { Materials.VinylChloride.getGas(1000), Materials.Water.getFluid(1000) }, - null, - 160, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Chlorine.getGas(2000), Materials.Ethylene.getGas(2000), - Materials.Oxygen.getGas(1000) }, - new FluidStack[] { Materials.VinylChloride.getGas(2000), Materials.Water.getFluid(1000) }, - null, - 240, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Isoprene.getFluid(1728), Materials.Air.getGas(6000), - Materials.Titaniumtetrachloride.getFluid(80) }, - null, - new ItemStack[] { Materials.RawRubber.getDust(18) }, - 640, - 30); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Isoprene.getFluid(1728), Materials.Oxygen.getGas(6000), - Materials.Titaniumtetrachloride.getFluid(80) }, - null, - new ItemStack[] { Materials.RawRubber.getDust(24) }, - 640, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(3) }, - new FluidStack[] { Materials.Styrene.getFluid(36), Materials.Butadiene.getGas(108), - Materials.Air.getGas(2000) }, - null, - new ItemStack[] { Materials.RawStyreneButadieneRubber.getDust(1) }, - 160, - 240); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(3) }, - new FluidStack[] { Materials.Styrene.getFluid(72), Materials.Butadiene.getGas(216), - Materials.Oxygen.getGas(2000) }, - null, - new ItemStack[] { Materials.RawStyreneButadieneRubber.getDust(3) }, - 160, - 240); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(4) }, - new FluidStack[] { Materials.Styrene.getFluid(540), Materials.Butadiene.getGas(1620), - Materials.Titaniumtetrachloride.getFluid(100), Materials.Air.getGas(15000) }, - null, - new ItemStack[] { Materials.RawStyreneButadieneRubber.getDust(22), - Materials.RawStyreneButadieneRubber.getDustSmall(2) }, - 640, - 240); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(4) }, - new FluidStack[] { Materials.Styrene.getFluid(540), Materials.Butadiene.getGas(1620), - Materials.Titaniumtetrachloride.getFluid(100), Materials.Oxygen.getGas(7500) }, - null, - new ItemStack[] { Materials.RawStyreneButadieneRubber.getDust(30) }, - 640, - 240); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), Materials.Salt.getDust(18) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(9000) }, - new FluidStack[] { Materials.HydrochloricAcid.getFluid(9000) }, - new ItemStack[] { Materials.SodiumBisulfate.getDust(63) }, - 135, - 120); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), Materials.SodiumHydroxide.getDust(27) }, - new FluidStack[] { Materials.SulfuricAcid.getFluid(9000) }, - new FluidStack[] { Materials.Water.getFluid(9000) }, - new ItemStack[] { Materials.SodiumBisulfate.getDust(63) }, - 135, - 120); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Benzene.getFluid(1000), Materials.Chlorine.getGas(2000), - Materials.Water.getFluid(1000) }, - new FluidStack[] { Materials.Phenol.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000), - Materials.DilutedHydrochloricAcid.getFluid(1000) }, - null, - 560, - 30); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.SulfurDioxide.getGas(1000), + Materials.Oxygen.getGas(1000), + Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(30 * SECONDS).eut(30) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs( + Materials.SulfurDioxide.getGas(9000), + Materials.Oxygen.getGas(9000), + Materials.Water.getFluid(9000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(9000)).duration(7 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs( + Materials.HydrochloricAcid.getFluid(1000), + Materials.Ethylene.getGas(1000), + Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.VinylChloride.getGas(1000), Materials.Water.getFluid(1000)) + .duration(8 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.Chlorine.getGas(2000), + Materials.Ethylene.getGas(2000), + Materials.Oxygen.getGas(1000)) + .fluidOutputs(Materials.VinylChloride.getGas(2000), Materials.Water.getFluid(1000)) + .duration(12 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.RawRubber.getDust(18)) + .fluidInputs( + Materials.Isoprene.getFluid(1728), + Materials.Air.getGas(6000), + Materials.Titaniumtetrachloride.getFluid(80)) + .noFluidOutputs().duration(32 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.RawRubber.getDust(24)) + .fluidInputs( + Materials.Isoprene.getFluid(1728), + Materials.Oxygen.getGas(6000), + Materials.Titaniumtetrachloride.getFluid(80)) + .noFluidOutputs().duration(32 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(1)) + .fluidInputs( + Materials.Styrene.getFluid(36), + Materials.Butadiene.getGas(108), + Materials.Air.getGas(2000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(3)) + .fluidInputs( + Materials.Styrene.getFluid(72), + Materials.Butadiene.getGas(216), + Materials.Oxygen.getGas(2000)) + .noFluidOutputs().duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + Materials.RawStyreneButadieneRubber.getDust(22), + Materials.RawStyreneButadieneRubber.getDustSmall(2)) + .fluidInputs( + Materials.Styrene.getFluid(540), + Materials.Butadiene.getGas(1620), + Materials.Titaniumtetrachloride.getFluid(100), + Materials.Air.getGas(15000)) + .noFluidOutputs().duration(32 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(Materials.RawStyreneButadieneRubber.getDust(30)) + .fluidInputs( + Materials.Styrene.getFluid(540), + Materials.Butadiene.getGas(1620), + Materials.Titaniumtetrachloride.getFluid(100), + Materials.Oxygen.getGas(7500)) + .noFluidOutputs().duration(32 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9), Materials.Salt.getDust(18)) + .itemOutputs(Materials.SodiumBisulfate.getDust(63)).fluidInputs(Materials.SulfuricAcid.getFluid(9000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(9000)).duration(6 * SECONDS + 15 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9), Materials.SodiumHydroxide.getDust(27)) + .itemOutputs(Materials.SodiumBisulfate.getDust(63)).fluidInputs(Materials.SulfuricAcid.getFluid(9000)) + .fluidOutputs(Materials.Water.getFluid(9000)).duration(6 * SECONDS + 15 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.Benzene.getFluid(1000), + Materials.Chlorine.getGas(2000), + Materials.Water.getFluid(1000)) + .fluidOutputs( + Materials.Phenol.getFluid(1000), + Materials.HydrochloricAcid.getFluid(1000), + Materials.DilutedHydrochloricAcid.getFluid(1000)) + .duration(28 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + // C6H6 + 2Cl + NaOH = C6H6O + NaCl + HCl - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.SodiumHydroxide.getDust(6), GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Benzene.getFluid(2000), Materials.Chlorine.getGas(4000) }, - new FluidStack[] { Materials.Phenol.getFluid(2000), Materials.HydrochloricAcid.getFluid(2000) }, - new ItemStack[] { Materials.Salt.getDust(4) }, - 1120, - 30); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.LightFuel.getFluid(20000), Materials.HeavyFuel.getFluid(4000) }, - new FluidStack[] { Materials.Fuel.getFluid(24000) }, - null, - 100, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Fuel.getFluid(10000), Materials.Tetranitromethane.getFluid(200) }, - new FluidStack[] { Materials.NitroFuel.getFluid(10000) }, - null, - 120, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.BioDiesel.getFluid(10000), Materials.Tetranitromethane.getFluid(400) }, - new FluidStack[] { Materials.NitroFuel.getFluid(9000) }, - null, - 120, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(6), GT_Utility.getIntegratedCircuit(24)) + .itemOutputs(Materials.Salt.getDust(4)) + .fluidInputs(Materials.Benzene.getFluid(2000), Materials.Chlorine.getGas(4000)) + .fluidOutputs(Materials.Phenol.getFluid(2000), Materials.HydrochloricAcid.getFluid(2000)) + .duration(56 * SECONDS).eut(30).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.LightFuel.getFluid(20000), Materials.HeavyFuel.getFluid(4000)) + .fluidOutputs(Materials.Fuel.getFluid(24000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Fuel.getFluid(10000), Materials.Tetranitromethane.getFluid(200)) + .fluidOutputs(Materials.NitroFuel.getFluid(10000)).duration(6 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.BioDiesel.getFluid(10000), Materials.Tetranitromethane.getFluid(400)) + .fluidOutputs(Materials.NitroFuel.getFluid(9000)).duration(6 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + // CH4 + 2H2O = CO2 + 8H - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(11) }, - new FluidStack[] { Materials.Methane.getGas(5000), GT_ModHandler.getDistilledWater(10000) }, - new FluidStack[] { Materials.CarbonDioxide.getGas(5000), Materials.Hydrogen.getGas(40000) }, - null, - 200, - 480); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(11)).noItemOutputs() + .fluidInputs(Materials.Methane.getGas(5000), GT_ModHandler.getDistilledWater(10000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(5000), Materials.Hydrogen.getGas(40000)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + // CH4 + H2O = CO + 6H - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(12) }, - new FluidStack[] { Materials.Methane.getGas(5000), GT_ModHandler.getDistilledWater(5000) }, - new FluidStack[] { Materials.CarbonMonoxide.getGas(5000), Materials.Hydrogen.getGas(30000) }, - null, - 200, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Nitrogen.getGas(20000), Materials.Oxygen.getGas(10000) }, - new FluidStack[] { Materials.NitrousOxide.getGas(10000) }, - new ItemStack[] { null }, - 50, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Naphtha.getFluid(16000), Materials.Gas.getGas(2000), - Materials.Methanol.getFluid(1000), Materials.Acetone.getFluid(1000) }, - new FluidStack[] { Materials.GasolineRaw.getFluid(20000) }, - null, - 100, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.GasolineRaw.getFluid(10000), Materials.Toluene.getFluid(1000) }, - new FluidStack[] { Materials.GasolineRegular.getFluid(11000) }, - null, - 10, - 480); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.GasolineRegular.getFluid(20000), Materials.Octane.getFluid(2000), - Materials.NitrousOxide.getGas(6000), Materials.Toluene.getFluid(1000), - Materials.AntiKnock.getFluid(3000L) }, - new FluidStack[] { Materials.GasolinePremium.getFluid(32000L) }, - null, - 50, - 1920); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(12)).noItemOutputs() + .fluidInputs(Materials.Methane.getGas(5000), GT_ModHandler.getDistilledWater(5000)) + .fluidOutputs(Materials.CarbonMonoxide.getGas(5000), Materials.Hydrogen.getGas(30000)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Nitrogen.getGas(20000), Materials.Oxygen.getGas(10000)) + .fluidOutputs(Materials.NitrousOxide.getGas(10000)).duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.Naphtha.getFluid(16000), + Materials.Gas.getGas(2000), + Materials.Methanol.getFluid(1000), + Materials.Acetone.getFluid(1000)) + .fluidOutputs(Materials.GasolineRaw.getFluid(20000)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.GasolineRaw.getFluid(10000), Materials.Toluene.getFluid(1000)) + .fluidOutputs(Materials.GasolineRegular.getFluid(11000)).duration(10 * TICKS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.GasolineRegular.getFluid(20000), + Materials.Octane.getFluid(2000), + Materials.NitrousOxide.getGas(6000), + Materials.Toluene.getFluid(1000), + Materials.AntiKnock.getFluid(3000)) + .fluidOutputs(Materials.GasolinePremium.getFluid(32000)).duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + // C2H6O + C4H8 = C6H14O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Ethanol.getFluid(1000), Materials.Butene.getGas(1000) }, - new FluidStack[] { Materials.AntiKnock.getFluid(1000) }, - null, - 400, - 480); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Ethanol.getFluid(1000), Materials.Butene.getGas(1000)) + .fluidOutputs(Materials.AntiKnock.getFluid(1000)).duration(20 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + // CH4O + C4H8 = C5H12O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Methanol.getFluid(1000), Materials.Butene.getGas(1000) }, - new FluidStack[] { Materials.MTBEMixture.getGas(1000) }, - null, - 20, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(24) }, - new FluidStack[] { Materials.Naquadria.getMolten(4608L), Materials.ElectrumFlux.getMolten(4608L), - Materials.Radon.getGas(16000L) }, - new FluidStack[] { Materials.EnrichedNaquadria.getFluid(9216L) }, - null, - 600, - 500000); - - if (isGTNHLanthanidLoaded && isGTPPLoaded) { + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Methanol.getFluid(1000), Materials.Butene.getGas(1000)) + .fluidOutputs(Materials.MTBEMixture.getGas(1000)).duration(20 * TICKS).eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs( + Materials.Naquadria.getMolten(4608), + Materials.ElectrumFlux.getMolten(4608), + Materials.Radon.getGas(16000)) + .fluidOutputs(Materials.EnrichedNaquadria.getFluid(9216)).duration(30 * SECONDS).eut(500000) + .addTo(sMultiblockChemicalRecipes); + + if (GTNHLanthanides.isModLoaded() && GTPlusPlus.isModLoaded()) { // CH2O + 2C6H7N + HCl = C13H14N2(HCl) + H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("formaldehyde"), 1000), + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("formaldehyde"), 1000), new FluidStack(FluidRegistry.getFluid("aniline"), 2000), - Materials.HydrochloricAcid.getFluid(1000) }, - new FluidStack[] { MaterialsKevlar.DiaminodiphenylmethanMixture.getFluid(1000L) }, - null, - 1200, - 1920); + Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(MaterialsKevlar.DiaminodiphenylmethanMixture.getFluid(1000)).duration(60 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + // C6H5NO2 + 6H =Pd= C6H7N + 2H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("nitrobenzene"), 9000), - Materials.Hydrogen.getGas(54000) }, - new FluidStack[] { Materials.Water.getFluid(18000), - new FluidStack(FluidRegistry.getFluid("aniline"), 9000) }, - null, - 900, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1)) + .noItemOutputs() + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("nitrobenzene"), 9000), + Materials.Hydrogen.getGas(54000)) + .fluidOutputs( + Materials.Water.getFluid(18000), + new FluidStack(FluidRegistry.getFluid("aniline"), 9000)) + .duration(45 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + // C6H6 + HNO3 =H2SO4= C6H5NO2 + H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { Materials.Benzene.getFluid(5000), Materials.SulfuricAcid.getFluid(3000), - Materials.NitricAcid.getFluid(5000), GT_ModHandler.getDistilledWater(10000) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("nitrobenzene"), 5000), - Materials.DilutedSulfuricAcid.getFluid(3000) }, - null, - 8, - 122880); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + Materials.Benzene.getFluid(5000), + Materials.SulfuricAcid.getFluid(3000), + Materials.NitricAcid.getFluid(5000), + GT_ModHandler.getDistilledWater(10000)) + .fluidOutputs( + new FluidStack(FluidRegistry.getFluid("nitrobenzene"), 5000), + Materials.DilutedSulfuricAcid.getFluid(3000)) + .duration(8 * TICKS).eut(TierEU.RECIPE_ZPM).addTo(sMultiblockChemicalRecipes); + // C13H14N2(HCl) + 2COCl2 = C15H10N2O2(5HCl) - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { MaterialsKevlar.DiaminodiphenylmethanMixture.getFluid(1000L), - new FluidStack(FluidRegistry.getFluid("phosgene"), 2000) }, - new FluidStack[] { MaterialsKevlar.DiphenylmethaneDiisocyanateMixture.getFluid(1000L) }, - null, - 600, - 1920); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1L) }, - new FluidStack[] { MaterialsKevlar.Butyraldehyde.getFluid(9000), Materials.Hydrogen.getGas(18000) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("butanol"), 9000) }, - null, - 80, - 480); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("butanol"), 2000), + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + MaterialsKevlar.DiaminodiphenylmethanMixture.getFluid(1000), + new FluidStack(FluidRegistry.getFluid("phosgene"), 2000)) + .fluidOutputs(MaterialsKevlar.DiphenylmethaneDiisocyanateMixture.getFluid(1000)) + .duration(30 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1)) + .noItemOutputs() + .fluidInputs(MaterialsKevlar.Butyraldehyde.getFluid(9000), Materials.Hydrogen.getGas(18000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("butanol"), 9000)).duration(4 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("butanol"), 2000), new FluidStack(FluidRegistry.getFluid("propionicacid"), 1000), - Materials.IronIIIChloride.getFluid(100) }, - null, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 1L) }, - 600, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 9L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("butanol"), 18000), + Materials.IronIIIChloride.getFluid(100)) + .noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 9)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("butanol"), 18000), new FluidStack(FluidRegistry.getFluid("propionicacid"), 9000), - Materials.IronIIIChloride.getFluid(900) }, - null, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.KevlarCatalyst, 9L) }, - 4500, - 1920); + Materials.IronIIIChloride.getFluid(900)) + .noFluidOutputs().duration(3 * MINUTES + 45 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(sMultiblockChemicalRecipes); + // C2H4 + CO + H2O =C4NiO= C3H6O2 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { Materials.Ethylene.getGas(1000), Materials.CarbonMonoxide.getGas(1000), - MaterialsKevlar.NickelTetracarbonyl.getFluid(100), Materials.Water.getFluid(1000) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("propionicacid"), 1000) }, - null, - 200, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.Ethylene.getGas(9000), Materials.CarbonMonoxide.getGas(9000), - MaterialsKevlar.NickelTetracarbonyl.getFluid(900), Materials.Water.getFluid(9000) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("propionicacid"), 9000) }, - null, - 1500, - 1920); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + Materials.Ethylene.getGas(1000), + Materials.CarbonMonoxide.getGas(1000), + MaterialsKevlar.NickelTetracarbonyl.getFluid(100), + Materials.Water.getFluid(1000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("propionicacid"), 1000)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs( + Materials.Ethylene.getGas(9000), + Materials.CarbonMonoxide.getGas(9000), + MaterialsKevlar.NickelTetracarbonyl.getFluid(900), + Materials.Water.getFluid(9000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("propionicacid"), 9000)) + .duration(1 * MINUTES + 15 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + // C6H7N + HNO3 =H2SO4,C4H6O3= C6H6N2O2 + H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("aniline"), 1000), + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("aniline"), 1000), new FluidStack(FluidRegistry.getFluid("molten.aceticanhydride"), 100), - Materials.NitrationMixture.getFluid(2000) }, - new FluidStack[] { MaterialsKevlar.IVNitroaniline.getFluid(1000L), - Materials.DilutedSulfuricAcid.getFluid(1000) }, - null, - 300, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("aniline"), 9000), + Materials.NitrationMixture.getFluid(2000)) + .fluidOutputs( + MaterialsKevlar.IVNitroaniline.getFluid(1000), + Materials.DilutedSulfuricAcid.getFluid(1000)) + .duration(15 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("aniline"), 9000), new FluidStack(FluidRegistry.getFluid("molten.aceticanhydride"), 900), - Materials.NitrationMixture.getFluid(18000) }, - new FluidStack[] { MaterialsKevlar.IVNitroaniline.getFluid(9000L), - Materials.DilutedSulfuricAcid.getFluid(9000) }, - null, - 2000, - 1920); + Materials.NitrationMixture.getFluid(18000)) + .fluidOutputs( + MaterialsKevlar.IVNitroaniline.getFluid(9000), + Materials.DilutedSulfuricAcid.getFluid(9000)) + .duration(1 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + // C6H6N2O2 + 6H =Pd,NO2= C6H8N2 + 2H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1L) }, - new FluidStack[] { Materials.NitrogenDioxide.getGas(100), Materials.Hydrogen.getGas(6000), - MaterialsKevlar.IVNitroaniline.getFluid(1000L) }, - new FluidStack[] { Materials.Water.getFluid(2000L) }, - new ItemStack[] { - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.ParaPhenylenediamine, 16L) }, - 400, - 500000); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.ParaPhenylenediamine, 16)) + .fluidInputs( + Materials.NitrogenDioxide.getGas(100), + Materials.Hydrogen.getGas(6000), + MaterialsKevlar.IVNitroaniline.getFluid(1000)) + .fluidOutputs(Materials.Water.getFluid(2000)).duration(20 * SECONDS).eut(500000) + .addTo(sMultiblockChemicalRecipes); + // C4H10O2 =Cu= C4H6O2 + 4H - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("1,4-butanediol"), 1000) }, - new FluidStack[] { MaterialsKevlar.GammaButyrolactone.getFluid(1000), - Materials.Hydrogen.getGas(4000) }, - null, - 100, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 9L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("1,4-butanediol"), 9000) }, - new FluidStack[] { MaterialsKevlar.GammaButyrolactone.getFluid(9000), - Materials.Hydrogen.getGas(36000) }, - null, - 700, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1)) + .noItemOutputs().fluidInputs(new FluidStack(FluidRegistry.getFluid("1,4-butanediol"), 1000)) + .fluidOutputs(MaterialsKevlar.GammaButyrolactone.getFluid(1000), Materials.Hydrogen.getGas(4000)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 9)) + .noItemOutputs().fluidInputs(new FluidStack(FluidRegistry.getFluid("1,4-butanediol"), 9000)) + .fluidOutputs(MaterialsKevlar.GammaButyrolactone.getFluid(9000), Materials.Hydrogen.getGas(36000)) + .duration(35 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); // 2CH2O + C2H2 =SiO2,CuO,Bi2O3= C4H6O2 - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L) }, - new FluidStack[] { MaterialsKevlar.Acetylene.getGas(1000L), - new FluidStack(FluidRegistry.getFluid("formaldehyde"), 2000) }, - null, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 12L) }, - 400, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 9L) }, - new FluidStack[] { MaterialsKevlar.Acetylene.getGas(9000L), - new FluidStack(FluidRegistry.getFluid("formaldehyde"), 18000) }, - null, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 64L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 44L) }, - 3000, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 12)) + .fluidInputs( + MaterialsKevlar.Acetylene.getGas(1000), + new FluidStack(FluidRegistry.getFluid("formaldehyde"), 2000)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CupricOxide, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.BismuthIIIOxide, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 9)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 64), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 44)) + .fluidInputs( + MaterialsKevlar.Acetylene.getGas(9000), + new FluidStack(FluidRegistry.getFluid("formaldehyde"), 18000)) + .noFluidOutputs().duration(2 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(sMultiblockChemicalRecipes); + // C4H6O2 + 4H =NiAl= C4H10O2 - GT_Values.RA - .addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 12L), - GT_OreDictUnificator - .get(OrePrefixes.dust, MaterialsKevlar.RaneyNickelActivated, 1L) }, - new FluidStack[] { Materials.Hydrogen.getGas(4000L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("1,4-butanediol"), 1000) }, - null, - 300, - 500000); - - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - getModItem(MOD_ID_GTPP, "itemDustCalciumChloride", 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.ParaPhenylenediamine, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 9L) }, - new FluidStack[] { MaterialsKevlar.NMethylIIPyrrolidone.getFluid(1000) }, - new FluidStack[] { MaterialsKevlar.LiquidCrystalKevlar.getFluid(9000L), - Materials.DilutedHydrochloricAcid.getFluid(2000L) }, - null, - 600, - 500000); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), - getModItem(MOD_ID_GTPP, "itemDustCalciumChloride", 7L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.ParaPhenylenediamine, 63L), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 63L) }, - new FluidStack[] { MaterialsKevlar.NMethylIIPyrrolidone.getFluid(7000) }, - new FluidStack[] { MaterialsKevlar.LiquidCrystalKevlar.getFluid(63000L), - Materials.DilutedHydrochloricAcid.getFluid(14000L) }, - null, - 3500, - 500000); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.IIButinIIVdiol, 12), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.RaneyNickelActivated, 1)) + .noItemOutputs().fluidInputs(Materials.Hydrogen.getGas(4000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("1,4-butanediol"), 1000)).duration(15 * SECONDS) + .eut(500000).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + getModItem(GTPlusPlus.modID, "itemDustCalciumChloride", 1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.ParaPhenylenediamine, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 9)) + .noItemOutputs().fluidInputs(MaterialsKevlar.NMethylIIPyrrolidone.getFluid(1000)) + .fluidOutputs( + MaterialsKevlar.LiquidCrystalKevlar.getFluid(9000), + Materials.DilutedHydrochloricAcid.getFluid(2000)) + .duration(30 * SECONDS).eut(500000).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + getModItem(GTPlusPlus.modID, "itemDustCalciumChloride", 7), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.ParaPhenylenediamine, 63), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.TerephthaloylChloride, 63)) + .noItemOutputs().fluidInputs(MaterialsKevlar.NMethylIIPyrrolidone.getFluid(7000)) + .fluidOutputs( + MaterialsKevlar.LiquidCrystalKevlar.getFluid(63000), + Materials.DilutedHydrochloricAcid.getFluid(14000)) + .duration(2 * MINUTES + 55 * SECONDS).eut(500000).addTo(sMultiblockChemicalRecipes); // Na2B4O7(H2O)10 + 2HCl = 2NaCl + 4H3BO3 + 5H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Borax, 23L) }, - new FluidStack[] { Materials.HydrochloricAcid.getFluid(2000L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("boricacid"), 4000), - Materials.Water.getFluid(5000L) }, - new ItemStack[] { Materials.Salt.getDust(4) }, - 800, - 480); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Borax, 23)) + .itemOutputs(Materials.Salt.getDust(4)).fluidInputs(Materials.HydrochloricAcid.getFluid(2000)) + .fluidOutputs( + new FluidStack(FluidRegistry.getFluid("boricacid"), 4000), + Materials.Water.getFluid(5000)) + .duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMultiblockChemicalRecipes); + // H3BO3 + 3CH4O =H2SO4= C3H9BO3 + 3H2O - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, - new FluidStack[] { Materials.Methanol.getFluid(3000L), + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs( + Materials.Methanol.getFluid(3000), new FluidStack(FluidRegistry.getFluid("boricacid"), 1000), - Materials.SulfuricAcid.getFluid(6000L) }, - new FluidStack[] { Materials.DilutedSulfuricAcid.getFluid(6000L), - MaterialsKevlar.TrimethylBorate.getFluid(1000) }, - null, - 600, - 960); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.Methanol.getFluid(27000L), + Materials.SulfuricAcid.getFluid(6000)) + .fluidOutputs( + Materials.DilutedSulfuricAcid.getFluid(6000), + MaterialsKevlar.TrimethylBorate.getFluid(1000)) + .duration(30 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs( + Materials.Methanol.getFluid(27000), new FluidStack(FluidRegistry.getFluid("boricacid"), 9000), - Materials.SulfuricAcid.getFluid(54000L) }, - new FluidStack[] { Materials.DilutedSulfuricAcid.getFluid(54000L), - MaterialsKevlar.TrimethylBorate.getFluid(9000) }, - null, - 4500, - 960); + Materials.SulfuricAcid.getFluid(54000)) + .fluidOutputs( + Materials.DilutedSulfuricAcid.getFluid(54000), + MaterialsKevlar.TrimethylBorate.getFluid(9000)) + .duration(3 * MINUTES + 45 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + // RhCl3 + 3C18H15P + 3NaBH4 + CO = RhC55H46P3O + 3NaCl + 3B + 11H - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.RhodiumChloride, 4L), + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.RhodiumChloride, 4), MaterialsKevlar.Triphenylphosphene.getDust(64), MaterialsKevlar.Triphenylphosphene.getDust(38), - MaterialsKevlar.SodiumBorohydride.getDust(18) }, - new FluidStack[] { Materials.CarbonMonoxide.getGas(1000L) }, - new FluidStack[] { Materials.Hydrogen.getGas(11000L) }, - new ItemStack[] { MaterialsKevlar.OrganorhodiumCatalyst.getDust(64), - MaterialsKevlar.OrganorhodiumCatalyst.getDust(42), Materials.Salt.getDust(6), - Materials.Boron.getDust(3) }, - 800, - 500000); + MaterialsKevlar.SodiumBorohydride.getDust(18)) + .itemOutputs( + MaterialsKevlar.OrganorhodiumCatalyst.getDust(64), + MaterialsKevlar.OrganorhodiumCatalyst.getDust(42), + Materials.Salt.getDust(6), + Materials.Boron.getDust(3)) + .fluidInputs(Materials.CarbonMonoxide.getGas(1000)).fluidOutputs(Materials.Hydrogen.getGas(11000)) + .duration(40 * SECONDS).eut(500000).addTo(sMultiblockChemicalRecipes); + // 2NaOH + N2H4 =Mn= 2N + 2H2O + 2NaH - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9), Materials.SodiumHydroxide.getDust(6), - Materials.Manganese.getDustTiny(1) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("hydrazine"), 1000) }, - new FluidStack[] { Materials.Nitrogen.getGas(2000L), Materials.Water.getFluid(2000L) }, - new ItemStack[] { MaterialsKevlar.SodiumHydride.getDust(4) }, - 10, - 1920); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(18), Materials.SodiumHydroxide.getDust(54), - Materials.Manganese.getDust(1) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("hydrazine"), 9000) }, - new FluidStack[] { Materials.Nitrogen.getGas(18000L), Materials.Water.getFluid(18000L) }, - new ItemStack[] { MaterialsKevlar.SodiumHydride.getDust(36) }, - 70, - 1920); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(9), + Materials.SodiumHydroxide.getDust(6), + Materials.Manganese.getDustTiny(1)) + .itemOutputs(MaterialsKevlar.SodiumHydride.getDust(4)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("hydrazine"), 1000)) + .fluidOutputs(Materials.Nitrogen.getGas(2000), Materials.Water.getFluid(2000)).duration(10 * TICKS) + .eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(18), + Materials.SodiumHydroxide.getDust(54), + Materials.Manganese.getDust(1)) + .itemOutputs(MaterialsKevlar.SodiumHydride.getDust(36)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("hydrazine"), 9000)) + .fluidOutputs(Materials.Nitrogen.getGas(18000), Materials.Water.getFluid(18000)) + .duration(3 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV).addTo(sMultiblockChemicalRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/CircuitAssemblerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/CircuitAssemblerRecipes.java index a65945145b..826d71eb2c 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/CircuitAssemblerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/CircuitAssemblerRecipes.java @@ -1,297 +1,279 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isRailcraftLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.loaders.postload.GT_MachineRecipeLoader.solderingMats; import net.minecraft.item.ItemStack; import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class CircuitAssemblerRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Copper, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 0), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.AnnealedCopper, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 0), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Tin, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 1), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Bronze, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 2), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Iron, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 3), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.WroughtIron, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 3), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Gold, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 4), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Diamond, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 5), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - getModItem(MOD_ID_DC, "item.LongObsidianRod", 2L, 0) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 6), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Blaze, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 7), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Rubber, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 8), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Emerald, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 9), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Apatite, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 10), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Lapis, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 11), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.EnderEye, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 12), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderEye, 1L), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2L), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2L), - GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Uranium, 2L) }, - Materials.Glass.getMolten(576L), - getModItem(GT_MachineRecipeLoader.aTextForestry, "thermionicTubes", 4L, 13), - 200, - (int) TierEU.RECIPE_LV); - - if (!isRailcraftLoaded) return; - for (Materials tMat : Materials.values()) { - if (tMat.isProperSolderingFluid()) { - int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 - : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; - - // Railcraft Circuits - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Coated_Basic.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 1), - ItemList.Cover_Controller.get(1L) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 4L, 0), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Coated_Basic.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 1), - ItemList.Sensor_LV.get(1L) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 4L, 1), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Coated_Basic.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 1), - getModItem(MOD_ID_RC, "part.signal.lamp", 1L, 0) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 4L, 2), - 300, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Phenolic_Good.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1), - ItemList.Cover_Controller.get(1L) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 8L, 0), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Phenolic_Good.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1), - ItemList.Sensor_LV.get(1L) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 8L, 1), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Phenolic_Good.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1), - getModItem(MOD_ID_RC, "part.signal.lamp", 1L, 0) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 8L, 2), - 400, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Epoxy_Advanced.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), - ItemList.Cover_Controller.get(1L) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 16L, 0), - 500, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Epoxy_Advanced.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), - ItemList.Sensor_LV.get(1L) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 16L, 1), - 500, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Epoxy_Advanced.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), - getModItem(MOD_ID_RC, "part.signal.lamp", 1L, 0) }, - tMat.getMolten(144L * tMultiplier / 2L), - getModItem(MOD_ID_RC, "part.circuit", 16L, 2), - 500, - (int) TierEU.RECIPE_LV); - } + registerRailcraftRecipes(); + registerForestryRecipes(); + + } + + public void registerRailcraftRecipes() { + if (!Railcraft.isModLoaded()) { + return; + } + + for (Materials tMat : solderingMats) { + int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 + : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; + + // Railcraft Circuits + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Coated_Basic.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 1), + ItemList.Cover_Controller.get(1)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 4L, 0)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(15 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Coated_Basic.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 1), + ItemList.Sensor_LV.get(1)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 4L, 1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(15 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Coated_Basic.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 1), + getModItem(Railcraft.modID, "part.signal.lamp", 1L, 0)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 4L, 2)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(15 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Phenolic_Good.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1), + ItemList.Cover_Controller.get(1)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 8L, 0)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(20 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Phenolic_Good.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1), + ItemList.Sensor_LV.get(1)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 8L, 1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(20 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Phenolic_Good.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1), + getModItem(Railcraft.modID, "part.signal.lamp", 1L, 0)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 8L, 2)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(20 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Epoxy_Advanced.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), + ItemList.Cover_Controller.get(1)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 16L, 0)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(25 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Epoxy_Advanced.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), + ItemList.Sensor_LV.get(1)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 16L, 1)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(25 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Epoxy_Advanced.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1), + getModItem(Railcraft.modID, "part.signal.lamp", 1L, 0)) + .itemOutputs(getModItem(Railcraft.modID, "part.circuit", 16L, 2)) + .fluidInputs(tMat.getMolten(144L * tMultiplier / 2)).noFluidOutputs().duration(25 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Coated_Basic.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Primitive, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Iron, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iron, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Iron, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 0)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Coated_Basic.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Bronze, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Bronze, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Bronze, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 1)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Phenolic_Good.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Steel, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 2)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Phenolic_Good.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Electrum, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 3)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + } + } + + public void registerForestryRecipes() { + if (!Forestry.isModLoaded()) { + return; + } + + // alternative version of the copper electron tube + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.AnnealedCopper, 2)) + .itemOutputs(getModItem(Forestry.modID, "thermionicTubes", 4L, 0)) + .fluidInputs(Materials.Glass.getMolten(576)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + // alternative version of the iron electron tube + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.WroughtIron, 2)) + .itemOutputs(getModItem(Forestry.modID, "thermionicTubes", 4L, 3)) + .fluidInputs(Materials.Glass.getMolten(576)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + ItemStack[] rodMaterials = new ItemStack[] { + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Copper, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Tin, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Bronze, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Iron, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Gold, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Diamond, 2L), + getModItem(NewHorizonsCoreMod.modID, "item.LongObsidianRod", 2L, 0), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Blaze, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Rubber, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Emerald, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Apatite, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Lapis, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.EnderEye, 2L), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Uranium, 2L), }; + + for (int metaid = 0; metaid < rodMaterials.length; metaid++) { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.RedAlloy, 1), + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Gold, 2), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2), + rodMaterials[metaid]) + .itemOutputs(getModItem(Forestry.modID, "thermionicTubes", 4L, metaid)) + .fluidInputs(Materials.Glass.getMolten(576)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); } - for (Materials tMat : Materials.values()) { - if (tMat.isProperSolderingFluid()) { - int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 - : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Coated_Basic.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Primitive, 2), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Iron, 2), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iron, 4), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Iron, 1), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(1152L * tMultiplier / 2L), - getModItem("Forestry", "chipsets", 1L, 0), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Coated_Basic.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 2), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Bronze, 2), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Bronze, 4), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Bronze, 1), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(1152L * tMultiplier / 2L), - getModItem("Forestry", "chipsets", 1L, 1), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Phenolic_Good.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 2), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Steel, 2), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 1), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(1152L * tMultiplier / 2L), - getModItem("Forestry", "chipsets", 1L, 2), - 200, - (int) TierEU.RECIPE_LV); - GT_Values.RA.addCircuitAssemblerRecipe( - new ItemStack[] { ItemList.Circuit_Board_Phenolic_Good.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 2), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 2), - GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Electrum, 4), - GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 1), - GT_Utility.getIntegratedCircuit(1) }, - tMat.getMolten(1152L * tMultiplier / 2L), - getModItem("Forestry", "chipsets", 1L, 3), - 200, - (int) TierEU.RECIPE_LV); - } + for (Materials tMat : solderingMats) { + + int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 + : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Coated_Basic.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Primitive, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Iron, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Iron, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Iron, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 0)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Coated_Basic.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Basic, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Bronze, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Bronze, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Bronze, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 1)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Phenolic_Good.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Steel, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 2)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Circuit_Board_Phenolic_Good.get(1), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 2), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 2), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Electrum, 4), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "chipsets", 1L, 3)) + .fluidInputs(tMat.getMolten(1152L * tMultiplier / 2)).noFluidOutputs().duration(10 * SECONDS) + .eut((int) TierEU.RECIPE_LV).addTo(sCircuitAssemblerRecipes); + } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/CompressorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/CompressorRecipes.java index c0fd11017d..b0416a0ba1 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/CompressorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/CompressorRecipes.java @@ -1,9 +1,9 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_GTPP; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isEBXLLoaded; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isRailcraftLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; import mods.railcraft.common.items.RailcraftToolItems; @@ -12,111 +12,91 @@ import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import cpw.mods.fml.common.registry.GameRegistry; 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_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class CompressorRecipes implements Runnable { @Override public void run() { - GT_ModHandler.addCompressionRecipe( - getModItem(MOD_ID_GTPP, "blockRainforestOakSapling", 8, 0), - ItemList.IC2_Plantball.get(1)); - - GT_Values.RA.addCompressorRecipe( - ItemList.IC2_Compressed_Coal_Chunk.get(1L), - ItemList.IC2_Industrial_Diamond.get(1L), - 300, - 2); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), - GT_ModHandler.getIC2Item("Uran238", 1L)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium235, 1L), - GT_ModHandler.getIC2Item("Uran235", 1L)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 1L), - GT_ModHandler.getIC2Item("Plutonium", 1L)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Uranium235, 1L), - GT_ModHandler.getIC2Item("smallUran235", 1L)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plutonium, 1L), - GT_ModHandler.getIC2Item("smallPlutonium", 1L)); - GT_ModHandler.addCompressionRecipe(new ItemStack(Blocks.ice, 2, 32767), new ItemStack(Blocks.packed_ice, 1, 0)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), - new ItemStack(Blocks.ice, 1, 0)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 4L), - getModItem(GT_MachineRecipeLoader.aTextAE, "tile.BlockQuartz", 1L)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 8L, 10), - getModItem(GT_MachineRecipeLoader.aTextAE, "tile.BlockQuartz", 1L)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 8L, 11), - new ItemStack(Blocks.quartz_block, 1, 0)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 8L, 12), - getModItem(GT_MachineRecipeLoader.aTextAE, "tile.BlockFluix", 1L)); - GT_ModHandler.addCompressionRecipe(new ItemStack(Items.quartz, 4, 0), new ItemStack(Blocks.quartz_block, 1, 0)); - // GT_ModHandler.addCompressionRecipe(new ItemStack(Items.wheat, 9, 0), new ItemStack(Blocks.hay_block, 1, 0)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 4L), - new ItemStack(Blocks.glowstone, 1)); - - GT_Values.RA.addCompressorRecipe(Materials.Fireclay.getDust(1), ItemList.CompressedFireclay.get(1), 80, 4); - GameRegistry.addSmelting(ItemList.CompressedFireclay.get(1), ItemList.Firebrick.get(1), 0); - - if (isEBXLLoaded) { - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 0), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 1), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 2), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 3), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 4), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 5), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 6), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_1", 4, 7), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_2", 4, 0), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_2", 4, 1), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_2", 4, 2), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_2", 4, 3), - ItemList.IC2_Plantball.get(1)); - GT_ModHandler.addCompressionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "saplings_2", 4, 4), - ItemList.IC2_Plantball.get(1)); - } - if (isRailcraftLoaded) { - GT_Values.RA.addCompressorRecipe(RailcraftToolItems.getCoalCoke(9), EnumCube.COKE_BLOCK.getItem(), 300, 2); + GT_Values.RA.stdBuilder().itemInputs(getModItem(GTPlusPlus.modID, "blockRainforestOakSapling", 8, 0)) + .itemOutputs(ItemList.IC2_Plantball.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Compressed_Coal_Chunk.get(1)) + .itemOutputs(ItemList.IC2_Industrial_Diamond.get(1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("Uran238", 1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium235, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("Uran235", 1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plutonium, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("Plutonium", 1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Uranium235, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("smallUran235", 1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plutonium, 1)) + .itemOutputs(GT_ModHandler.getIC2Item("smallPlutonium", 1)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.ice, 2, 32767)) + .itemOutputs(new ItemStack(Blocks.packed_ice, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1)) + .itemOutputs(new ItemStack(Blocks.ice, 1, 0)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 4)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "tile.BlockQuartz", 1)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 8L, 10)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "tile.BlockQuartz", 1)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 8L, 11)) + .itemOutputs(new ItemStack(Blocks.quartz_block, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 8L, 12)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "tile.BlockFluix", 1)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.quartz, 4, 0)) + .itemOutputs(new ItemStack(Blocks.quartz_block, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + + /* + * GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(Items.wheat, 9, 0) ) .itemOutputs( new + * ItemStack(Blocks.hay_block, 1, 0) ) .noFluidInputs() .noFluidOutputs() .duration(15 * SECONDS) .eut(2) + * .addTo(sCompressorRecipes); + */ + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 4)) + .itemOutputs(new ItemStack(Blocks.glowstone, 1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(2).addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Fireclay.getDust(1)) + .itemOutputs(ItemList.CompressedFireclay.get(1)).noFluidInputs().noFluidOutputs().duration(4 * SECONDS) + .eut(4).addTo(sCompressorRecipes); + + if (Railcraft.isModLoaded()) { + GT_Values.RA.stdBuilder().itemInputs(RailcraftToolItems.getCoalCoke(9)) + .itemOutputs(EnumCube.COKE_BLOCK.getItem()).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(2).addTo(sCompressorRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java index b4913e52c5..7d9555b1eb 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java @@ -1,6 +1,13 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtractorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; + import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; import gregtech.GT_Mod; import gregtech.api.enums.GT_Values; @@ -112,59 +119,7 @@ public class CropProcessingRecipes implements Runnable { } public void addProcess(ItemStack tCrop, Materials aMaterial, int chance, boolean aMainOutput) { - if (tCrop == null || aMaterial == null || GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1) == null) - return; - if (GT_Mod.gregtechproxy.mNerfedCrops) { - GT_Values.RA.addChemicalRecipe( - GT_Utility.copyAmount(9, tCrop), - 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, - 24); - GT_Values.RA.addAutoclaveRecipe( - GT_Utility.copyAmount(16, tCrop), - Materials.UUMatter.getFluid(Math.max(1, ((aMaterial.getMass() + 9) / 10))), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterial, 1), - 10000, - (int) (aMaterial.getMass() * 128), - 384); - } else { - if (aMainOutput) GT_Values.RA.addExtractorRecipe( - GT_Utility.copyAmount(9, tCrop), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1), - 300, - 18); - } - } - - public void addProcess(ItemStack tCrop, Materials aMaterial, int chance) { - if (tCrop == null || aMaterial == null || GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1) == null) - return; - if (GT_Mod.gregtechproxy.mNerfedCrops) { - GT_Values.RA.addChemicalRecipe( - GT_Utility.copyAmount(9, tCrop), - 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, - 24); - GT_Values.RA.addAutoclaveRecipe( - GT_Utility.copyAmount(16, tCrop), - 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.addExtractorRecipe( - GT_Utility.copyAmount(16, tCrop), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1), - 300, - 18); - } + addProcess(tCrop, aMaterial, aMaterial, chance, aMainOutput); } public void addProcess(ItemStack tCrop, Materials aMaterial, Materials aMaterialOut, int chance, @@ -172,55 +127,39 @@ public class CropProcessingRecipes implements Runnable { if (tCrop == null || aMaterial == null || GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1) == null) return; if (GT_Mod.gregtechproxy.mNerfedCrops) { - GT_Values.RA.addChemicalRecipe( - GT_Utility.copyAmount(9, tCrop), - GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1), - Materials.Water.getFluid(1000), - aMaterialOut.mOreByProducts.isEmpty() ? null : aMaterialOut.mOreByProducts.get(0).getMolten(144), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterialOut, 4), - 96, - 24); - GT_Values.RA.addAutoclaveRecipe( - GT_Utility.copyAmount(16, tCrop), - Materials.UUMatter.getFluid(Math.max(1, ((aMaterial.getMass() + 9) / 10))), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterial, 1), - 10000, - (int) (aMaterial.getMass() * 128), - 384); + FluidStack fluidOutputChemReactor = aMaterialOut.mOreByProducts.isEmpty() ? null + : aMaterialOut.mOreByProducts.get(0).getMolten(144); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(9, tCrop), + GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterial, 4)) + .fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(fluidOutputChemReactor) + .duration(4 * SECONDS + 16 * TICKS).eut(24).addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(16, tCrop), + GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterial, 1)) + .fluidInputs(Materials.UUMatter.getFluid(Math.max(1, ((aMaterial.getMass() + 9) / 10)))) + .noFluidOutputs().duration((int) (aMaterial.getMass() * 128)).eut(384).addTo(sAutoclaveRecipes); + } else { - if (aMainOutput) GT_Values.RA.addExtractorRecipe( - GT_Utility.copyAmount(16, tCrop), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, 1), - 300, - 18); + if (aMainOutput) { + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.copyAmount(9, tCrop)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sExtractorRecipes); + } } } + public void addProcess(ItemStack tCrop, Materials aMaterial, int chance) { + addProcess(tCrop, aMaterial, chance, true); + } + public void addProcess(ItemStack tCrop, Materials aMaterial, Materials aMaterialOut, int chance) { - if (tCrop == null || aMaterial == null || GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1) == null) - return; - if (GT_Mod.gregtechproxy.mNerfedCrops) { - GT_Values.RA.addChemicalRecipe( - GT_Utility.copyAmount(9, tCrop), - GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1), - Materials.Water.getFluid(1000), - aMaterialOut.mOreByProducts.isEmpty() ? null : aMaterialOut.mOreByProducts.get(0).getMolten(144), - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterialOut, 4), - 96, - 24); - GT_Values.RA.addAutoclaveRecipe( - GT_Utility.copyAmount(16, tCrop), - 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.addExtractorRecipe( - GT_Utility.copyAmount(16, tCrop), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, 1), - 300, - 18); - } + addProcess(tCrop, aMaterial, aMaterialOut, chance, true); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/CuttingRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/CuttingRecipes.java index 8371f13158..b8c66d638e 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/CuttingRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/CuttingRecipes.java @@ -1,216 +1,270 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isForestryloaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; +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 net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; -import codechicken.nei.api.API; import gregtech.api.enums.*; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class CuttingRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addCutterRecipe( - new ItemStack[] { ItemList.Circuit_Silicon_Ingot.get(1) }, - new ItemStack[] { ItemList.Circuit_Silicon_Wafer.get(16), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 4L) }, - 400, - (int) TierEU.RECIPE_LV, - false); + // silicon wafer recipes + { + recipeWithClassicFluids( + new ItemStack[] { ItemList.Circuit_Silicon_Ingot.get(1) }, + new ItemStack[] { ItemList.Circuit_Silicon_Wafer.get(16), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 4) }, + 20 * SECONDS, + TierEU.RECIPE_LV, + false); - GT_Values.RA.addCutterRecipe( - new ItemStack[] { ItemList.Circuit_Silicon_Ingot2.get(1) }, - new ItemStack[] { ItemList.Circuit_Silicon_Wafer2.get(32), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 8L) }, - 800, - (int) TierEU.RECIPE_MV, - true); + recipeWithClassicFluids( + new ItemStack[] { ItemList.Circuit_Silicon_Ingot2.get(1) }, + new ItemStack[] { ItemList.Circuit_Silicon_Wafer2.get(32), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 8) }, + 40 * SECONDS, + TierEU.RECIPE_MV, + true); - GT_Values.RA.addCutterRecipe( - new ItemStack[] { ItemList.Circuit_Silicon_Ingot3.get(1) }, - new ItemStack[] { ItemList.Circuit_Silicon_Wafer3.get(64), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 16L) }, - 1600, - (int) TierEU.RECIPE_HV, - true); + recipeWithClassicFluids( + new ItemStack[] { ItemList.Circuit_Silicon_Ingot3.get(1) }, + new ItemStack[] { ItemList.Circuit_Silicon_Wafer3.get(64), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 16) }, + 1 * MINUTES + 20 * SECONDS, + TierEU.RECIPE_HV, + true); - GT_Values.RA.addCutterRecipe( - new ItemStack[] { ItemList.Circuit_Silicon_Ingot4.get(1) }, - new ItemStack[] { ItemList.Circuit_Silicon_Wafer4.get(64), ItemList.Circuit_Silicon_Wafer4.get(32), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 32L) }, - 2400, - (int) TierEU.RECIPE_EV, - true); + recipeWithClassicFluids( + new ItemStack[] { ItemList.Circuit_Silicon_Ingot4.get(1) }, + new ItemStack[] { ItemList.Circuit_Silicon_Wafer4.get(64), ItemList.Circuit_Silicon_Wafer4.get(32), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 32) }, + 2 * MINUTES, + TierEU.RECIPE_EV, + true); + + recipeWithClassicFluids( + new ItemStack[] { ItemList.Circuit_Silicon_Ingot5.get(1) }, + new ItemStack[] { ItemList.Circuit_Silicon_Wafer5.get(64), ItemList.Circuit_Silicon_Wafer5.get(64), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 64) }, + 2 * MINUTES + 40 * SECONDS, + TierEU.RECIPE_IV, + true); - GT_Values.RA.addCutterRecipe( - new ItemStack[] { ItemList.Circuit_Silicon_Ingot5.get(1) }, - new ItemStack[] { ItemList.Circuit_Silicon_Wafer5.get(64), ItemList.Circuit_Silicon_Wafer5.get(64), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconSG, 64L) }, - 3200, - (int) TierEU.RECIPE_IV, + } + + // doesnt seem to be in game? + recipeWithClassicFluids( + new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.block, Materials.Graphite, 1) }, + new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Graphite, 9) }, + 25 * SECONDS, + 48, true); - GT_Values.RA.addCutterRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Graphite, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Graphite, 9L), - GT_Values.NI, - 500, - 48); - - GT_Values.RA.addCutterRecipe( - getModItem("BuildCraft|Transport", "item.buildcraftPipe.pipestructurecobblestone", 1L, 0), - getModItem("BuildCraft|Transport", "pipePlug", 8L, 0), - GT_Values.NI, - 32, - 16); - for (int i = 0; i < 16; i++) { - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.stained_glass, 3, i), - new ItemStack(Blocks.stained_glass_pane, 8, i), - GT_Values.NI, - 50, - 8); + // glass pane recipes + { + // stained-glass -> glass pane recipes + for (int i = 0; i < 16; i++) { + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.stained_glass, 3, i) }, + new ItemStack[] { new ItemStack(Blocks.stained_glass, 3, i), + new ItemStack(Blocks.stained_glass_pane, 8, i) }, + 2 * SECONDS + 10 * TICKS, + 8, + false); + + } + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.glass, 3, 0) }, + new ItemStack[] { new ItemStack(Blocks.glass, 3, 0), new ItemStack(Blocks.glass_pane, 8, 0) }, + 2 * SECONDS + 10 * TICKS, + 8, + false); + + if (TinkerConstruct.isModLoaded()) { + recipeWithClassicFluids( + new ItemStack[] { getModItem(TinkerConstruct.modID, "GlassBlock", 3L, 0) }, + new ItemStack[] { getModItem(TinkerConstruct.modID, "GlassBlock", 3L, 0), + getModItem(TinkerConstruct.modID, "GlassPane", 8L, 0) }, + 2 * SECONDS + 10 * TICKS, + 8, + false); + } } - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.glass, 3, 0), - new ItemStack(Blocks.glass_pane, 8, 0), - GT_Values.NI, - 50, - 8); - GT_Values.RA.addCutterRecipe( - getModItem("TConstruct", "GlassBlock", 3L, 0), - getModItem("TConstruct", "GlassPane", 8L, 0), - GT_Values.NI, - 50, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.stone, 1, 0), - new ItemStack(Blocks.stone_slab, 2, 0), - GT_Values.NI, - 25, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.sandstone, 1, 0), - new ItemStack(Blocks.stone_slab, 2, 1), - GT_Values.NI, - 25, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.cobblestone, 1, 0), - new ItemStack(Blocks.stone_slab, 2, 3), - GT_Values.NI, - 25, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.brick_block, 1, 0), - new ItemStack(Blocks.stone_slab, 2, 4), - GT_Values.NI, - 25, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.stonebrick, 1, 0), - new ItemStack(Blocks.stone_slab, 2, 5), - GT_Values.NI, - 25, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.nether_brick, 1, 0), - new ItemStack(Blocks.stone_slab, 2, 6), - GT_Values.NI, - 25, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.quartz_block, 1, 32767), - new ItemStack(Blocks.stone_slab, 2, 7), - GT_Values.NI, - 25, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.glowstone, 1, 0), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glowstone, 4L), - GT_Values.NI, - 100, - 16); - - for (byte i = 0; i < 16; i = (byte) (i + 1)) { - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.wool, 1, i), - new ItemStack(Blocks.carpet, 2, i), - GT_Values.NI, - 50, - 8); + + // stone slab recipes + { + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.stone, 1, 0) }, + new ItemStack[] { new ItemStack(Blocks.stone, 1, 0), new ItemStack(Blocks.stone_slab, 2, 0) }, + 1 * SECONDS + 5 * TICKS, + 8, + false); + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.sandstone, 1, 0) }, + new ItemStack[] { new ItemStack(Blocks.sandstone, 1, 0), new ItemStack(Blocks.stone_slab, 2, 1) }, + 1 * SECONDS + 5 * TICKS, + 8, + false); + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.cobblestone, 1, 0) }, + new ItemStack[] { new ItemStack(Blocks.cobblestone, 1, 0), new ItemStack(Blocks.stone_slab, 2, 3) }, + 1 * SECONDS + 5 * TICKS, + 8, + false); + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.brick_block, 1, 0) }, + new ItemStack[] { new ItemStack(Blocks.brick_block, 1, 0), new ItemStack(Blocks.stone_slab, 2, 4) }, + 1 * SECONDS + 5 * TICKS, + 8, + false); + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.stonebrick, 1, 0) }, + new ItemStack[] { new ItemStack(Blocks.stonebrick, 1, 0), new ItemStack(Blocks.stone_slab, 2, 5) }, + 1 * SECONDS + 5 * TICKS, + 8, + false); + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.nether_brick, 1, 0) }, + new ItemStack[] { new ItemStack(Blocks.nether_brick, 1, 0), + new ItemStack(Blocks.stone_slab, 2, 6) }, + 1 * SECONDS + 5 * TICKS, + 8, + false); + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.quartz_block, 1, 32767) }, + new ItemStack[] { new ItemStack(Blocks.quartz_block, 1, 32767), + new ItemStack(Blocks.stone_slab, 2, 7) }, + 1 * SECONDS + 5 * TICKS, + 8, + false); } - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.wooden_slab, 1, 0), - ItemList.Plank_Oak.get(2L), - GT_Values.NI, - 50, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.wooden_slab, 1, 1), - ItemList.Plank_Spruce.get(2L), - GT_Values.NI, - 50, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.wooden_slab, 1, 2), - ItemList.Plank_Birch.get(2L), - GT_Values.NI, - 50, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.wooden_slab, 1, 3), - ItemList.Plank_Jungle.get(2L), - GT_Values.NI, - 50, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.wooden_slab, 1, 4), - ItemList.Plank_Acacia.get(2L), - GT_Values.NI, - 50, - 8); - GT_Values.RA.addCutterRecipe( - new ItemStack(Blocks.wooden_slab, 1, 5), - ItemList.Plank_DarkOak.get(2L), - GT_Values.NI, - 50, - 8); - - ItemStack[] coverIDs = { ItemList.Plank_Larch.get(2L), ItemList.Plank_Teak.get(2L), - ItemList.Plank_Acacia_Green.get(2L), ItemList.Plank_Lime.get(2L), ItemList.Plank_Chestnut.get(2L), - ItemList.Plank_Wenge.get(2L), ItemList.Plank_Baobab.get(2L), ItemList.Plank_Sequoia.get(2L), - ItemList.Plank_Kapok.get(2L), ItemList.Plank_Ebony.get(2L), ItemList.Plank_Mahagony.get(2L), - ItemList.Plank_Balsa.get(2L), ItemList.Plank_Willow.get(2L), ItemList.Plank_Walnut.get(2L), - ItemList.Plank_Greenheart.get(2L), ItemList.Plank_Cherry.get(2L), ItemList.Plank_Mahoe.get(2L), - ItemList.Plank_Poplar.get(2L), ItemList.Plank_Palm.get(2L), ItemList.Plank_Papaya.get(2L), - ItemList.Plank_Pine.get(2L), ItemList.Plank_Plum.get(2L), ItemList.Plank_Maple.get(2L), - ItemList.Plank_Citrus.get(2L) }; - int i = 0; - for (ItemStack cover : coverIDs) { - if (isForestryloaded) { - ItemStack slabWood = getModItem(GT_MachineRecipeLoader.aTextForestry, "slabs", 1, i); - ItemStack slabWoodFireproof = getModItem(GT_MachineRecipeLoader.aTextForestry, "slabsFireproof", 1, i); - GT_ModHandler.addCraftingRecipe( - cover, - GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, - new Object[] { "s ", " P", 'P', slabWood }); - GT_ModHandler.addCraftingRecipe( - cover, - GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, - new Object[] { "s ", " P", 'P', slabWoodFireproof }); - GT_Values.RA.addCutterRecipe(slabWood, cover, null, 40, 8); - GT_Values.RA.addCutterRecipe(slabWoodFireproof, cover, null, 40, 8); - } else if (GT_MachineRecipeLoader.isNEILoaded) { - API.hideItem(cover); + + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.glowstone, 1, 0) }, + new ItemStack[] { new ItemStack(Blocks.glowstone, 1, 0), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glowstone, 4) }, + 5 * SECONDS, + 16, + false); + + for (byte i = 0; i < 16; i++) { + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.wool, 1, i) }, + new ItemStack[] { new ItemStack(Blocks.wool, 1, i), new ItemStack(Blocks.carpet, 2, i) }, + 2 * SECONDS + 10 * TICKS, + 8, + false); + } + + // vanilla planks recipes + { + ItemStack[] plankArray = new ItemStack[] { ItemList.Plank_Oak.get(2L), ItemList.Plank_Spruce.get(2L), + ItemList.Plank_Birch.get(2L), ItemList.Plank_Jungle.get(2L), ItemList.Plank_Acacia.get(2L), + ItemList.Plank_DarkOak.get(2L) }; + for (int i = 0; i < 6; i++) { + recipeWithClassicFluids( + new ItemStack[] { new ItemStack(Blocks.wooden_slab, 1, i) }, + new ItemStack[] { new ItemStack(Blocks.wooden_slab, 1, i), plankArray[i] }, + 2 * SECONDS + 10 * TICKS, + 8, + false); + } + } + + if (Forestry.isModLoaded()) { + ItemStack[] coverIDs = { ItemList.Plank_Larch.get(2L), ItemList.Plank_Teak.get(2L), + ItemList.Plank_Acacia_Green.get(2L), ItemList.Plank_Lime.get(2L), ItemList.Plank_Chestnut.get(2L), + ItemList.Plank_Wenge.get(2L), ItemList.Plank_Baobab.get(2L), ItemList.Plank_Sequoia.get(2L), + ItemList.Plank_Kapok.get(2L), ItemList.Plank_Ebony.get(2L), ItemList.Plank_Mahagony.get(2L), + ItemList.Plank_Balsa.get(2L), ItemList.Plank_Willow.get(2L), ItemList.Plank_Walnut.get(2L), + ItemList.Plank_Greenheart.get(2L), ItemList.Plank_Cherry.get(2L), ItemList.Plank_Mahoe.get(2L), + ItemList.Plank_Poplar.get(2L), ItemList.Plank_Palm.get(2L), ItemList.Plank_Papaya.get(2L), + ItemList.Plank_Pine.get(2L), ItemList.Plank_Plum.get(2L), ItemList.Plank_Maple.get(2L), + ItemList.Plank_Citrus.get(2L) }; + for (int i = 0; i < coverIDs.length; i++) { + ItemStack slabWood = getModItem(Forestry.modID, "slabs", 1, i); + ItemStack slabWoodFireproof = getModItem(Forestry.modID, "slabsFireproof", 1, i); + + recipeWithClassicFluids( + new ItemStack[] { slabWood }, + new ItemStack[] { slabWood, coverIDs[i] }, + 2 * SECONDS, + 8, + false); + + recipeWithClassicFluids( + new ItemStack[] { slabWoodFireproof }, + new ItemStack[] { slabWoodFireproof, coverIDs[i] }, + 2 * SECONDS, + 8, + false); + } - i++; + } + + if (BuildCraftTransport.isModLoaded()) { + recipeWithClassicFluids( + new ItemStack[] { getModItem( + BuildCraftTransport.modID, + "item.buildcraftPipe.pipestructurecobblestone", + 1L, + 0) }, + new ItemStack[] { getModItem( + BuildCraftTransport.modID, + "item.buildcraftPipe.pipestructurecobblestone", + 1L, + 0), getModItem(BuildCraftTransport.modID, "pipePlug", 8L, 0) }, + 1 * SECONDS + 12 * TICKS, + 16, + false); + + } + + } + + public void recipeWithClassicFluids(ItemStack[] inputs, ItemStack[] outputs, int duration, long eut, + boolean cleanroomRequired) { + if (cleanroomRequired) { + GT_Values.RA.stdBuilder().itemInputs(inputs).itemOutputs(outputs) + .fluidInputs(Materials.Water.getFluid(Math.max(4, Math.min(1000, duration * eut / 320)))) + .noFluidOutputs().duration(2 * duration).eut(eut).requiresCleanRoom().addTo(sCutterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(inputs).itemOutputs(outputs) + .fluidInputs(GT_ModHandler.getDistilledWater(Math.max(3, Math.min(750, duration * eut / 426)))) + .noFluidOutputs().duration(2 * duration).eut(eut).requiresCleanRoom().addTo(sCutterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(inputs).itemOutputs(outputs) + .fluidInputs(Materials.Lubricant.getFluid(Math.max(1, Math.min(250, duration * eut / 1280)))) + .noFluidOutputs().duration(duration).eut(eut).requiresCleanRoom().addTo(sCutterRecipes); + } else { + GT_Values.RA.stdBuilder().itemInputs(inputs).itemOutputs(outputs) + .fluidInputs(Materials.Water.getFluid(Math.max(4, Math.min(1000, duration * eut / 320)))) + .noFluidOutputs().duration(2 * duration).eut(eut).addTo(sCutterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(inputs).itemOutputs(outputs) + .fluidInputs(GT_ModHandler.getDistilledWater(Math.max(3, Math.min(750, duration * eut / 426)))) + .noFluidOutputs().duration(2 * duration).eut(eut).addTo(sCutterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(inputs).itemOutputs(outputs) + .fluidInputs(Materials.Lubricant.getFluid(Math.max(1, Math.min(250, duration * eut / 1280)))) + .noFluidOutputs().duration(duration).eut(eut).addTo(sCutterRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/DistilleryRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/DistilleryRecipes.java index a4828c6696..bc9de6a77c 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/DistilleryRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/DistilleryRecipes.java @@ -1,6 +1,11 @@ package gregtech.loaders.postload.recipes; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isTinkersConstructLoaded; +import static gregtech.api.enums.ModIDs.TinkerConstruct; +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_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.item.ItemStack; @@ -19,474 +24,353 @@ public class DistilleryRecipes implements Runnable { public void run() { distillationTowerRecipes(); + universalDistillationTowerRecipes(); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Creosote.getFluid(100L)).fluidOutputs(Materials.Lubricant.getFluid(32L)) + .duration(12 * SECONDS).eut(30).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.SeedOil.getFluid(32L)).fluidOutputs(Materials.Lubricant.getFluid(8L)) + .duration(4 * SECONDS).eut(30).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.FishOil.getFluid(32L)).fluidOutputs(Materials.Lubricant.getFluid(8L)) + .duration(4 * SECONDS).eut(30).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.Oil.getFluid(120L)).fluidOutputs(Materials.Lubricant.getFluid(60L)) + .duration(8 * SECONDS).eut(30).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.OilLight.getFluid(120L)).fluidOutputs(Materials.Lubricant.getFluid(30L)) + .duration(8 * SECONDS).eut(30).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.OilMedium.getFluid(120L)).fluidOutputs(Materials.Lubricant.getFluid(60L)) + .duration(8 * SECONDS).eut(30).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).noItemOutputs() + .fluidInputs(Materials.OilHeavy.getFluid(120L)).fluidOutputs(Materials.Lubricant.getFluid(90L)) + .duration(8 * SECONDS).eut(30).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.Biomass.getFluid(40L)).fluidOutputs(Materials.Ethanol.getFluid(12L)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(5)).noItemOutputs() + .fluidInputs(Materials.Biomass.getFluid(40L)).fluidOutputs(Materials.Water.getFluid(12L)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(5)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(5L)).fluidOutputs(GT_ModHandler.getDistilledWater(5L)) + .duration(16 * TICKS).eut(10).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(getFluidStack("potion.potatojuice", 2)).fluidOutputs(getFluidStack("potion.vodka", 1)) + .duration(16 * TICKS).eut(16).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(getFluidStack("potion.lemonade", 2)).fluidOutputs(getFluidStack("potion.alcopops", 1)) + .duration(16 * TICKS).eut(16).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)).noItemOutputs() + .fluidInputs(Materials.OilLight.getFluid(300L)).fluidOutputs(Materials.Oil.getFluid(100L)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)).noItemOutputs() + .fluidInputs(Materials.OilMedium.getFluid(200L)).fluidOutputs(Materials.Oil.getFluid(100L)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)).noItemOutputs() + .fluidInputs(Materials.OilHeavy.getFluid(100L)).fluidOutputs(Materials.Oil.getFluid(100L)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(MaterialsOreAlum.SluiceSand.getDust(1)) + .fluidInputs(MaterialsOreAlum.SluiceJuice.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(500)) + .duration(5 * SECONDS).eut(16).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(6)).noItemOutputs() + .fluidInputs(Materials.WoodTar.getFluid(200)) + .fluidOutputs(MaterialsKevlar.IIIDimethylbenzene.getFluid(30)).duration(16 * TICKS).eut(64) + .addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(6)).noItemOutputs() + .fluidInputs(Materials.CharcoalByproducts.getGas(200)) + .fluidOutputs(MaterialsKevlar.IIIDimethylbenzene.getFluid(20)).duration(5 * SECONDS).eut(64) + .addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(7)).noItemOutputs() + .fluidInputs(Materials.WoodTar.getFluid(200)) + .fluidOutputs(MaterialsKevlar.IVDimethylbenzene.getFluid(30)).duration(16 * TICKS).eut(64) + .addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(7)).noItemOutputs() + .fluidInputs(Materials.CharcoalByproducts.getGas(200)) + .fluidOutputs(MaterialsKevlar.IVDimethylbenzene.getFluid(20)).duration(5 * SECONDS).eut(64) + .addTo(sDistilleryRecipes); + // (NaCl·H2O) = NaCl + H2O - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(24), - Materials.Creosote.getFluid(100L), - Materials.Lubricant.getFluid(32L), - 240, - 30, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(24), - Materials.SeedOil.getFluid(32L), - Materials.Lubricant.getFluid(8L), - 80, - 30, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(24), - Materials.FishOil.getFluid(32L), - Materials.Lubricant.getFluid(8L), - 80, - 30, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(24), - Materials.Oil.getFluid(120L), - Materials.Lubricant.getFluid(60L), - 160, - 30, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(24), - Materials.OilLight.getFluid(120L), - Materials.Lubricant.getFluid(30L), - 160, - 30, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(24), - Materials.OilMedium.getFluid(120L), - Materials.Lubricant.getFluid(60L), - 160, - 30, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(24), - Materials.OilHeavy.getFluid(120L), - Materials.Lubricant.getFluid(90L), - 160, - 30, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.Biomass.getFluid(40L), - Materials.Ethanol.getFluid(12L), - 16, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(5), - Materials.Biomass.getFluid(40L), - Materials.Water.getFluid(12L), - 16, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(5), - Materials.Water.getFluid(5L), - GT_ModHandler.getDistilledWater(5L), - 16, - 10, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - getFluidStack("potion.potatojuice", 2), - getFluidStack("potion.vodka", 1), - 16, - 16, - true); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - getFluidStack("potion.lemonade", 2), - getFluidStack("potion.alcopops", 1), - 16, - 16, - true); - - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(4), - Materials.OilLight.getFluid(300L), - Materials.Oil.getFluid(100L), - 16, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(4), - Materials.OilMedium.getFluid(200L), - Materials.Oil.getFluid(100L), - 16, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(4), - Materials.OilHeavy.getFluid(100L), - Materials.Oil.getFluid(100L), - 16, - 24, - false); - - GT_Values.RA.addDistilleryRecipe( - 1, - MaterialsOreAlum.SluiceJuice.getFluid(1000), - Materials.Water.getFluid(500), - MaterialsOreAlum.SluiceSand.getDust(1), - 100, - 16, - false); - - GT_Values.RA.addDistilleryRecipe( - 6, - Materials.WoodTar.getFluid(200), - MaterialsKevlar.IIIDimethylbenzene.getFluid(30), - 16, - 64, - false); - GT_Values.RA.addDistilleryRecipe( - 6, - Materials.CharcoalByproducts.getGas(200), - MaterialsKevlar.IIIDimethylbenzene.getFluid(20), - 100, - 64, - false); - GT_Values.RA.addDistilleryRecipe( - 7, - Materials.WoodTar.getFluid(200), - MaterialsKevlar.IVDimethylbenzene.getFluid(30), - 16, - 64, - false); - GT_Values.RA.addDistilleryRecipe( - 7, - Materials.CharcoalByproducts.getGas(200), - MaterialsKevlar.IVDimethylbenzene.getFluid(20), - 100, - 64, - false); + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(Materials.Salt.getDust(2)) + .fluidInputs(Materials.SaltWater.getFluid(1000)).fluidOutputs(GT_ModHandler.getDistilledWater(1000)) + .duration(1 * MINUTES + 20 * SECONDS).eut(30).addTo(sDistilleryRecipes); - // (NaCl·H2O) = NaCl + H2O - GT_Values.RA.addDistilleryRecipe( - 1, - Materials.SaltWater.getFluid(1000), - GT_ModHandler.getDistilledWater(1000), - Materials.Salt.getDust(2), - 1600, - 30, - false); - - GT_Values.RA.addDistilleryRecipe( - 1, - Materials.FermentedBiomass.getFluid(1000), - Materials.AceticAcid.getFluid(25), - ItemList.IC2_Fertilizer.get(1), - 1500, - 8, - false); - GT_Values.RA.addDistilleryRecipe( - 2, - Materials.FermentedBiomass.getFluid(1000), - Materials.Water.getFluid(375), - ItemList.IC2_Fertilizer.get(1), - 1500, - 8, - false); - GT_Values.RA.addDistilleryRecipe( - 3, - Materials.FermentedBiomass.getFluid(1000), - Materials.Ethanol.getFluid(150), - ItemList.IC2_Fertilizer.get(1), - 1500, - 8, - false); - GT_Values.RA.addDistilleryRecipe( - 4, - Materials.FermentedBiomass.getFluid(1000), - Materials.Methanol.getFluid(150), - ItemList.IC2_Fertilizer.get(1), - 1500, - 8, - false); - GT_Values.RA.addDistilleryRecipe( - 5, - Materials.FermentedBiomass.getFluid(1000), - Materials.Ammonia.getGas(100), - ItemList.IC2_Fertilizer.get(1), - 1500, - 8, - false); - GT_Values.RA.addDistilleryRecipe( - 6, - Materials.FermentedBiomass.getFluid(1000), - Materials.CarbonDioxide.getGas(400), - ItemList.IC2_Fertilizer.get(1), - 1500, - 8, - false); - GT_Values.RA.addDistilleryRecipe( - 7, - Materials.FermentedBiomass.getFluid(1000), - Materials.Methane.getGas(600), - ItemList.IC2_Fertilizer.get(1), - 1500, - 8, - false); - - GT_Values.RA.addDistilleryRecipe( - 17, - Materials.FermentedBiomass.getFluid(1000), - new FluidStack(FluidRegistry.getFluid("ic2biogas"), 1800), - ItemList.IC2_Fertilizer.get(1), - 1600, - 8, - false); - GT_Values.RA.addDistilleryRecipe( - 1, - Materials.Methane.getGas(1000), - new FluidStack(FluidRegistry.getFluid("ic2biogas"), 3000), - GT_Values.NI, - 160, - 8, - false); - - GT_Values.RA.addDistilleryRecipe( - 2, - Materials.HeavyFuel.getFluid(100), - Materials.Benzene.getFluid(40), - 160, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - 3, - Materials.HeavyFuel.getFluid(100), - Materials.Phenol.getFluid(25), - 160, - 24, - false); + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)).fluidOutputs(Materials.AceticAcid.getFluid(25)) + .duration(1 * MINUTES + 15 * SECONDS).eut(8).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(375)) + .duration(1 * MINUTES + 15 * SECONDS).eut(8).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)).fluidOutputs(Materials.Ethanol.getFluid(150)) + .duration(1 * MINUTES + 15 * SECONDS).eut(8).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)).fluidOutputs(Materials.Methanol.getFluid(150)) + .duration(1 * MINUTES + 15 * SECONDS).eut(8).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)).fluidOutputs(Materials.Ammonia.getGas(100)) + .duration(1 * MINUTES + 15 * SECONDS).eut(8).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)) + .fluidOutputs(Materials.CarbonDioxide.getGas(400)).duration(1 * MINUTES + 15 * SECONDS).eut(8) + .addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)).fluidOutputs(Materials.Methane.getGas(600)) + .duration(1 * MINUTES + 15 * SECONDS).eut(8).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("ic2biogas"), 1800)) + .duration(1 * MINUTES + 20 * SECONDS).eut(8).addTo(sDistilleryRecipes); + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Methane.getGas(1000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("ic2biogas"), 3000)).duration(8 * SECONDS).eut(8) + .addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs(Materials.HeavyFuel.getFluid(100)).fluidOutputs(Materials.Benzene.getFluid(40)) + .duration(8 * SECONDS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(3)).noItemOutputs() + .fluidInputs(Materials.HeavyFuel.getFluid(100)).fluidOutputs(Materials.Phenol.getFluid(25)) + .duration(8 * SECONDS).eut(24).addTo(sDistilleryRecipes); // Dimethylbenzene - GT_Values.RA.addDistilleryRecipe( - 5, - Materials.WoodTar.getFluid(200), - Materials.Dimethylbenzene.getFluid(30), - 100, - 120, - false); - GT_Values.RA.addDistilleryRecipe( - 5, - Materials.CharcoalByproducts.getGas(200), - Materials.Dimethylbenzene.getFluid(20), - 100, - 120, - false); - - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - new FluidStack(ItemList.sOilExtraHeavy, 10), - Materials.OilHeavy.getFluid(15), - 16, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.HeavyFuel.getFluid(10L), - new FluidStack(ItemList.sToluene, 4), - 16, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - new FluidStack(ItemList.sToluene, 30), - Materials.LightFuel.getFluid(30L), - 16, - 24, - false); - - if (isTinkersConstructLoaded) { - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.Glue.getFluid(8L), - getFluidStack("glue", 8), - 1, - 24, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - getFluidStack("glue", 8), - Materials.Glue.getFluid(4L), - 1, - 24, - false); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(5)).noItemOutputs() + .fluidInputs(Materials.WoodTar.getFluid(200)).fluidOutputs(Materials.Dimethylbenzene.getFluid(30)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(5)).noItemOutputs() + .fluidInputs(Materials.CharcoalByproducts.getGas(200)) + .fluidOutputs(Materials.Dimethylbenzene.getFluid(20)).duration(5 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(new FluidStack(ItemList.sOilExtraHeavy, 10)).fluidOutputs(Materials.OilHeavy.getFluid(15)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.HeavyFuel.getFluid(10L)).fluidOutputs(new FluidStack(ItemList.sToluene, 4)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(new FluidStack(ItemList.sToluene, 30)).fluidOutputs(Materials.LightFuel.getFluid(30L)) + .duration(16 * TICKS).eut(24).addTo(sDistilleryRecipes); + + if (TinkerConstruct.isModLoaded()) { + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.Glue.getFluid(8L)).fluidOutputs(getFluidStack("glue", 8)).duration(1 * TICKS) + .eut(24).addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(getFluidStack("glue", 8)).fluidOutputs(Materials.Glue.getFluid(4L)).duration(1 * TICKS) + .eut(24).addTo(sDistilleryRecipes); + } if (!GregTech_API.mIC2Classic) { - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(1), - new FluidStack(FluidRegistry.getFluid("ic2biomass"), 20), - new FluidStack(FluidRegistry.getFluid("ic2biogas"), 32), - 40, - 16, - false); - GT_Values.RA.addDistilleryRecipe( - GT_Utility.getIntegratedCircuit(2), - new FluidStack(FluidRegistry.getFluid("ic2biomass"), 4), - Materials.Water.getFluid(2), - 80, - 30, - false); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 20)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("ic2biogas"), 32)).duration(2 * SECONDS).eut(16) + .addTo(sDistilleryRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 4)) + .fluidOutputs(Materials.Water.getFluid(2)).duration(4 * SECONDS).eut(30).addTo(sDistilleryRecipes); + } } public void distillationTowerRecipes() { - - GT_Values.RA.addDistillationTowerRecipe( - Materials.Creosote.getFluid(1000L), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Lubricant.getFluid(500L) }, - null, - 400, - 120); - GT_Values.RA.addDistillationTowerRecipe( - Materials.SeedOil.getFluid(1400L), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Lubricant.getFluid(500L) }, - null, - 400, - 120); - GT_Values.RA.addDistillationTowerRecipe( - Materials.FishOil.getFluid(1200L), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Lubricant.getFluid(500L) }, - null, - 400, - 120); - GT_Values.RA.addDistillationTowerRecipe( - Materials.Biomass.getFluid(1000L), - new FluidStack[] { Materials.Ethanol.getFluid(600L), Materials.Water.getFluid(300L) }, - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 2L), - 32, - 400); - GT_Values.RA.addDistillationTowerRecipe( - Materials.Water.getFluid(1000L), - new FluidStack[] { GT_ModHandler.getDistilledWater(1000L) }, - null, - 32, - 120); - GT_Values.RA.addDistillationTowerRecipe( - Materials.OilLight.getFluid(1000L), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Lubricant.getFluid(250L) }, - null, - 400, - 120); - GT_Values.RA.addDistillationTowerRecipe( - Materials.OilMedium.getFluid(1000L), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Lubricant.getFluid(500L) }, - null, - 400, - 120); - GT_Values.RA.addDistillationTowerRecipe( - Materials.OilHeavy.getFluid(1000L), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Lubricant.getFluid(750L) }, - null, - 400, - 120); - + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Creosote.getFluid(1000L)) + .fluidOutputs(Materials.Lubricant.getFluid(500L)).duration(20 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.SeedOil.getFluid(1400L)) + .fluidOutputs(Materials.Lubricant.getFluid(500L)).duration(20 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.FishOil.getFluid(1200L)) + .fluidOutputs(Materials.Lubricant.getFluid(500L)).duration(20 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs() + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 2L)) + .fluidInputs(Materials.Biomass.getFluid(1000L)) + .fluidOutputs(Materials.Ethanol.getFluid(600L), Materials.Water.getFluid(300L)) + .duration(1 * SECONDS + 12 * TICKS).eut(400).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Water.getFluid(1000L)) + .fluidOutputs(GT_ModHandler.getDistilledWater(1000L)).duration(1 * SECONDS + 12 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.OilLight.getFluid(1000L)) + .fluidOutputs(Materials.Lubricant.getFluid(250L)).duration(20 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.OilMedium.getFluid(1000L)) + .fluidOutputs(Materials.Lubricant.getFluid(500L)).duration(20 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.OilHeavy.getFluid(1000L)) + .fluidOutputs(Materials.Lubricant.getFluid(750L)).duration(20 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sDistillationRecipes); // C15H10N2O2(5HCl) = C15H10N2O2 + 5HCl - GT_Values.RA.addDistillationTowerRecipe( - MaterialsKevlar.DiphenylmethaneDiisocyanateMixture.getFluid(1000L), - new FluidStack[] { Materials.HydrochloricAcid.getFluid(5000L) }, - GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.DiphenylmethaneDiisocyanate, 29L), - 2500, - 1920); - - GT_Values.RA.addDistillationTowerRecipe( - Materials.CharcoalByproducts.getGas(1000), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.WoodTar.getFluid(250), Materials.WoodVinegar.getFluid(400), - Materials.WoodGas.getGas(250), MaterialsKevlar.IIIDimethylbenzene.getFluid(100) }, - Materials.Charcoal.getDustSmall(1), - 40, - 256); - GT_Values.RA.addDistillationTowerRecipe( - Materials.WoodTar.getFluid(1000), - new ItemStack[] { GT_Utility.getIntegratedCircuit(2) }, - new FluidStack[] { Materials.Creosote.getFluid(250), Materials.Phenol.getFluid(100), - Materials.Benzene.getFluid(400), Materials.Toluene.getFluid(100), - MaterialsKevlar.IIIDimethylbenzene.getFluid(150) }, - GT_Values.NI, - 40, - 256); - GT_Values.RA.addDistillationTowerRecipe( - Materials.CharcoalByproducts.getGas(1000), - new ItemStack[] { GT_Utility.getIntegratedCircuit(3) }, - new FluidStack[] { Materials.WoodTar.getFluid(250), Materials.WoodVinegar.getFluid(400), - Materials.WoodGas.getGas(250), MaterialsKevlar.IVDimethylbenzene.getFluid(100) }, - Materials.Charcoal.getDustSmall(1), - 40, - 256); - GT_Values.RA.addDistillationTowerRecipe( - Materials.CharcoalByproducts.getGas(1000), - new ItemStack[] { GT_Utility.getIntegratedCircuit(4) }, - new FluidStack[] { Materials.WoodTar.getFluid(250), Materials.WoodVinegar.getFluid(400), - Materials.WoodGas.getGas(250), Materials.Dimethylbenzene.getFluid(20), + GT_Values.RA.stdBuilder().noItemInputs() + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsKevlar.DiphenylmethaneDiisocyanate, 29L)) + .fluidInputs(MaterialsKevlar.DiphenylmethaneDiisocyanateMixture.getFluid(1000L)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(5000L)).duration(2 * MINUTES + 5 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(Materials.Charcoal.getDustSmall(1)) + .fluidInputs(Materials.CharcoalByproducts.getGas(1000)) + .fluidOutputs( + Materials.WoodTar.getFluid(250), + Materials.WoodVinegar.getFluid(400), + Materials.WoodGas.getGas(250), + MaterialsKevlar.IIIDimethylbenzene.getFluid(100)) + .duration(2 * SECONDS).eut(256).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(GT_Values.NI).fluidInputs(Materials.WoodTar.getFluid(1000)) + .fluidOutputs( + Materials.Creosote.getFluid(250), + Materials.Phenol.getFluid(100), + Materials.Benzene.getFluid(400), + Materials.Toluene.getFluid(100), + MaterialsKevlar.IIIDimethylbenzene.getFluid(150)) + .duration(2 * SECONDS).eut(256).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(Materials.Charcoal.getDustSmall(1)) + .fluidInputs(Materials.CharcoalByproducts.getGas(1000)) + .fluidOutputs( + Materials.WoodTar.getFluid(250), + Materials.WoodVinegar.getFluid(400), + Materials.WoodGas.getGas(250), + MaterialsKevlar.IVDimethylbenzene.getFluid(100)) + .duration(2 * SECONDS).eut(256).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(Materials.Charcoal.getDustSmall(1)) + .fluidInputs(Materials.CharcoalByproducts.getGas(1000)) + .fluidOutputs( + Materials.WoodTar.getFluid(250), + Materials.WoodVinegar.getFluid(400), + Materials.WoodGas.getGas(250), + Materials.Dimethylbenzene.getFluid(20), MaterialsKevlar.IIIDimethylbenzene.getFluid(60), - MaterialsKevlar.IVDimethylbenzene.getFluid(20) }, - Materials.Charcoal.getDustSmall(1), - 40, - 256); - GT_Values.RA.addDistillationTowerRecipe( - Materials.WoodTar.getFluid(1000), - new ItemStack[] { GT_Utility.getIntegratedCircuit(4) }, - new FluidStack[] { Materials.Creosote.getFluid(250), Materials.Phenol.getFluid(100), - Materials.Benzene.getFluid(400), Materials.Toluene.getFluid(100), - Materials.Dimethylbenzene.getFluid(30), MaterialsKevlar.IIIDimethylbenzene.getFluid(90), - MaterialsKevlar.IVDimethylbenzene.getFluid(30) }, - GT_Values.NI, - 40, - 256); + MaterialsKevlar.IVDimethylbenzene.getFluid(20)) + .duration(2 * SECONDS).eut(256).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(GT_Values.NI).fluidInputs(Materials.WoodTar.getFluid(1000)) + .fluidOutputs( + Materials.Creosote.getFluid(250), + Materials.Phenol.getFluid(100), + Materials.Benzene.getFluid(400), + Materials.Toluene.getFluid(100), + Materials.Dimethylbenzene.getFluid(30), + MaterialsKevlar.IIIDimethylbenzene.getFluid(90), + MaterialsKevlar.IVDimethylbenzene.getFluid(30)) + .duration(2 * SECONDS).eut(256).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.OilLight.getFluid(1500)) + .fluidOutputs( + Materials.SulfuricHeavyFuel.getFluid(100), + Materials.SulfuricLightFuel.getFluid(200), + Materials.SulfuricNaphtha.getFluid(300), + MaterialsKevlar.NaphthenicAcid.getFluid(25), + Materials.SulfuricGas.getGas(2400)) + .duration(1 * SECONDS + 12 * TICKS).eut(TierEU.RECIPE_HV).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.OilMedium.getFluid(1000)) + .fluidOutputs( + Materials.SulfuricHeavyFuel.getFluid(100), + Materials.SulfuricLightFuel.getFluid(500), + Materials.SulfuricNaphtha.getFluid(1500), + MaterialsKevlar.NaphthenicAcid.getFluid(25), + Materials.SulfuricGas.getGas(600)) + .duration(1 * SECONDS + 12 * TICKS).eut(TierEU.RECIPE_HV).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Oil.getFluid(500L)) + .fluidOutputs( + Materials.SulfuricHeavyFuel.getFluid(150), + Materials.SulfuricLightFuel.getFluid(500), + Materials.SulfuricNaphtha.getFluid(200), + MaterialsKevlar.NaphthenicAcid.getFluid(25), + Materials.SulfuricGas.getGas(600)) + .duration(1 * SECONDS + 12 * TICKS).eut(TierEU.RECIPE_HV).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.OilHeavy.getFluid(1000)) + .fluidOutputs( + Materials.SulfuricHeavyFuel.getFluid(2500), + Materials.SulfuricLightFuel.getFluid(450), + Materials.SulfuricNaphtha.getFluid(150), + MaterialsKevlar.NaphthenicAcid.getFluid(50), + Materials.SulfuricGas.getGas(600)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sDistillationRecipes); + // 9C5H12O = 4C6H14O + 5CH4O + 4C4H8 - GT_Values.RA.addDistillationTowerRecipe( - Materials.OilLight.getFluid(1500), - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(100), Materials.SulfuricLightFuel.getFluid(200), - Materials.SulfuricNaphtha.getFluid(300), MaterialsKevlar.NaphthenicAcid.getFluid(25), - Materials.SulfuricGas.getGas(2400) }, - null, - 32, - 480); - GT_Values.RA.addDistillationTowerRecipe( - Materials.OilMedium.getFluid(1000), - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(100), Materials.SulfuricLightFuel.getFluid(500), - Materials.SulfuricNaphtha.getFluid(1500), MaterialsKevlar.NaphthenicAcid.getFluid(25), - Materials.SulfuricGas.getGas(600) }, - null, - 32, - 480); - GT_Values.RA.addDistillationTowerRecipe( - Materials.Oil.getFluid(500L), - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(150), Materials.SulfuricLightFuel.getFluid(500), - Materials.SulfuricNaphtha.getFluid(200), MaterialsKevlar.NaphthenicAcid.getFluid(25), - Materials.SulfuricGas.getGas(600) }, - null, - 32, - 480); - GT_Values.RA.addDistillationTowerRecipe( - Materials.OilHeavy.getFluid(1000), - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(2500), - Materials.SulfuricLightFuel.getFluid(450), Materials.SulfuricNaphtha.getFluid(150), - MaterialsKevlar.NaphthenicAcid.getFluid(50), Materials.SulfuricGas.getGas(600) }, - null, - 100, - 480); + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.MTBEMixture.getGas(900L)) + .fluidOutputs( + Materials.AntiKnock.getFluid(400L), + Materials.Methanol.getFluid(500L), + Materials.Butene.getGas(400L)) + .duration(2 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sDistillationRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(Materials.FermentedBiomass.getFluid(1000)) + .fluidOutputs( + Materials.AceticAcid.getFluid(25), + Materials.Water.getFluid(375), + Materials.Ethanol.getFluid(150), + Materials.Methanol.getFluid(150), + Materials.Ammonia.getGas(100), + Materials.CarbonDioxide.getGas(400), + Materials.Methane.getGas(600)) + .duration(3 * SECONDS + 15 * TICKS).eut(TierEU.RECIPE_MV).addTo(sDistillationRecipes); + + if (!GregTech_API.mIC2Classic) { + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(ItemList.IC2_Fertilizer.get(1)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 3000)) + .fluidOutputs( + new FluidStack(FluidRegistry.getFluid("ic2biogas"), 8000), + Materials.Water.getFluid(125L)) + .duration(12 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV).addTo(sDistillationRecipes); + + } + } - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + public void universalDistillationTowerRecipes() { + addUniversalDistillationRecipewithCircuit( Materials.WoodTar.getFluid(1000), new ItemStack[] { GT_Utility.getIntegratedCircuit(3) }, new FluidStack[] { Materials.Creosote.getFluid(250), Materials.Phenol.getFluid(100), @@ -496,7 +380,7 @@ public class DistilleryRecipes implements Runnable { 40, 256); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.CharcoalByproducts.getGas(1000), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.WoodTar.getFluid(250), Materials.WoodVinegar.getFluid(400), @@ -505,7 +389,7 @@ public class DistilleryRecipes implements Runnable { 40, 256); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.WoodGas.getGas(1000), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.CarbonDioxide.getGas(390), Materials.Ethylene.getGas(120), @@ -514,7 +398,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 40, 256); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.WoodVinegar.getFluid(1000), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.AceticAcid.getFluid(100), Materials.Water.getFluid(500), @@ -523,7 +407,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 40, 256); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.WoodTar.getFluid(1000), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.Creosote.getFluid(250), Materials.Phenol.getFluid(100), @@ -533,7 +417,7 @@ public class DistilleryRecipes implements Runnable { 40, 256); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.OilLight.getFluid(150), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(10), Materials.SulfuricLightFuel.getFluid(20), @@ -541,7 +425,7 @@ public class DistilleryRecipes implements Runnable { null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.OilMedium.getFluid(100), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(10), Materials.SulfuricLightFuel.getFluid(50), @@ -549,7 +433,7 @@ public class DistilleryRecipes implements Runnable { null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.Oil.getFluid(50L), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), @@ -557,7 +441,7 @@ public class DistilleryRecipes implements Runnable { null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipewithCircuit( + addUniversalDistillationRecipewithCircuit( Materials.OilHeavy.getFluid(100), new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(250), Materials.SulfuricLightFuel.getFluid(45), @@ -567,28 +451,28 @@ public class DistilleryRecipes implements Runnable { 288); // 2 0.5HCl(Diluted) = HCl + H2O - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.DilutedHydrochloricAcid.getFluid(2000), new FluidStack[] { Materials.Water.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000) }, GT_Values.NI, 600, 64); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( getFluidStack("potion.vinegar", 40), new FluidStack[] { Materials.AceticAcid.getFluid(5), Materials.Water.getFluid(35) }, GT_Values.NI, 20, 64); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.CalciumAcetateSolution.getFluid(1000), new FluidStack[] { Materials.Acetone.getFluid(1000), Materials.CarbonDioxide.getGas(1000) }, Materials.Quicklime.getDust(2), 80, 480); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.DilutedSulfuricAcid.getFluid(3000), new FluidStack[] { Materials.SulfuricAcid.getFluid(2000), Materials.Water.getFluid(1000) }, GT_Values.NI, @@ -596,14 +480,14 @@ public class DistilleryRecipes implements Runnable { 120); // C3H6O = C2H2O + CH4 - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Acetone.getFluid(1000), new FluidStack[] { Materials.Ethenone.getGas(1000), Materials.Methane.getGas(1000) }, GT_Values.NI, 80, 640); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Gas.getGas(1000), new FluidStack[] { Materials.Butane.getGas(60), Materials.Propane.getGas(70), Materials.Ethane.getGas(100), Materials.Methane.getGas(750), Materials.Helium.getGas(20) }, @@ -611,190 +495,190 @@ public class DistilleryRecipes implements Runnable { 240, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethylene.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Ethane.getGas(1000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethylene.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(2000) }, null, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethylene.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(2000), Materials.Hydrogen.getGas(2000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethylene.getLightlySteamCracked(1000), new FluidStack[] { Materials.Methane.getGas(1000) }, Materials.Carbon.getDust(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethylene.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Methane.getGas(1000) }, Materials.Carbon.getDust(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethylene.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Methane.getGas(1000) }, Materials.Carbon.getDust(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethane.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(2000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethane.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(2000), Materials.Hydrogen.getGas(2000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethane.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(2000), Materials.Hydrogen.getGas(4000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethane.getLightlySteamCracked(1000), new FluidStack[] { Materials.Ethylene.getGas(250), Materials.Methane.getGas(1250) }, Materials.Carbon.getDustSmall(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethane.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Ethylene.getGas(125), Materials.Methane.getGas(1375) }, Materials.Carbon.getDustTiny(6), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Ethane.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Methane.getGas(1500) }, Materials.Carbon.getDustSmall(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propene.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Propane.getGas(500), Materials.Ethylene.getGas(500), Materials.Methane.getGas(500) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propene.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Ethane.getGas(1000), Materials.Methane.getGas(1000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propene.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(3000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propene.getLightlySteamCracked(1000), new FluidStack[] { Materials.Ethylene.getGas(1000), Materials.Methane.getGas(500) }, Materials.Carbon.getDustSmall(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propene.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Ethylene.getGas(750), Materials.Methane.getGas(750) }, Materials.Carbon.getDustSmall(3), 180, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propene.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Methane.getGas(1500) }, Materials.Carbon.getDustSmall(6), 180, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propane.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Ethane.getGas(1000), Materials.Methane.getGas(1000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propane.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(3000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propane.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(3000), Materials.Hydrogen.getGas(2000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propane.getLightlySteamCracked(1000), new FluidStack[] { Materials.Ethylene.getGas(750), Materials.Methane.getGas(1250) }, Materials.Carbon.getDustTiny(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propane.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Ethylene.getGas(500), Materials.Methane.getGas(1500) }, Materials.Carbon.getDustSmall(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Propane.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Ethylene.getGas(250), Materials.Methane.getGas(1750) }, Materials.Carbon.getDustTiny(4), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butadiene.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Butene.getGas(667), Materials.Ethylene.getGas(667) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butadiene.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Butane.getGas(223), Materials.Propene.getGas(223), Materials.Ethane.getGas(400), Materials.Ethylene.getGas(445), Materials.Methane.getGas(223) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butadiene.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Propane.getGas(260), Materials.Ethane.getGas(926), Materials.Ethylene.getGas(389), Materials.Methane.getGas(2667) }, GT_Values.NI, 112, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butadiene.getLightlySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(750), Materials.Ethylene.getGas(188), Materials.Methane.getGas(188) }, Materials.Carbon.getDustSmall(3), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butadiene.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(125), Materials.Ethylene.getGas(1125), Materials.Methane.getGas(188) }, Materials.Carbon.getDustSmall(3), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butadiene.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(125), Materials.Ethylene.getGas(188), Materials.Methane.getGas(1125) }, @@ -802,41 +686,41 @@ public class DistilleryRecipes implements Runnable { 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butene.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Butane.getGas(334), Materials.Propene.getGas(334), Materials.Ethane.getGas(334), Materials.Ethylene.getGas(334), Materials.Methane.getGas(334) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butene.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Propane.getGas(389), Materials.Ethane.getGas(556), Materials.Ethylene.getGas(334), Materials.Methane.getGas(1056) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butene.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Ethane.getGas(1000), Materials.Methane.getGas(2000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butene.getLightlySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(750), Materials.Ethylene.getGas(500), Materials.Methane.getGas(250) }, Materials.Carbon.getDustSmall(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butene.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(200), Materials.Ethylene.getGas(1300), Materials.Methane.getGas(400) }, Materials.Carbon.getDustSmall(1), 192, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butene.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(125), Materials.Ethylene.getGas(313), Materials.Methane.getGas(1500) }, @@ -844,40 +728,40 @@ public class DistilleryRecipes implements Runnable { 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butane.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Propane.getGas(667), Materials.Ethane.getGas(667), Materials.Methane.getGas(667) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butane.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Ethane.getGas(1000), Materials.Methane.getGas(2000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butane.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(1000) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butane.getLightlySteamCracked(1000), new FluidStack[] { Materials.Propane.getGas(750), Materials.Ethane.getGas(125), Materials.Ethylene.getGas(125), Materials.Methane.getGas(1063) }, Materials.Carbon.getDustTiny(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butane.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Propane.getGas(125), Materials.Ethane.getGas(750), Materials.Ethylene.getGas(750), Materials.Methane.getGas(438) }, Materials.Carbon.getDustTiny(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Butane.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Propane.getGas(125), Materials.Ethane.getGas(125), Materials.Ethylene.getGas(125), Materials.Methane.getGas(2000) }, @@ -885,42 +769,42 @@ public class DistilleryRecipes implements Runnable { 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Gas.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(1300), Materials.Hydrogen.getGas(1500), Materials.Helium.getGas(100) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Gas.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(1400), Materials.Hydrogen.getGas(3000), Materials.Helium.getGas(150) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Gas.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Methane.getGas(1500), Materials.Hydrogen.getGas(4000), Materials.Helium.getGas(200) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Gas.getLightlySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(50), Materials.Ethane.getGas(10), Materials.Ethylene.getGas(100), Materials.Methane.getGas(500), Materials.Helium.getGas(50) }, Materials.Carbon.getDustTiny(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Gas.getModeratelySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(10), Materials.Ethane.getGas(50), Materials.Ethylene.getGas(200), Materials.Methane.getGas(600), Materials.Helium.getGas(70) }, Materials.Carbon.getDustTiny(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Gas.getSeverelySteamCracked(1000), new FluidStack[] { Materials.Propene.getGas(10), Materials.Ethane.getGas(10), Materials.Ethylene.getGas(300), Materials.Methane.getGas(700), Materials.Helium.getGas(100) }, @@ -928,28 +812,28 @@ public class DistilleryRecipes implements Runnable { 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Naphtha.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Butane.getGas(800), Materials.Propane.getGas(300), Materials.Ethane.getGas(250), Materials.Methane.getGas(250) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Naphtha.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Butane.getGas(200), Materials.Propane.getGas(1100), Materials.Ethane.getGas(400), Materials.Methane.getGas(400) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Naphtha.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Butane.getGas(125), Materials.Propane.getGas(125), Materials.Ethane.getGas(1500), Materials.Methane.getGas(1500) }, GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Naphtha.getLightlySteamCracked(1000), new FluidStack[] { Materials.HeavyFuel.getFluid(75), Materials.LightFuel.getFluid(150), Materials.Toluene.getFluid(40), Materials.Benzene.getFluid(150), Materials.Butene.getGas(80), @@ -958,7 +842,7 @@ public class DistilleryRecipes implements Runnable { Materials.Carbon.getDustTiny(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Naphtha.getModeratelySteamCracked(1000), new FluidStack[] { Materials.HeavyFuel.getFluid(50), Materials.LightFuel.getFluid(100), Materials.Toluene.getFluid(30), Materials.Benzene.getFluid(125), Materials.Butene.getGas(65), @@ -967,7 +851,7 @@ public class DistilleryRecipes implements Runnable { Materials.Carbon.getDustTiny(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.Naphtha.getSeverelySteamCracked(1000), new FluidStack[] { Materials.HeavyFuel.getFluid(25), Materials.LightFuel.getFluid(50), Materials.Toluene.getFluid(20), Materials.Benzene.getFluid(100), Materials.Butene.getGas(50), @@ -977,7 +861,7 @@ public class DistilleryRecipes implements Runnable { 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.LightFuel.getLightlyHydroCracked(1000), new FluidStack[] { Materials.Naphtha.getFluid(800), Materials.Octane.getFluid(100), Materials.Butane.getGas(150), Materials.Propane.getGas(200), Materials.Ethane.getGas(125), @@ -985,7 +869,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.LightFuel.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.Naphtha.getFluid(500), Materials.Octane.getFluid(50), Materials.Butane.getGas(200), Materials.Propane.getGas(1100), Materials.Ethane.getGas(400), @@ -993,7 +877,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.LightFuel.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.Naphtha.getFluid(200), Materials.Octane.getFluid(20), Materials.Butane.getGas(125), Materials.Propane.getGas(125), Materials.Ethane.getGas(1500), @@ -1001,7 +885,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.LightFuel.getLightlySteamCracked(1000), new FluidStack[] { Materials.HeavyFuel.getFluid(150), Materials.Naphtha.getFluid(400), Materials.Toluene.getFluid(40), Materials.Benzene.getFluid(200), Materials.Butene.getGas(75), @@ -1010,7 +894,7 @@ public class DistilleryRecipes implements Runnable { Materials.Carbon.getDustTiny(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.LightFuel.getModeratelySteamCracked(1000), new FluidStack[] { Materials.HeavyFuel.getFluid(100), Materials.Naphtha.getFluid(250), Materials.Toluene.getFluid(50), Materials.Benzene.getFluid(300), Materials.Butene.getGas(90), @@ -1019,7 +903,7 @@ public class DistilleryRecipes implements Runnable { Materials.Carbon.getDustTiny(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.LightFuel.getSeverelySteamCracked(1000), new FluidStack[] { Materials.HeavyFuel.getFluid(50), Materials.Naphtha.getFluid(100), Materials.Toluene.getFluid(30), Materials.Benzene.getFluid(150), Materials.Butene.getGas(65), @@ -1029,7 +913,7 @@ public class DistilleryRecipes implements Runnable { 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.HeavyFuel.getLightlyHydroCracked(1000), new FluidStack[] { Materials.LightFuel.getFluid(600), Materials.Naphtha.getFluid(100), Materials.Butane.getGas(100), Materials.Propane.getGas(100), Materials.Ethane.getGas(75), @@ -1037,7 +921,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.HeavyFuel.getModeratelyHydroCracked(1000), new FluidStack[] { Materials.LightFuel.getFluid(400), Materials.Naphtha.getFluid(400), Materials.Butane.getGas(150), Materials.Propane.getGas(150), Materials.Ethane.getGas(100), @@ -1045,7 +929,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.HeavyFuel.getSeverelyHydroCracked(1000), new FluidStack[] { Materials.LightFuel.getFluid(200), Materials.Naphtha.getFluid(250), Materials.Butane.getGas(300), Materials.Propane.getGas(300), Materials.Ethane.getGas(175), @@ -1053,7 +937,7 @@ public class DistilleryRecipes implements Runnable { GT_Values.NI, 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.HeavyFuel.getLightlySteamCracked(1000), new FluidStack[] { Materials.LightFuel.getFluid(300), Materials.Naphtha.getFluid(50), Materials.Toluene.getFluid(25), Materials.Benzene.getFluid(125), Materials.Butene.getGas(25), @@ -1062,7 +946,7 @@ public class DistilleryRecipes implements Runnable { Materials.Carbon.getDustTiny(1), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.HeavyFuel.getModeratelySteamCracked(1000), new FluidStack[] { Materials.LightFuel.getFluid(200), Materials.Naphtha.getFluid(200), Materials.Toluene.getFluid(40), Materials.Benzene.getFluid(200), Materials.Butene.getGas(40), @@ -1071,7 +955,7 @@ public class DistilleryRecipes implements Runnable { Materials.Carbon.getDustTiny(2), 120, 120); - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( Materials.HeavyFuel.getSeverelySteamCracked(1000), new FluidStack[] { Materials.LightFuel.getFluid(100), Materials.Naphtha.getFluid(125), Materials.Toluene.getFluid(80), Materials.Benzene.getFluid(400), Materials.Butene.getGas(80), @@ -1081,28 +965,9 @@ public class DistilleryRecipes implements Runnable { 120, 120); - // 9C5H12O = 4C6H14O + 5CH4O + 4C4H8 - GT_Values.RA.addDistillationTowerRecipe( - Materials.MTBEMixture.getGas(900L), - new FluidStack[] { Materials.AntiKnock.getFluid(400L), Materials.Methanol.getFluid(500L), - Materials.Butene.getGas(400L) }, - null, - 40, - 240); - - GT_Values.RA.addDistillationTowerRecipe( - Materials.FermentedBiomass.getFluid(1000), - new FluidStack[] { Materials.AceticAcid.getFluid(25), Materials.Water.getFluid(375), - Materials.Ethanol.getFluid(150), Materials.Methanol.getFluid(150), - Materials.Ammonia.getGas(100), Materials.CarbonDioxide.getGas(400), - Materials.Methane.getGas(600) }, - ItemList.IC2_Fertilizer.get(1), - 75, - 180); - if (GregTech_API.sSpecialFile.get("general", "EnableLagencyOilGalactiCraft", false) && FluidRegistry.getFluid("oilgc") != null) - GT_Values.RA.addUniversalDistillationRecipe( + addUniversalDistillationRecipe( new FluidStack(FluidRegistry.getFluid("oilgc"), 50), new FluidStack[] { Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), @@ -1110,15 +975,37 @@ public class DistilleryRecipes implements Runnable { null, 20, 96); + } - if (!GregTech_API.mIC2Classic) { - GT_Values.RA.addDistillationTowerRecipe( - new FluidStack(FluidRegistry.getFluid("ic2biomass"), 3000), - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("ic2biogas"), 8000), - Materials.Water.getFluid(125L) }, - ItemList.IC2_Fertilizer.get(1), - 250, - 480); + public void addUniversalDistillationRecipewithCircuit(FluidStack aInput, ItemStack[] aCircuit, + FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt) { + for (int i = 0; i < Math.min(aOutputs.length, 11); i++) { + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(i + 1)).itemOutputs(aOutput2) + .fluidInputs(aInput).fluidOutputs(aOutputs[i]).duration(2 * aDuration).eut(aEUt / 4) + .addTo(sDistilleryRecipes); + } + + GT_Values.RA.stdBuilder().itemInputs(aCircuit).itemOutputs(aOutput2).fluidInputs(aInput).fluidOutputs(aOutputs) + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sDistillationRecipes); + } + + public void addUniversalDistillationRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, + int aDuration, int aEUt) { + if (aOutput2 == null) { + for (int i = 0; i < Math.min(aOutputs.length, 11); i++) { + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(i + 1)).noItemOutputs() + .fluidInputs(aInput).fluidOutputs(aOutputs[i]).duration(2 * aDuration).eut(aEUt / 4) + .addTo(sDistilleryRecipes); + } + } else { + for (int i = 0; i < Math.min(aOutputs.length, 11); i++) { + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(i + 1)).itemOutputs(aOutput2) + .fluidInputs(aInput).fluidOutputs(aOutputs[i]).duration(2 * aDuration).eut(aEUt / 4) + .addTo(sDistilleryRecipes); + } } + + GT_Values.RA.stdBuilder().noItemInputs().itemOutputs(aOutput2).fluidInputs(aInput).fluidOutputs(aOutputs) + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sDistillationRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ElectrolyzerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ElectrolyzerRecipes.java index f81db12c0e..2110c49d20 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ElectrolyzerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ElectrolyzerRecipes.java @@ -1,5 +1,10 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; +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 net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -8,6 +13,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -17,427 +23,186 @@ public class ElectrolyzerRecipes implements Runnable { @Override public void run() { // H2O = 2H + O - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(1), - ItemList.Cell_Empty.get(1L), - Materials.Water.getFluid(1000L), - Materials.Hydrogen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 2000, - 30); - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(2), - ItemList.Cell_Empty.get(1L), - GT_ModHandler.getDistilledWater(1000L), - Materials.Hydrogen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 2000, - 30); - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(3), - ItemList.Cell_Empty.get(2L), - Materials.Water.getFluid(1000L), - Materials.Oxygen.getGas(1000L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 2000, - 30); - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(4), - ItemList.Cell_Empty.get(2L), - GT_ModHandler.getDistilledWater(1000L), - Materials.Oxygen.getGas(1000L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 2000, - 30); - GT_Values.RA.addElectrolyzerRecipe( - GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L), - ItemList.Cell_Empty.get(2L), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 30, - 30); - GT_Values.RA.addElectrolyzerRecipe( - GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Hydrogen.getGas(2000L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 30, - 30); - GT_Values.RA.addElectrolyzerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), - 0, - GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 1470, - 30); - - GT_Values.RA.addElectrolyzerRecipe( - ItemList.Dye_Bonemeal.get(3L), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 98, - 26); - GT_Values.RA.addElectrolyzerRecipe( - new ItemStack(Blocks.sand, 8, 0), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 500, - 25); - GT_Values.RA.addElectrolyzerRecipe( - new ItemStack(Blocks.sand, 8, 1), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 500, - 25); - - GT_Values.RA.addElectrolyzerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 4), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 100, - 64); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1), ItemList.Cell_Empty.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L)) + .fluidInputs(Materials.Water.getFluid(1000L)).fluidOutputs(Materials.Hydrogen.getGas(2000L)) + .duration(1 * MINUTES + 40 * SECONDS).eut(30).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2), ItemList.Cell_Empty.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L)) + .fluidInputs(GT_ModHandler.getDistilledWater(1000L)).fluidOutputs(Materials.Hydrogen.getGas(2000L)) + .duration(1 * MINUTES + 40 * SECONDS).eut(30).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(3), ItemList.Cell_Empty.get(2L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L)) + .fluidInputs(Materials.Water.getFluid(1000L)).fluidOutputs(Materials.Oxygen.getGas(1000L)) + .duration(1 * MINUTES + 40 * SECONDS).eut(30).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4), ItemList.Cell_Empty.get(2L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L)) + .fluidInputs(GT_ModHandler.getDistilledWater(1000L)).fluidOutputs(Materials.Oxygen.getGas(1000L)) + .duration(1 * MINUTES + 40 * SECONDS).eut(30).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L), ItemList.Cell_Empty.get(2L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L)) + .noFluidInputs().noFluidOutputs().duration(1 * SECONDS + 10 * TICKS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L)).noFluidInputs() + .fluidOutputs(Materials.Hydrogen.getGas(2000L)).duration(1 * SECONDS + 10 * TICKS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), ItemList.Cell_Empty.get(0)) + .itemOutputs(GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L)).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES + 13 * SECONDS + 10 * TICKS).eut(30).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Dye_Bonemeal.get(3L), ItemList.Cell_Empty.get(0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L)).noFluidInputs() + .noFluidOutputs().duration(4 * SECONDS + 18 * TICKS).eut(26).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.sand, 8, 0), ItemList.Cell_Empty.get(0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L)).noFluidInputs() + .noFluidOutputs().duration(25 * SECONDS).eut(25).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.sand, 8, 1), ItemList.Cell_Empty.get(0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L)).noFluidInputs() + .noFluidOutputs().duration(25 * SECONDS).eut(25).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1), + ItemList.Cell_Empty.get(0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 4)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(64).addTo(sElectrolyzerRecipes); // ZnS = Zn + S + 1 Ga(9.17%) - GT_Values.RA.addElectrolyzerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sphalerite, 2), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gallium, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 10000, 10000, 917, 0, 0, 0 }, - 200, - 30); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sphalerite, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gallium, 1)) + .outputChances(new int[] { 10000, 10000, 917 }).noFluidInputs().noFluidOutputs().duration(10 * SECONDS) + .eut(30).addTo(sElectrolyzerRecipes); // IC2 Fertilizer = H2O + CaCO3 + C - GT_Values.RA.addElectrolyzerRecipe( - ItemList.IC2_Fertilizer.get(1L), - GT_Values.NI, - GT_Values.NF, - Materials.Water.getFluid(1000L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 100, - 30); + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Fertilizer.get(1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L)) + .noFluidInputs().fluidOutputs(Materials.Water.getFluid(1000L)).duration(5 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); // NaOH = Na + O + H - GT_Values.RA.addElectrolyzerRecipe( - Materials.SodiumHydroxide.getDust(3), - Materials.Empty.getCells(1), - GT_Values.NF, - Materials.Oxygen.getGas(1000), - Materials.Sodium.getDust(1), - Materials.Hydrogen.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - new int[] { 10000, 10000 }, - 1000, - 60); - - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.CarbonDioxide.getGas(1000), - Materials.Oxygen.getGas(2000), - Materials.Carbon.getDust(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 300, - 120); - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(11), - Materials.Empty.getCells(2), - Materials.CarbonDioxide.getGas(1000), - GT_Values.NF, - Materials.Carbon.getDust(1), - Materials.Oxygen.getCells(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 300, - 120); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumHydroxide.getDust(3), Materials.Empty.getCells(1)) + .itemOutputs(Materials.Sodium.getDust(1), Materials.Hydrogen.getCells(1)) + .outputChances(new int[] { 10000, 10000 }).noFluidInputs().fluidOutputs(Materials.Oxygen.getGas(1000)) + .duration(50 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Carbon.getDust(1)).fluidInputs(Materials.CarbonDioxide.getGas(1000)) + .fluidOutputs(Materials.Oxygen.getGas(2000)).duration(15 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(11), Materials.Empty.getCells(2)) + .itemOutputs(Materials.Carbon.getDust(1), Materials.Oxygen.getCells(2)) + .fluidInputs(Materials.CarbonDioxide.getGas(1000)).noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); // SO2 = S + 2O - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.SulfurDioxide.getGas(1000), - Materials.Oxygen.getGas(2000), - Materials.Sulfur.getDust(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 300, - 120); - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.getIntegratedCircuit(11), - Materials.Empty.getCells(2), - Materials.SulfurDioxide.getGas(1000), - GT_Values.NF, - Materials.Sulfur.getDust(1), - Materials.Oxygen.getCells(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 300, - 120); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Sulfur.getDust(1)).fluidInputs(Materials.SulfurDioxide.getGas(1000)) + .fluidOutputs(Materials.Oxygen.getGas(2000)).duration(15 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(11), Materials.Empty.getCells(2)) + .itemOutputs(Materials.Sulfur.getDust(1), Materials.Oxygen.getCells(2)) + .fluidInputs(Materials.SulfurDioxide.getGas(1000)).noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sElectrolyzerRecipes); // NaCl = Na +Cl - GT_Values.RA.addElectrolyzerRecipe( - Materials.Salt.getDust(2), - GT_Values.NI, - GT_Values.NF, - Materials.Chlorine.getGas(1000), - Materials.Sodium.getDust(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 320, - 30); + GT_Values.RA.stdBuilder().itemInputs(Materials.Salt.getDust(2)).itemOutputs(Materials.Sodium.getDust(1)) + .noFluidInputs().fluidOutputs(Materials.Chlorine.getGas(1000)).duration(16 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); // (NaCl·H2O)= NaOH + H - GT_Values.RA.addElectrolyzerRecipe( - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.SaltWater.getFluid(1000), - Materials.Chlorine.getGas(1000), - Materials.SodiumHydroxide.getDust(3), - Materials.Hydrogen.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); - GT_Values.RA.addElectrolyzerRecipe( - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.SaltWater.getFluid(1000), - Materials.Hydrogen.getGas(1000), - Materials.SodiumHydroxide.getDust(3), - Materials.Chlorine.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.SodiumHydroxide.getDust(3), Materials.Hydrogen.getCells(1)) + .fluidInputs(Materials.SaltWater.getFluid(1000)).fluidOutputs(Materials.Chlorine.getGas(1000)) + .duration(36 * SECONDS).eut(30).addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.SodiumHydroxide.getDust(3), Materials.Chlorine.getCells(1)) + .fluidInputs(Materials.SaltWater.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getGas(1000)) + .duration(36 * SECONDS).eut(30).addTo(sElectrolyzerRecipes); // HCl = H + Cl - GT_Values.RA.addElectrolyzerRecipe( - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(1), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Chlorine.getGas(1000), - Materials.Hydrogen.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); - GT_Values.RA.addElectrolyzerRecipe( - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(11), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Hydrogen.getGas(1000), - Materials.Chlorine.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); - - GT_Values.RA.addElectrolyzerRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - Materials.Chlorine.getGas(1000), - Materials.Hydrogen.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); - GT_Values.RA.addElectrolyzerRecipe( - Materials.HydrochloricAcid.getCells(1), - GT_Utility.getIntegratedCircuit(11), - GT_Values.NF, - Materials.Hydrogen.getGas(1000), - Materials.Chlorine.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 720, - 30); + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Hydrogen.getCells(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.Chlorine.getGas(1000)).duration(36 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chlorine.getCells(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Materials.Hydrogen.getGas(1000)).duration(36 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Hydrogen.getCells(1)).noFluidInputs() + .fluidOutputs(Materials.Chlorine.getGas(1000)).duration(36 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.HydrochloricAcid.getCells(1), GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.Chlorine.getCells(1)).noFluidInputs() + .fluidOutputs(Materials.Hydrogen.getGas(1000)).duration(36 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); // 2NaHSO4 = 2H + Na2S2O8 - GT_Values.RA.addElectrolyzerRecipe( - Materials.SodiumBisulfate.getDust(14), - Materials.Empty.getCells(2), - null, - Materials.SodiumPersulfate.getFluid(1000), - Materials.Hydrogen.getCells(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 600, - 30); - - GT_Values.RA.addElectrolyzerRecipe( - GT_Values.NI, - GT_Values.NI, - new FluidStack(ItemList.sLeadZincSolution, 8000), - Materials.Water.getFluid(2000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lead, 3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 4), - null, - null, - null, - 300, - 192); - - GT_Values.RA.addElectrolyzerRecipe( - ItemList.Cell_Empty.get(1), - null, - new FluidStack(ItemList.sBlueVitriol, 2000), - Materials.SulfuricAcid.getFluid(1000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 900, - 30); - GT_Values.RA.addElectrolyzerRecipe( - ItemList.Cell_Empty.get(1), - null, - new FluidStack(ItemList.sNickelSulfate, 2000), - Materials.SulfuricAcid.getFluid(1000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 900, - 30); - GT_Values.RA.addElectrolyzerRecipe( - ItemList.Cell_Empty.get(1), - null, - new FluidStack(ItemList.sGreenVitriol, 2000), - Materials.SulfuricAcid.getFluid(1000), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 900, - 30); + + GT_Values.RA.stdBuilder().itemInputs(Materials.SodiumBisulfate.getDust(14), Materials.Empty.getCells(2)) + .itemOutputs(Materials.Hydrogen.getCells(2)).noFluidInputs() + .fluidOutputs(Materials.SodiumPersulfate.getFluid(1000)).duration(30 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().noItemInputs() + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lead, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 4)) + .fluidInputs(new FluidStack(ItemList.sLeadZincSolution, 8000)) + .fluidOutputs(Materials.Water.getFluid(2000)).duration(15 * SECONDS).eut(192) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Empty.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1)) + .fluidInputs(new FluidStack(ItemList.sBlueVitriol, 2000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(45 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Empty.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1)) + .fluidInputs(new FluidStack(ItemList.sNickelSulfate, 2000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(45 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Empty.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1)) + .fluidInputs(new FluidStack(ItemList.sGreenVitriol, 2000)) + .fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).duration(45 * SECONDS).eut(30) + .addTo(sElectrolyzerRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java index a080e8fa35..ee8078bd06 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java @@ -1,5 +1,8 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsOreAlum; @@ -8,13 +11,10 @@ public class ElectromagneticSeparatorRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addElectromagneticSeparatorRecipe( - MaterialsOreAlum.SluiceSand.getDust(1), - Materials.Iron.getDust(1), - Materials.Neodymium.getDust(1), - Materials.Chrome.getDust(1), - new int[] { 4000, 2000, 2000 }, - 200, - 240); + GT_Values.RA.stdBuilder().itemInputs(MaterialsOreAlum.SluiceSand.getDust(1)) + .itemOutputs(Materials.Iron.getDust(1), Materials.Neodymium.getDust(1), Materials.Chrome.getDust(1)) + .outputChances(4000, 2000, 2000).noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(240) + .addTo(sElectroMagneticSeparatorRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ExtractorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ExtractorRecipes.java index a63029db3e..f07af970f3 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ExtractorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ExtractorRecipes.java @@ -1,144 +1,44 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isEBXLLoaded; +import static gregtech.api.util.GT_ModHandler.getIC2Item; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtractorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.WILDCARD; 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.OrePrefixes; -import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class ExtractorRecipes implements Runnable { @Override public void run() { - GT_ModHandler.addExtractionRecipe(new ItemStack(Blocks.bookshelf, 1, 32767), new ItemStack(Items.book, 3, 0)); - GT_ModHandler.addExtractionRecipe( + addExtractionRecipe(new ItemStack(Blocks.bookshelf, 1, WILDCARD), new ItemStack(Items.book, 3, 0)); + addExtractionRecipe( new ItemStack(Items.slime_ball, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 2L)); - GT_ModHandler.addExtractionRecipe( + addExtractionRecipe( ItemList.IC2_Resin.get(1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 3L)); - GT_ModHandler.addExtractionRecipe( - GT_ModHandler.getIC2Item("rubberSapling", 1L), + addExtractionRecipe( + getIC2Item("rubberSapling", 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 1L)); - GT_ModHandler.addExtractionRecipe( - GT_ModHandler.getIC2Item("rubberLeaves", 16L), + addExtractionRecipe( + getIC2Item("rubberLeaves", 16L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 1L)); - GT_ModHandler.addExtractionRecipe(ItemList.Cell_Air.get(1L), ItemList.Cell_Empty.get(1L)); - if (isEBXLLoaded) { - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "waterplant1", 1, 0), - new ItemStack(Items.dye, 4, 2)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "vines", 1, 0), - new ItemStack(Items.dye, 4, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 11), - new ItemStack(Items.dye, 4, 11)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 10), - new ItemStack(Items.dye, 4, 5)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 9), - new ItemStack(Items.dye, 4, 14)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 8), - new ItemStack(Items.dye, 4, 14)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 7), - new ItemStack(Items.dye, 4, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 6), - new ItemStack(Items.dye, 4, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 5), - new ItemStack(Items.dye, 4, 11)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 0), - new ItemStack(Items.dye, 4, 9)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 4), - new ItemStack(Items.dye, 4, 11)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 3), - new ItemStack(Items.dye, 4, 13)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower1", 1, 3), - new ItemStack(Items.dye, 4, 5)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 2), - new ItemStack(Items.dye, 4, 5)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower1", 1, 1), - new ItemStack(Items.dye, 4, 12)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 15), - new ItemStack(Items.dye, 4, 11)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 14), - new ItemStack(Items.dye, 4, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 13), - new ItemStack(Items.dye, 4, 9)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 12), - new ItemStack(Items.dye, 4, 14)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 11), - new ItemStack(Items.dye, 4, 7)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower1", 1, 7), - new ItemStack(Items.dye, 4, 7)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower1", 1, 2), - new ItemStack(Items.dye, 4, 11)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 13), - new ItemStack(Items.dye, 4, 6)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 6), - new ItemStack(Items.dye, 4, 12)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 5), - new ItemStack(Items.dye, 4, 10)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 2), - new ItemStack(Items.dye, 4, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 1), - new ItemStack(Items.dye, 4, 9)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 0), - new ItemStack(Items.dye, 4, 13)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 7), - getModItem(GT_MachineRecipeLoader.aTextEBXL, "extrabiomes.dye", 1, 0)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 1), - getModItem(GT_MachineRecipeLoader.aTextEBXL, "extrabiomes.dye", 1, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower3", 1, 12), - getModItem(GT_MachineRecipeLoader.aTextEBXL, "extrabiomes.dye", 1, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 4), - getModItem(GT_MachineRecipeLoader.aTextEBXL, "extrabiomes.dye", 1, 1)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower1", 1, 6), - getModItem(GT_MachineRecipeLoader.aTextEBXL, "extrabiomes.dye", 1, 2)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 8), - getModItem(GT_MachineRecipeLoader.aTextEBXL, "extrabiomes.dye", 1, 3)); - GT_ModHandler.addExtractionRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "flower2", 1, 3), - getModItem(GT_MachineRecipeLoader.aTextEBXL, "extrabiomes.dye", 1, 3)); - } + addExtractionRecipe(ItemList.Cell_Air.get(1L), ItemList.Cell_Empty.get(1L)); + } + + public void addExtractionRecipe(ItemStack input, ItemStack output) { + output = GT_OreDictUnificator.get(true, output); + GT_Values.RA.stdBuilder().itemInputs(input).itemOutputs(output).noFluidInputs().noFluidOutputs() + .duration(15 * SECONDS).eut(2).addTo(sExtractorRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ExtruderRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ExtruderRecipes.java index 34bf1a5968..7b021dc221 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ExtruderRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ExtruderRecipes.java @@ -1,5 +1,9 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; @@ -7,18 +11,13 @@ public class ExtruderRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addExtruderRecipe( - ItemList.FR_Wax.get(1L), - ItemList.Shape_Extruder_Cell.get(0L), - ItemList.FR_WaxCapsule.get(1L), - 64, - 16); + // wax capsule + GT_Values.RA.stdBuilder().itemInputs(ItemList.FR_Wax.get(1L), ItemList.Shape_Extruder_Cell.get(0L)) + .itemOutputs(ItemList.FR_WaxCapsule.get(1L)).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sExtruderRecipes); - GT_Values.RA.addExtruderRecipe( - ItemList.FR_RefractoryWax.get(1L), - ItemList.Shape_Extruder_Cell.get(0L), - ItemList.FR_RefractoryCapsule.get(1L), - 128, - 16); + GT_Values.RA.stdBuilder().itemInputs(ItemList.FR_RefractoryWax.get(1L), ItemList.Shape_Extruder_Cell.get(0L)) + .itemOutputs(ItemList.FR_WaxCapsule.get(1L)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(16).addTo(sExtruderRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FermenterRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FermenterRecipes.java index 469be24dec..7cab676e0e 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FermenterRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FermenterRecipes.java @@ -1,5 +1,9 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFermentingRecipes; +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 net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraftforge.fluids.FluidRegistry; @@ -12,218 +16,189 @@ public class FermenterRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addFermentingRecipe( - Materials.Biomass.getFluid(100), - Materials.FermentedBiomass.getFluid(100), - 150, - false); - GT_Values.RA.addFermentingRecipe( - new FluidStack(FluidRegistry.getFluid("ic2biomass"), 100), - Materials.FermentedBiomass.getFluid(100), - 150, - false); - - GT_Values.RA.addFermentingRecipe(getFluidStack("milk", 50), getFluidStack("potion.mundane", 25), 1024, false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.lemonjuice", 50), - getFluidStack("potion.limoncello", 25), - 1024, - true); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.applejuice", 50), - getFluidStack("potion.cider", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.goldenapplejuice", 50), - getFluidStack("potion.goldencider", 25), - 1024, - true); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.idunsapplejuice", 50), - getFluidStack("potion.notchesbrew", 25), - 1024, - true); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.reedwater", 50), - getFluidStack("potion.rum", 25), - 1024, - true); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.rum", 50), - getFluidStack("potion.piratebrew", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.grapejuice", 50), - getFluidStack("potion.wine", 25), - 1024, - false); - GT_Values.RA - .addFermentingRecipe(getFluidStack("potion.wine", 50), getFluidStack("potion.vinegar", 10), 2048, true); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.wheatyjuice", 50), - getFluidStack("potion.scotch", 25), - 1024, - true); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.scotch", 50), - getFluidStack("potion.glenmckenner", 10), - 2048, - true); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.wheatyhopsjuice", 50), - getFluidStack("potion.beer", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.hopsjuice", 50), - getFluidStack("potion.darkbeer", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.darkbeer", 50), - getFluidStack("potion.dragonblood", 10), - 2048, - true); - - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.beer", 75), - getFluidStack("potion.vinegar", 50), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.cider", 75), - getFluidStack("potion.vinegar", 50), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.goldencider", 75), - getFluidStack("potion.vinegar", 50), - 2048, - true); - GT_Values.RA - .addFermentingRecipe(getFluidStack("potion.rum", 75), getFluidStack("potion.vinegar", 50), 2048, false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.wine", 75), - getFluidStack("potion.vinegar", 50), - 2048, - false); - - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.awkward", 50), - getFluidStack("potion.weakness", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.mundane", 50), - getFluidStack("potion.weakness", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.thick", 50), - getFluidStack("potion.weakness", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.poison", 50), - getFluidStack("potion.damage", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.health", 50), - getFluidStack("potion.damage", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.waterbreathing", 50), - getFluidStack("potion.damage", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.nightvision", 50), - getFluidStack("potion.invisibility", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.fireresistance", 50), - getFluidStack("potion.slowness", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.speed", 50), - getFluidStack("potion.slowness", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.strength", 50), - getFluidStack("potion.weakness", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.regen", 50), - getFluidStack("potion.poison", 25), - 1024, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.poison.strong", 50), - getFluidStack("potion.damage.strong", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.health.strong", 50), - getFluidStack("potion.damage.strong", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.speed.strong", 50), - getFluidStack("potion.slowness.strong", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.strength.strong", 50), - getFluidStack("potion.weakness.strong", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.nightvision.long", 50), - getFluidStack("potion.invisibility.long", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.regen.strong", 50), - getFluidStack("potion.poison.strong", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.poison.long", 50), - getFluidStack("potion.damage.long", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.waterbreathing.long", 50), - getFluidStack("potion.damage.long", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.fireresistance.long", 50), - getFluidStack("potion.slowness.long", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.speed.long", 50), - getFluidStack("potion.slowness.long", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.strength.long", 50), - getFluidStack("potion.weakness.long", 10), - 2048, - false); - GT_Values.RA.addFermentingRecipe( - getFluidStack("potion.regen.long", 50), - getFluidStack("potion.poison.long", 10), - 2048, - false); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Biomass.getFluid(100)) + .fluidOutputs(Materials.FermentedBiomass.getFluid(100)).duration(7 * SECONDS + 10 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 100)) + .fluidOutputs(Materials.FermentedBiomass.getFluid(100)).duration(7 * SECONDS + 10 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("milk", 50)) + .fluidOutputs(getFluidStack("potion.mundane", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.lemonjuice", 50)) + .fluidOutputs(getFluidStack("potion.limoncello", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.applejuice", 50)) + .fluidOutputs(getFluidStack("potion.cider", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(getFluidStack("potion.goldenapplejuice", 50)) + .fluidOutputs(getFluidStack("potion.goldencider", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(getFluidStack("potion.idunsapplejuice", 50)) + .fluidOutputs(getFluidStack("potion.notchesbrew", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.reedwater", 50)) + .fluidOutputs(getFluidStack("potion.rum", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.rum", 50)) + .fluidOutputs(getFluidStack("potion.piratebrew", 10)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.grapejuice", 50)) + .fluidOutputs(getFluidStack("potion.wine", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.wine", 50)) + .fluidOutputs(getFluidStack("potion.vinegar", 10)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.wheatyjuice", 50)) + .fluidOutputs(getFluidStack("potion.scotch", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.scotch", 50)) + .fluidOutputs(getFluidStack("potion.glenmckenner", 10)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(getFluidStack("potion.wheatyhopsjuice", 50)).fluidOutputs(getFluidStack("potion.beer", 25)) + .duration(51 * SECONDS + 4 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.hopsjuice", 50)) + .fluidOutputs(getFluidStack("potion.darkbeer", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.darkbeer", 50)) + .fluidOutputs(getFluidStack("potion.dragonblood", 10)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.beer", 75)) + .fluidOutputs(getFluidStack("potion.vinegar", 50)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.cider", 75)) + .fluidOutputs(getFluidStack("potion.vinegar", 50)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.goldencider", 75)) + .fluidOutputs(getFluidStack("potion.vinegar", 50)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.rum", 75)) + .fluidOutputs(getFluidStack("potion.vinegar", 50)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.wine", 75)) + .fluidOutputs(getFluidStack("potion.vinegar", 50)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.awkward", 50)) + .fluidOutputs(getFluidStack("potion.weakness", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.mundane", 50)) + .fluidOutputs(getFluidStack("potion.weakness", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.thick", 50)) + .fluidOutputs(getFluidStack("potion.weakness", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.poison", 50)) + .fluidOutputs(getFluidStack("potion.damage", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.health", 50)) + .fluidOutputs(getFluidStack("potion.damage", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.waterbreathing", 50)) + .fluidOutputs(getFluidStack("potion.damage", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.nightvision", 50)) + .fluidOutputs(getFluidStack("potion.invisibility", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.fireresistance", 50)) + .fluidOutputs(getFluidStack("potion.slowness", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.speed", 50)) + .fluidOutputs(getFluidStack("potion.slowness", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.strength", 50)) + .fluidOutputs(getFluidStack("potion.weakness", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.regen", 50)) + .fluidOutputs(getFluidStack("potion.poison", 25)).duration(51 * SECONDS + 4 * TICKS).eut(2) + .addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.poison.strong", 50)) + .fluidOutputs(getFluidStack("potion.damage.strong", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.health.strong", 50)) + .fluidOutputs(getFluidStack("potion.damage.strong", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.speed.strong", 50)) + .fluidOutputs(getFluidStack("potion.slowness.strong", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(getFluidStack("potion.strength.strong", 50)) + .fluidOutputs(getFluidStack("potion.weakness.strong", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(getFluidStack("potion.nightvision.long", 50)) + .fluidOutputs(getFluidStack("potion.invisibility.long", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.regen.strong", 50)) + .fluidOutputs(getFluidStack("potion.poison.strong", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.poison.long", 50)) + .fluidOutputs(getFluidStack("potion.damage.long", 10)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(getFluidStack("potion.waterbreathing.long", 50)) + .fluidOutputs(getFluidStack("potion.damage.long", 10)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(getFluidStack("potion.fireresistance.long", 50)) + .fluidOutputs(getFluidStack("potion.slowness.long", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.speed.long", 50)) + .fluidOutputs(getFluidStack("potion.slowness.long", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.strength.long", 50)) + .fluidOutputs(getFluidStack("potion.weakness.long", 10)) + .duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS).eut(2).addTo(sFermentingRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(getFluidStack("potion.regen.long", 50)) + .fluidOutputs(getFluidStack("potion.poison.long", 10)).duration(1 * MINUTES + 42 * SECONDS + 8 * TICKS) + .eut(2).addTo(sFermentingRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FluidCannerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FluidCannerRecipes.java index caafd7f468..6c83998bec 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FluidCannerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FluidCannerRecipes.java @@ -1,5 +1,7 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -8,45 +10,42 @@ public class FluidCannerRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addFluidCannerRecipe( - ItemList.Battery_Hull_LV.get(1L), - ItemList.IC2_ReBattery.get(1L), - Materials.Redstone.getMolten(288L), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - ItemList.Battery_Hull_LV.get(1L), - ItemList.Battery_SU_LV_Mercury.getWithCharge(1L, Integer.MAX_VALUE), - Materials.Mercury.getFluid(1000L), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - ItemList.Battery_Hull_MV.get(1L), - ItemList.Battery_SU_MV_Mercury.getWithCharge(1L, Integer.MAX_VALUE), - Materials.Mercury.getFluid(4000L), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - ItemList.Battery_Hull_HV.get(1L), - ItemList.Battery_SU_HV_Mercury.getWithCharge(1L, Integer.MAX_VALUE), - Materials.Mercury.getFluid(16000L), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - ItemList.Battery_Hull_LV.get(1L), - ItemList.Battery_SU_LV_SulfuricAcid.getWithCharge(1L, Integer.MAX_VALUE), - Materials.SulfuricAcid.getFluid(1000L), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - ItemList.Battery_Hull_MV.get(1L), - ItemList.Battery_SU_MV_SulfuricAcid.getWithCharge(1L, Integer.MAX_VALUE), - Materials.SulfuricAcid.getFluid(4000L), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - ItemList.Battery_Hull_HV.get(1L), - ItemList.Battery_SU_HV_SulfuricAcid.getWithCharge(1L, Integer.MAX_VALUE), - Materials.SulfuricAcid.getFluid(16000L), - GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe( - ItemList.TF_Vial_FieryTears.get(1L), - ItemList.Bottle_Empty.get(1L), - GT_Values.NF, - Materials.FierySteel.getFluid(250L)); + GT_Values.RA.stdBuilder().itemInputs(ItemList.Battery_Hull_LV.get(1)).itemOutputs(ItemList.IC2_ReBattery.get(1)) + .fluidInputs(Materials.Redstone.getMolten(288)).noFluidOutputs().duration(4).eut(1) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Battery_Hull_LV.get(1)) + .itemOutputs(ItemList.Battery_SU_LV_Mercury.getWithCharge(1, Integer.MAX_VALUE)) + .fluidInputs(Materials.Mercury.getFluid(1000)).noFluidOutputs().duration(16).eut(1) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Battery_Hull_MV.get(1)) + .itemOutputs(ItemList.Battery_SU_MV_Mercury.getWithCharge(1, Integer.MAX_VALUE)) + .fluidInputs(Materials.Mercury.getFluid(4000)).noFluidOutputs().duration(64).eut(1) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Battery_Hull_HV.get(1)) + .itemOutputs(ItemList.Battery_SU_HV_Mercury.getWithCharge(1, Integer.MAX_VALUE)) + .fluidInputs(Materials.Mercury.getFluid(16000)).noFluidOutputs().duration(258).eut(1) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Battery_Hull_LV.get(1)) + .itemOutputs(ItemList.Battery_SU_LV_SulfuricAcid.getWithCharge(1, Integer.MAX_VALUE)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)).noFluidOutputs().duration(16).eut(1) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Battery_Hull_MV.get(1)) + .itemOutputs(ItemList.Battery_SU_MV_SulfuricAcid.getWithCharge(1, Integer.MAX_VALUE)) + .fluidInputs(Materials.SulfuricAcid.getFluid(4000)).noFluidOutputs().duration(64).eut(1) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Battery_Hull_HV.get(1)) + .itemOutputs(ItemList.Battery_SU_HV_SulfuricAcid.getWithCharge(1, Integer.MAX_VALUE)) + .fluidInputs(Materials.SulfuricAcid.getFluid(16000)).noFluidOutputs().duration(258).eut(1) + .addTo(sFluidCannerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.TF_Vial_FieryTears.get(1)) + .itemOutputs(ItemList.Bottle_Empty.get(1)).noFluidInputs() + .fluidOutputs(Materials.FierySteel.getFluid(250)).duration(4).eut(1).addTo(sFluidCannerRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java index 27cc9ff55c..6d6309197b 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java @@ -1,522 +1,303 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.*; +import static gregtech.api.enums.ModIDs.Railcraft; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isBartWorksLoaded; +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 net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import net.minecraftforge.common.ForgeHooks; 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_Log; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Utility; -import gregtech.common.GT_DummyWorld; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class FluidExtractorRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Dye_SquidInk.get(1L), - GT_Values.NI, - getFluidStack("squidink", 144), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Dye_Indigo.get(1L), - GT_Values.NI, - getFluidStack("indigo", 144), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Crop_Drop_Indigo.get(1L), - GT_Values.NI, - getFluidStack("indigo", 144), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Crop_Drop_MilkWart.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Milk, 1L), - GT_ModHandler.getMilk(150L), - 1000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Crop_Drop_OilBerry.get(1L), - GT_Values.NI, - Materials.Oil.getFluid(100L), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Crop_Drop_UUMBerry.get(1L), - GT_Values.NI, - Materials.UUMatter.getFluid(4L), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Crop_Drop_UUABerry.get(1L), - GT_Values.NI, - Materials.UUAmplifier.getFluid(4L), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.fish, 1, 0), - GT_Values.NI, - Materials.FishOil.getFluid(40L), - 10000, - 16, - 4); - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.fish, 1, 1), - GT_Values.NI, - Materials.FishOil.getFluid(60L), - 10000, - 16, - 4); - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.fish, 1, 2), - GT_Values.NI, - Materials.FishOil.getFluid(70L), - 10000, - 16, - 4); - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.fish, 1, 3), - GT_Values.NI, - Materials.FishOil.getFluid(30L), - 10000, - 16, - 4); - - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.coal, 1, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L), - Materials.WoodTar.getFluid(100L), - 1000, - 30, - 16); - GT_Values.RA.addFluidExtractionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), - ItemList.IC2_Plantball.get(1L), - Materials.Creosote.getFluid(5L), - 100, - 16, - 4); - GT_Values.RA.addFluidExtractionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), - Materials.Water.getFluid(100L), - 10000, - 32, - 4); - GT_Values.RA.addFluidExtractionRecipe( - getModItem("Thaumcraft", "ItemResource", 1, 3), - GT_Values.NI, - Materials.Mercury.getFluid(1000L), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Mercury, 1L), - GT_Values.NI, - Materials.Mercury.getFluid(1000L), - 10000, - 128, - 4); - GT_Values.RA.addFluidExtractionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Monazite, 1L), - GT_Values.NI, - Materials.Helium.getGas(200L), - 10000, - 64, - 64); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem("IC2", "blockAlloyGlass", 1L, 0), - GT_Values.NI, - Materials.ReinforceGlass.getMolten(144), - 10000, - 100, - 1920); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_DC, "item.ReinforcedGlassPlate", 1L, 0), - GT_Values.NI, - Materials.ReinforceGlass.getMolten(72), - 10000, - 50, - 1920); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_DC, "item.ReinforcedGlassLense", 1L, 0), - GT_Values.NI, - Materials.ReinforceGlass.getMolten(54), - 10000, - 50, - 1920); - - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Long_Distance_Pipeline_Fluid.get(1L), - GT_Values.NI, - Materials.Steel.getMolten(19 * 144), - 10000, - 400, - 90); - - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Long_Distance_Pipeline_Item.get(1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 7L), - Materials.Tin.getMolten(12 * 144), - 10000, - 400, - 90); - - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Long_Distance_Pipeline_Fluid_Pipe.get(4L), - GT_Values.NI, - Materials.Steel.getMolten(189), - 10000, - 40, - 90); - - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Long_Distance_Pipeline_Item_Pipe.get(16L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 3L), - Materials.Steel.getMolten(324), - 10000, - 400, - 90); - - GT_Values.RA.addFluidExtractionRecipe( - GT_ModHandler.getIC2Item("TritiumCell", 1), - GT_ModHandler.getIC2Item("fuelRod", 1), - Materials.Tritium.getGas(32), - 10000, - 16, - 64); - - GT_Values.RA.addFluidExtractionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 1L), - null, - Materials.Glass.getMolten(72), - 10000, - 600, - 28); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 0), - GT_Values.NI, - Materials.Iron.getMolten(288), - 10000, - 300, - 60); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 1), - GT_Values.NI, - Materials.Iron.getMolten(144), - 10000, - 300, - 60); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 2), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 6), - Materials.Bronze.getMolten(1728), - 10000, - 300, - 60); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 13), - GT_Values.NI, - Materials.Steel.getMolten(288), - 10000, - 400, - 90); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 14), - GT_Values.NI, - Materials.Steel.getMolten(144), - 10000, - 400, - 90); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 15), - GT_Values.NI, - Materials.Steel.getMolten(1836), - 10000, - 400, - 90); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 0), - GT_Values.NI, - Materials.Aluminium.getMolten(288), - 10000, - 500, - 120); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 1), - GT_Values.NI, - Materials.Aluminium.getMolten(144), - 10000, - 500, - 120); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 2), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 12L), - Materials.Aluminium.getMolten(108L), - 10000, - 500, - 120); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 3), - GT_Values.NI, - Materials.StainlessSteel.getMolten(288), - 10000, - 600, - 180); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 4), - GT_Values.NI, - Materials.StainlessSteel.getMolten(144), - 10000, - 600, - 180); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 5), - GT_Values.NI, - Materials.StainlessSteel.getMolten(1836), - 10000, - 600, - 180); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 6), - GT_Values.NI, - Materials.Titanium.getMolten(288), - 10000, - 700, - 240); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 7), - GT_Values.NI, - Materials.Titanium.getMolten(144), - 10000, - 700, - 240); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 8), - GT_Values.NI, - Materials.Titanium.getMolten(1836), - 10000, - 700, - 240); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 9), - GT_Values.NI, - Materials.TungstenSteel.getMolten(288), - 10000, - 800, - 360); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 10), - GT_Values.NI, - Materials.TungstenSteel.getMolten(144), - 10000, - 800, - 360); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 11), - GT_Values.NI, - Materials.TungstenSteel.getMolten(1836), - 10000, - 800, - 360); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 12), - GT_Values.NI, - Materials.Palladium.getMolten(288), - 10000, - 900, - 480); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 13), - GT_Values.NI, - Materials.Palladium.getMolten(144), - 10000, - 900, - 480); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 14), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Chrome, 6L), - Materials.NiobiumTitanium.getMolten(1728), - 10000, - 900, - 480); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 0), - GT_Values.NI, - Materials.Iridium.getMolten(288), - 10000, - 1000, - 720); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 1), - GT_Values.NI, - Materials.Iridium.getMolten(144), - 10000, - 1000, - 720); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 2), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iridium, 6L), - Materials.Enderium.getMolten(1728), - 10000, - 1000, - 720); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 3), - GT_Values.NI, - Materials.Osmium.getMolten(288), - 10000, - 1100, - 960); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 4), - GT_Values.NI, - Materials.Osmium.getMolten(144), - 10000, - 1100, - 960); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 5), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Osmium, 6L), - Materials.Naquadah.getMolten(1728), - 10000, - 1100, - 960); - - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 6), - GT_Values.NI, - Materials.Neutronium.getMolten(288), - 10000, - 1200, - 1440); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 7), - GT_Values.NI, - Materials.Neutronium.getMolten(144), - 10000, - 1200, - 1440); - GT_Values.RA.addFluidExtractionRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 8), - GT_Values.NI, - Materials.Neutronium.getMolten(1836), - 10000, - 1200, - 1440); - - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.wheat_seeds, 1, 32767), - GT_Values.NI, - Materials.SeedOil.getFluid(10), - 10000, - 32, - 2); - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.melon_seeds, 1, 32767), - GT_Values.NI, - Materials.SeedOil.getFluid(10), - 10000, - 32, - 2); - GT_Values.RA.addFluidExtractionRecipe( - new ItemStack(Items.pumpkin_seeds, 1, 32767), - GT_Values.NI, - Materials.SeedOil.getFluid(10), - 10000, - 32, - 2); - GT_Values.RA.addFluidExtractionRecipe( - ItemList.Crop_Drop_Rape.get(1), - null, - Materials.SeedOil.getFluid(125), - 10000, - 32, - 2); - - GT_Values.RA.addFluidSmelterRecipe( - new ItemStack(Items.snowball, 1, 0), - GT_Values.NI, - Materials.Water.getFluid(250L), - 10000, - 32, - 4); - GT_Values.RA.addFluidSmelterRecipe( - new ItemStack(Blocks.snow, 1, 0), - GT_Values.NI, - Materials.Water.getFluid(1000L), - 10000, - 128, - 4); - GT_Values.RA.addFluidSmelterRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), - GT_Values.NI, - Materials.Ice.getSolid(1000L), - 10000, - 128, - 4); - GT_Values.RA.addFluidSmelterRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "phosphor", 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 1L), - Materials.Lava.getFluid(800L), - 1000, - 256, - 128); - - try { - GT_DummyWorld tWorld = (GT_DummyWorld) GT_Values.DW; - while (tWorld.mRandom.mIterationStep > 0) { - GT_Values.RA.addFluidExtractionRecipe( - GT_Utility.copyAmount(1L, ForgeHooks.getGrassSeed(tWorld)), - GT_Values.NI, - Materials.SeedOil.getFluid(5L), - 10000, - 64, - 2); - } - } catch (Throwable e) { - GT_Log.out.println( - "GT_Mod: failed to iterate somehow, maybe it's your Forge Version causing it. But it's not that important\n"); - e.printStackTrace(GT_Log.err); - } + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Dye_SquidInk.get(1L)).noItemOutputs().noFluidInputs() + .fluidOutputs(getFluidStack("squidink", 144)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Dye_Indigo.get(1L)).noItemOutputs().noFluidInputs() + .fluidOutputs(getFluidStack("indigo", 144)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Crop_Drop_Indigo.get(1L)).noItemOutputs().noFluidInputs() + .fluidOutputs(getFluidStack("indigo", 144)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Crop_Drop_MilkWart.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Milk, 1L)).outputChances(1000) + .noFluidInputs().fluidOutputs(GT_ModHandler.getMilk(150L)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Crop_Drop_OilBerry.get(1L)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.Oil.getFluid(100L)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Crop_Drop_UUMBerry.get(1L)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.UUMatter.getFluid(4L)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Crop_Drop_UUABerry.get(1L)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.UUAmplifier.getFluid(4L)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fish, 1, 0)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.FishOil.getFluid(40L)).duration(16 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fish, 1, 1)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.FishOil.getFluid(60L)).duration(16 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fish, 1, 2)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.FishOil.getFluid(70L)).duration(16 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.fish, 1, 3)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.FishOil.getFluid(30L)).duration(16 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.coal, 1, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L)).outputChances(1000) + .noFluidInputs().fluidOutputs(Materials.WoodTar.getFluid(100L)).duration(1 * SECONDS + 10 * TICKS) + .eut(16).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L)) + .itemOutputs(ItemList.IC2_Plantball.get(1L)).outputChances(100).noFluidInputs() + .fluidOutputs(Materials.Creosote.getFluid(5L)).duration(16 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.Water.getFluid(100L)).duration(1 * SECONDS + 12 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Thaumcraft.modID, "ItemResource", 1, 3)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Mercury.getFluid(1000L)).duration(6 * SECONDS + 8 * TICKS) + .eut(4).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Mercury, 1L)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Mercury.getFluid(1000L)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Monazite, 1L)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Helium.getGas(200L)) + .duration(3 * SECONDS + 4 * TICKS).eut(64).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(IndustrialCraft2.modID, "blockAlloyGlass", 1L, 0)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.ReinforceGlass.getMolten(144)) + .duration(5 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(NewHorizonsCoreMod.modID, "item.ReinforcedGlassPlate", 1L, 0)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.ReinforceGlass.getMolten(72)) + .duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(NewHorizonsCoreMod.modID, "item.ReinforcedGlassLense", 1L, 0)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.ReinforceGlass.getMolten(54)) + .duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Fluid.get(1L)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Steel.getMolten(19 * 144)).duration(20 * SECONDS).eut(90) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Item.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 7L)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.Tin.getMolten(12 * 144)).duration(20 * SECONDS).eut(90) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Fluid_Pipe.get(4L)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Steel.getMolten(189)).duration(2 * SECONDS).eut(90) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Item_Pipe.get(16L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 3L)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.Steel.getMolten(324)).duration(20 * SECONDS).eut(90) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("TritiumCell", 1)) + .itemOutputs(GT_ModHandler.getIC2Item("fuelRod", 1)).outputChances(10000).noFluidInputs() + .fluidOutputs(Materials.Tritium.getGas(32)).duration(16 * TICKS).eut(64).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 1L)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Glass.getMolten(72)).duration(30 * SECONDS) + .eut(28).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 0)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Iron.getMolten(288)).duration(15 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 1)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Iron.getMolten(144)).duration(15 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 6)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.Bronze.getMolten(1728)).duration(15 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 13)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Steel.getMolten(288)).duration(20 * SECONDS).eut(90) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 14)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Steel.getMolten(144)).duration(20 * SECONDS).eut(90) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 15)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Steel.getMolten(1836)).duration(20 * SECONDS).eut(90) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 0)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Aluminium.getMolten(288)).duration(25 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 1)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Aluminium.getMolten(144)).duration(25 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 12L)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.Aluminium.getMolten(108L)).duration(25 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 3)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.StainlessSteel.getMolten(288)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 4)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.StainlessSteel.getMolten(144)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 5)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.StainlessSteel.getMolten(1836)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 6)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Titanium.getMolten(288)).duration(35 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 7)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Titanium.getMolten(144)).duration(35 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 8)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Titanium.getMolten(1836)).duration(35 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 9)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.TungstenSteel.getMolten(288)).duration(40 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 10)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.TungstenSteel.getMolten(144)).duration(40 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 11)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.TungstenSteel.getMolten(1836)).duration(40 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 12)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Palladium.getMolten(288)).duration(45 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 13)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Palladium.getMolten(144)).duration(45 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 14)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Chrome, 6L)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.NiobiumTitanium.getMolten(1728)).duration(45 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 0)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Iridium.getMolten(288)).duration(50 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 1)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Iridium.getMolten(144)).duration(50 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iridium, 6L)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.Enderium.getMolten(1728)).duration(50 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 3)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Osmium.getMolten(288)).duration(55 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 4)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Osmium.getMolten(144)).duration(55 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 5)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Osmium, 6L)).outputChances(10000) + .noFluidInputs().fluidOutputs(Materials.Naquadah.getMolten(1728)).duration(55 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 6)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Neutronium.getMolten(288)).duration(60 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 7)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Neutronium.getMolten(144)).duration(60 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 8)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.Neutronium.getMolten(1836)).duration(60 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.wheat_seeds, 1, 32767)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.SeedOil.getFluid(10)).duration(1 * SECONDS + 12 * TICKS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.melon_seeds, 1, 32767)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.SeedOil.getFluid(10)).duration(1 * SECONDS + 12 * TICKS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.pumpkin_seeds, 1, 32767)).noItemOutputs() + .noFluidInputs().fluidOutputs(Materials.SeedOil.getFluid(10)).duration(1 * SECONDS + 12 * TICKS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Crop_Drop_Rape.get(1)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.SeedOil.getFluid(125)).duration(1 * SECONDS + 12 * TICKS).eut(2) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.snowball, 1, 0)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.Water.getFluid(250L)).duration(1 * SECONDS + 12 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.snow, 1, 0)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.Water.getFluid(1000L)).duration(6 * SECONDS + 8 * TICKS).eut(4) + .addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L)) + .noItemOutputs().noFluidInputs().fluidOutputs(Materials.Ice.getSolid(1000L)) + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sFluidExtractionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Forestry.modID, "phosphor", 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 1L)).outputChances(1000) + .noFluidInputs().fluidOutputs(Materials.Lava.getFluid(800L)).duration(12 * SECONDS + 16 * TICKS) + .eut(128).addTo(sFluidExtractionRecipes); // Beecombs fluid extractor recipes - if (isBartWorksLoaded) { + if (BartWorks.isModLoaded()) { // xenon GT_Values.RA.addFluidExtractionRecipe( - getModItem("gregtech", "gt.comb", 1L, 134), + getModItem(GregTech.modID, "gt.comb", 1L, 134), null, getFluidStack("xenon", 250), 100 * 100, @@ -524,7 +305,7 @@ public class FluidExtractorRecipes implements Runnable { 8192); // neon GT_Values.RA.addFluidExtractionRecipe( - getModItem("gregtech", "gt.comb", 1L, 135), + getModItem(GregTech.modID, "gt.comb", 1L, 135), null, getFluidStack("neon", 250), 100 * 100, @@ -532,7 +313,7 @@ public class FluidExtractorRecipes implements Runnable { 8192); // krpton GT_Values.RA.addFluidExtractionRecipe( - getModItem("gregtech", "gt.comb", 1L, 136), + getModItem(GregTech.modID, "gt.comb", 1L, 136), null, getFluidStack("krypton", 250), 100 * 100, diff --git a/src/main/java/gregtech/loaders/postload/recipes/FluidHeaterRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FluidHeaterRecipes.java index 6b5259d10a..18b9e2b388 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FluidHeaterRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FluidHeaterRecipes.java @@ -1,7 +1,12 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Utility; @@ -9,60 +14,48 @@ public class FluidHeaterRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.GrowthMediumRaw.getFluid(1000L), - Materials.GrowthMediumSterilized.getFluid(1000L), - 200, - 7680); - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.BioMediumRaw.getFluid(1000L), - Materials.BioMediumSterilized.getFluid(1000L), - 200, - 30720); - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.Water.getFluid(6L), - Materials.Water.getGas(960L), - 30, - 30); - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - GT_ModHandler.getDistilledWater(6L), - Materials.Water.getGas(960L), - 30, - 30); - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.SeedOil.getFluid(16L), - Materials.FryingOilHot.getFluid(16L), - 16, - 30); - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.FishOil.getFluid(16L), - Materials.FryingOilHot.getFluid(16L), - 16, - 30); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.GrowthMediumRaw.getFluid(1000)) + .fluidOutputs(Materials.GrowthMediumSterilized.getFluid(1000)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_IV).addTo(sFluidHeaterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.BioMediumRaw.getFluid(1000)) + .fluidOutputs(Materials.BioMediumSterilized.getFluid(1000)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_LuV).addTo(sFluidHeaterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(6)).fluidOutputs(Materials.Water.getGas(960)) + .duration(1 * SECONDS + 10 * TICKS).eut(30).addTo(sFluidHeaterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(GT_ModHandler.getDistilledWater(6)).fluidOutputs(Materials.Water.getGas(960)) + .duration(1 * SECONDS + 10 * TICKS).eut(30).addTo(sFluidHeaterRecipes); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.SeedOil.getFluid(16)).fluidOutputs(Materials.FryingOilHot.getFluid(16)) + .duration(16 * TICKS).eut(30).addTo(sFluidHeaterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.FishOil.getFluid(16)).fluidOutputs(Materials.FryingOilHot.getFluid(16)) + .duration(16 * TICKS).eut(30).addTo(sFluidHeaterRecipes); // Ca(CH3COO)2 = CH3COCH3 + CaO + CO2 - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.CalciumAcetateSolution.getFluid(1000), - Materials.Acetone.getFluid(1000), - 80, - 30); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.CalciumAcetateSolution.getFluid(1000)) + .fluidOutputs(Materials.Acetone.getFluid(1000)).duration(4 * SECONDS).eut(30) + .addTo(sFluidHeaterRecipes); // Fluid Sodium - GT_Values.RA.addFluidHeaterRecipe(Materials.Sodium.getDust(1), Materials.Sodium.getFluid(1000), 200, 120); - GT_Values.RA.addFluidHeaterRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.Acetone.getFluid(1000), - Materials.Ethenone.getGas(1000), - 160, - 160); + GT_Values.RA.stdBuilder().itemInputs(Materials.Sodium.getDust(1)).noItemOutputs().fluidInputs( + + ).fluidOutputs(Materials.Sodium.getFluid(1000)).duration(10 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sFluidHeaterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.Acetone.getFluid(1000)).fluidOutputs(Materials.Ethenone.getGas(1000)) + .duration(8 * SECONDS).eut(160).addTo(sFluidHeaterRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FluidSolidifierRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FluidSolidifierRecipes.java index f269344b46..5a6a6b9983 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FluidSolidifierRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FluidSolidifierRecipes.java @@ -1,8 +1,11 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.util.GT_RecipeBuilder.INGOTS; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.init.Blocks; @@ -31,454 +34,310 @@ public class FluidSolidifierRecipes implements Runnable { ItemList.IC2_Item_Casing_Lead.get(1L), ItemList.IC2_Item_Casing_Steel.get(1L) }; for (int i = 0; i < materialArray.length; i++) { - if (materialArray[i].mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Casing.get(0L), - materialArray[i].getMolten(72L), - materialCasing[i], - 16, - 8); + if (materialArray[i].mStandardMoltenFluid == null) { + continue; } + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Casing.get(0L)).itemOutputs(materialCasing[i]) + .fluidInputs(materialArray[i].getMolten(72L)).noFluidOutputs().duration(16 * TICKS).eut(8) + .addTo(sFluidSolidficationRecipes); } - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - Materials.Mercury.getFluid(1000L), - getModItem("Thaumcraft", "ItemResource", 1, 3), - 128, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - Materials.Mercury.getFluid(1000L), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Mercury, 1L), - 128, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - Materials.Water.getFluid(250L), - new ItemStack(Items.snowball, 1, 0), - 128, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - GT_ModHandler.getDistilledWater(250L), - new ItemStack(Items.snowball, 1, 0), - 128, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.Water.getFluid(1000L), - new ItemStack(Blocks.snow, 1, 0), - 512, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - GT_ModHandler.getDistilledWater(1000L), - new ItemStack(Blocks.snow, 1, 0), - 512, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.Lava.getFluid(1000L), - new ItemStack(Blocks.obsidian, 1, 0), - 1024, - 16); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.Concrete.getMolten(144L), - new ItemStack(GregTech_API.sBlockConcretes, 1, 8), - 12, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.Glowstone.getMolten(576L), - new ItemStack(Blocks.glowstone, 1, 0), - 12, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.Glass.getMolten(144L), - new ItemStack(Blocks.glass, 1, 0), - 12, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Plate.get(0L), - Materials.Glass.getMolten(144L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glass, 1L), - 12, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Bottle.get(0L), - Materials.Glass.getMolten(144L), - ItemList.Bottle_Empty.get(1L), - 12, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Cylinder.get(0L), - Materials.Milk.getFluid(250L), - ItemList.Food_Cheese.get(1L), - 1024, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Cylinder.get(0L), - Materials.Cheese.getMolten(144L), - ItemList.Food_Cheese.get(1L), - 64, - 8); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Anvil.get(0L), - Materials.Iron.getMolten(4464L), - new ItemStack(Blocks.anvil, 1, 0), - 128, - 16); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Anvil.get(0L), - Materials.WroughtIron.getMolten(4464L), - new ItemStack(Blocks.anvil, 1, 0), - 128, - 16); - GT_Values.RA.addFluidSolidifierRecipe( - GT_Utility.getIntegratedCircuit(1), - Materials.Boron.getMolten(144L), - Materials.Boron.getDust(1), - 30, - 30); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Cylinder.get(0), - Materials.Polytetrafluoroethylene.getMolten(36), - ItemList.Circuit_Parts_PetriDish.get(1), - 160, - 16); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Cylinder.get(0), - Materials.Polystyrene.getMolten(36), - ItemList.Circuit_Parts_PetriDish.get(1), - 160, - 16); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Cylinder.get(0), - Materials.BorosilicateGlass.getMolten(72), - ItemList.Circuit_Parts_PetriDish.get(1), - 160, - 16); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Plate.get(0L), - Materials.ReinforceGlass.getMolten(72), - getModItem(MOD_ID_DC, "item.ReinforcedGlassPlate", 1L, 0), - 160, - 1920); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.ReinforceGlass.getMolten(144), - getModItem("IC2", "blockAlloyGlass", 1L), - 160, - 1920); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - Materials.Glass.getMolten(144), - ItemList.Circuit_Parts_Glass_Tube.get(1), - 200, - 24); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - Materials.ReinforceGlass.getMolten(288), - ItemList.Circuit_Parts_Reinforced_Glass_Tube.get(1), - 200, - 240); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - getFluidStack("glass.molten", 1000), - ItemList.Circuit_Parts_Glass_Tube.get(1), - 200, - 24); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ball.get(0L), - new FluidStack(ItemList.sToluene, 100), - ItemList.GelledToluene.get(1), - 100, - 16); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Nugget.get(0L), - Materials.AnnealedCopper.getMolten(16), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Copper, 1L), - 16, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ingot.get(0L), - Materials.AnnealedCopper.getMolten(144), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), - 32, - 8); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.AnnealedCopper.getMolten(1296), - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Copper, 1L), - 288, - 8); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Nugget.get(0L), - Materials.WroughtIron.getMolten(16), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 1L), - 16, - 4); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Ingot.get(0L), - Materials.WroughtIron.getMolten(144), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), - 32, - 8); - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Block.get(0L), - Materials.WroughtIron.getMolten(1296), - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), - 288, - 8); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Spinneret.get(0L), - MaterialsKevlar.LiquidCrystalKevlar.getFluid(144L), - ItemList.KevlarFiber.get(8L), - 800, - 1920); - - GT_Values.RA.addFluidSolidifierRecipe( - ItemList.Shape_Mold_Anvil.get(0L), - Materials.Steel.getMolten(4464L), - getModItem(MOD_ID_RC, "tile.railcraft.anvil", 1L, 0), - 128, - 16); - - final int whiteDwarfShapeSolidifierTime = 10 * 20; - final int fluidPerShapeSolidifierRecipe = 576; + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(getModItem(Thaumcraft.modID, "ItemResource", 1, 3)) + .fluidInputs(Materials.Mercury.getFluid(1000L)).noFluidOutputs().duration(6 * SECONDS + 8 * TICKS) + .eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Mercury, 1L)) + .fluidInputs(Materials.Mercury.getFluid(1000L)).noFluidOutputs().duration(6 * SECONDS + 8 * TICKS) + .eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(new ItemStack(Items.snowball, 1, 0)).fluidInputs(Materials.Water.getFluid(250L)) + .noFluidOutputs().duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(new ItemStack(Items.snowball, 1, 0)).fluidInputs(GT_ModHandler.getDistilledWater(250L)) + .noFluidOutputs().duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(new ItemStack(Blocks.snow, 1, 0)).fluidInputs(Materials.Water.getFluid(1000L)) + .noFluidOutputs().duration(25 * SECONDS + 12 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(new ItemStack(Blocks.snow, 1, 0)).fluidInputs(GT_ModHandler.getDistilledWater(1000L)) + .noFluidOutputs().duration(25 * SECONDS + 12 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(new ItemStack(Blocks.obsidian, 1, 0)).fluidInputs(Materials.Lava.getFluid(1000L)) + .noFluidOutputs().duration(51 * SECONDS + 4 * TICKS).eut(16).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(new ItemStack(GregTech_API.sBlockConcretes, 1, 8)) + .fluidInputs(Materials.Concrete.getMolten(144L)).noFluidOutputs().duration(12 * TICKS).eut(4) + .addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(new ItemStack(Blocks.glowstone, 1, 0)).fluidInputs(Materials.Glowstone.getMolten(576L)) + .noFluidOutputs().duration(12 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(new ItemStack(Blocks.glass, 1, 0)).fluidInputs(Materials.Glass.getMolten(144L)) + .noFluidOutputs().duration(12 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Plate.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glass, 1L)) + .fluidInputs(Materials.Glass.getMolten(144L)).noFluidOutputs().duration(12 * TICKS).eut(4) + .addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Bottle.get(0L)) + .itemOutputs(ItemList.Bottle_Empty.get(1L)).fluidInputs(Materials.Glass.getMolten(144L)) + .noFluidOutputs().duration(12 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Cylinder.get(0L)) + .itemOutputs(ItemList.Food_Cheese.get(1L)).fluidInputs(Materials.Milk.getFluid(250L)).noFluidOutputs() + .duration(51 * SECONDS + 4 * TICKS).eut(4).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Cylinder.get(0L)) + .itemOutputs(ItemList.Food_Cheese.get(1L)).fluidInputs(Materials.Cheese.getMolten(144L)) + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Anvil.get(0L)) + .itemOutputs(new ItemStack(Blocks.anvil, 1, 0)).fluidInputs(Materials.Iron.getMolten(4464L)) + .noFluidOutputs().duration(6 * SECONDS + 8 * TICKS).eut(16).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Anvil.get(0L)) + .itemOutputs(new ItemStack(Blocks.anvil, 1, 0)).fluidInputs(Materials.WroughtIron.getMolten(4464L)) + .noFluidOutputs().duration(6 * SECONDS + 8 * TICKS).eut(16).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).itemOutputs(Materials.Boron.getDust(1)) + .fluidInputs(Materials.Boron.getMolten(144L)).noFluidOutputs().duration(1 * SECONDS + 10 * TICKS) + .eut(30).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Cylinder.get(0)) + .itemOutputs(ItemList.Circuit_Parts_PetriDish.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(36)).noFluidOutputs().duration(8 * SECONDS) + .eut(16).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Cylinder.get(0)) + .itemOutputs(ItemList.Circuit_Parts_PetriDish.get(1)).fluidInputs(Materials.Polystyrene.getMolten(36)) + .noFluidOutputs().duration(8 * SECONDS).eut(16).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Cylinder.get(0)) + .itemOutputs(ItemList.Circuit_Parts_PetriDish.get(1)) + .fluidInputs(Materials.BorosilicateGlass.getMolten(72)).noFluidOutputs().duration(8 * SECONDS).eut(16) + .addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Plate.get(0L)) + .itemOutputs(getModItem(NewHorizonsCoreMod.modID, "item.ReinforcedGlassPlate", 1L, 0)) + .fluidInputs(Materials.ReinforceGlass.getMolten(72)).noFluidOutputs().duration(8 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(getModItem(IndustrialCraft2.modID, "blockAlloyGlass", 1L)) + .fluidInputs(Materials.ReinforceGlass.getMolten(144)).noFluidOutputs().duration(8 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(ItemList.Circuit_Parts_Glass_Tube.get(1)).fluidInputs(Materials.Glass.getMolten(144)) + .noFluidOutputs().duration(10 * SECONDS).eut(24).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(ItemList.Circuit_Parts_Reinforced_Glass_Tube.get(1)) + .fluidInputs(Materials.ReinforceGlass.getMolten(288)).noFluidOutputs().duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(ItemList.Circuit_Parts_Glass_Tube.get(1)).fluidInputs(getFluidStack("glass.molten", 1000)) + .noFluidOutputs().duration(10 * SECONDS).eut(24).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ball.get(0L)) + .itemOutputs(ItemList.GelledToluene.get(1)).fluidInputs(new FluidStack(ItemList.sToluene, 100)) + .noFluidOutputs().duration(5 * SECONDS).eut(16).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Nugget.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Copper, 1L)) + .fluidInputs(Materials.AnnealedCopper.getMolten(16)).noFluidOutputs().duration(16 * TICKS).eut(4) + .addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ingot.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L)) + .fluidInputs(Materials.AnnealedCopper.getMolten(144)).noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Copper, 1L)) + .fluidInputs(Materials.AnnealedCopper.getMolten(1296)).noFluidOutputs() + .duration(14 * SECONDS + 8 * TICKS).eut(8).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Nugget.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 1L)) + .fluidInputs(Materials.WroughtIron.getMolten(16)).noFluidOutputs().duration(16 * TICKS).eut(4) + .addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ingot.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L)) + .fluidInputs(Materials.WroughtIron.getMolten(144)).noFluidOutputs().duration(1 * SECONDS + 12 * TICKS) + .eut(8).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L)) + .fluidInputs(Materials.WroughtIron.getMolten(1296)).noFluidOutputs().duration(14 * SECONDS + 8 * TICKS) + .eut(8).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Spinneret.get(0L)).itemOutputs(ItemList.KevlarFiber.get(8L)) + .fluidInputs(MaterialsKevlar.LiquidCrystalKevlar.getFluid(144L)).noFluidOutputs().duration(40 * SECONDS) + .eut(TierEU.RECIPE_EV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Anvil.get(0L)) + .itemOutputs(getModItem(Railcraft.modID, "tile.railcraft.anvil", 1L, 0)) + .fluidInputs(Materials.Steel.getMolten(4464L)).noFluidOutputs().duration(6 * SECONDS + 8 * TICKS) + .eut(16).addTo(sFluidSolidficationRecipes); + + final int whiteDwarfShapeSolidifierTime = 10 * SECONDS; + final int fluidPerShapeSolidifierRecipe = 4 * INGOTS; { - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Bottle.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Bottle.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Plate.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Plate.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Cell.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Cell.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Ring.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Ring.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Rod.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Rod.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Bolt.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Bolt.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Ingot.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Ingot.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Wire.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Wire.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Casing.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Casing.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Pipe_Tiny.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Pipe_Tiny.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Pipe_Small.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Pipe_Small.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Pipe_Medium.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Pipe_Medium.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Pipe_Large.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Pipe_Large.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Pipe_Huge.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Pipe_Huge.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Block.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Block.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Sword.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Sword.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Pickaxe.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Pickaxe.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Shovel.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Shovel.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Axe.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Axe.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Hoe.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Hoe.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Hammer.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Hammer.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_File.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_File.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Saw.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Saw.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Gear.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Gear.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Rotor.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Rotor.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Turbine_Blade.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Turbine_Blade.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_Small_Gear.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_Small_Gear.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); - - GT_Values.RA.addFluidSolidifierRecipe( - new ItemStack[] { ItemList.Shape_Extruder_ToolHeadDrill.get(1) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe) }, - new ItemStack[] { ItemList.White_Dwarf_Shape_Extruder_ToolHeadDrill.get(1) }, - new FluidStack[] { GT_Values.NF }, - (int) TierEU.RECIPE_UMV, - whiteDwarfShapeSolidifierTime); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Bottle.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Bottle.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Plate.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Plate.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Cell.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Cell.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Ring.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Ring.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Rod.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Rod.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Bolt.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Bolt.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Ingot.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Ingot.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Wire.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Wire.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Casing.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Casing.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Pipe_Tiny.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Pipe_Tiny.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Pipe_Small.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Pipe_Small.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Pipe_Medium.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Pipe_Medium.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Pipe_Large.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Pipe_Large.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Pipe_Huge.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Pipe_Huge.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Block.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Block.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Sword.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Sword.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Pickaxe.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Pickaxe.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Shovel.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Shovel.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Axe.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Axe.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Hoe.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Hoe.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Hammer.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Hammer.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_File.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_File.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Saw.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Saw.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Gear.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Gear.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Rotor.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Rotor.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Turbine_Blade.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Turbine_Blade.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_Small_Gear.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_Small_Gear.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Extruder_ToolHeadDrill.get(1)) + .itemOutputs(ItemList.White_Dwarf_Shape_Extruder_ToolHeadDrill.get(1)) + .fluidInputs(Materials.WhiteDwarfMatter.getMolten(fluidPerShapeSolidifierRecipe)).noFluidOutputs() + .duration(whiteDwarfShapeSolidifierTime).eut(TierEU.RECIPE_UMV).addTo(sFluidSolidficationRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ForgeHammerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ForgeHammerRecipes.java index 29d4b30203..d786db3ffc 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ForgeHammerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ForgeHammerRecipes.java @@ -1,13 +1,15 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_GTPP; +import static gregtech.api.enums.ModIDs.GTPlusPlus; +import static gregtech.api.enums.ModIDs.HardcoreEnderExpansion; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isHardcoreEnderExpansionLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; @@ -16,85 +18,80 @@ public class ForgeHammerRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.stonebrick, 1, 0), - new ItemStack(Blocks.stonebrick, 1, 2), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.stone, 1, 0), - new ItemStack(Blocks.cobblestone, 1, 0), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.cobblestone, 1, 0), - new ItemStack(Blocks.gravel, 1, 0), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.gravel, 1, 0), new ItemStack(Blocks.sand, 1, 0), 10, 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.sandstone, 1, 32767), - new ItemStack(Blocks.sand, 1, 0), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.ice, 1, 0), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.packed_ice, 1, 0), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 2L), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.brick_block, 1, 0), - new ItemStack(Items.brick, 3, 0), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.nether_brick, 1, 0), - new ItemStack(Items.netherbrick, 3, 0), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.stained_glass, 1, 32767), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.glass, 1, 32767), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), - 10, - 10); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.stained_glass_pane, 1, 32767), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe( - new ItemStack(Blocks.glass_pane, 1, 32767), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), - 10, - 16); - GT_Values.RA.addForgeHammerRecipe(Materials.Brick.getIngots(1), Materials.Brick.getDustSmall(1), 10, 16); - GT_Values.RA.addForgeHammerRecipe(ItemList.Firebrick.get(1), Materials.Brick.getDust(1), 10, 16); - GT_Values.RA.addForgeHammerRecipe(ItemList.Casing_Firebricks.get(1), ItemList.Firebrick.get(3), 10, 16); - - GT_Values.RA.addForgeHammerRecipe( - new ItemStack[] { ItemList.Tesseract.get(1L), getModItem(MOD_ID_GTPP, "MU-metaitem.01", 1, 32105) }, - new FluidStack[] { Materials.SpaceTime.getMolten(2880L) }, - null, - new FluidStack[] { Materials.Space.getMolten(1440L), Materials.Time.getMolten(1440L) }, - 10 * 20, - (int) TierEU.RECIPE_UXV); - - if (isHardcoreEnderExpansionLoaded) { - GT_Values.RA.addForgeHammerRecipe( - getModItem("HardcoreEnderExpansion", "endium_ore", 1), - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.HeeEndium, 1), - 16, - 10); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stonebrick, 1, 0)) + .itemOutputs(new ItemStack(Blocks.stonebrick, 1, 2)).noFluidInputs().noFluidOutputs() + .duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stone, 1, 0)) + .itemOutputs(new ItemStack(Blocks.cobblestone, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.cobblestone, 1, 0)) + .itemOutputs(new ItemStack(Blocks.gravel, 1, 0)).noFluidInputs().noFluidOutputs().duration(10 * TICKS) + .eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.gravel, 1, 0)) + .itemOutputs(new ItemStack(Blocks.sand, 1, 0)).noFluidInputs().noFluidOutputs().duration(10 * TICKS) + .eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.sandstone, 1, 32767)) + .itemOutputs(new ItemStack(Blocks.sand, 1, 0)).noFluidInputs().noFluidOutputs().duration(10 * TICKS) + .eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.ice, 1, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.packed_ice, 1, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 2)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.brick_block, 1, 0)) + .itemOutputs(new ItemStack(Items.brick, 3, 0)).noFluidInputs().noFluidOutputs().duration(10 * TICKS) + .eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.nether_brick, 1, 0)) + .itemOutputs(new ItemStack(Items.netherbrick, 3, 0)).noFluidInputs().noFluidOutputs() + .duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stained_glass, 1, 32767)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.glass, 1, 32767)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(10).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.stained_glass_pane, 1, 32767)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.glass_pane, 1, 32767)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Brick.getIngots(1)).itemOutputs(Materials.Brick.getDustSmall(1)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Firebrick.get(1)).itemOutputs(Materials.Brick.getDust(1)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Firebricks.get(1)).itemOutputs(ItemList.Firebrick.get(3)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + + if (GTPlusPlus.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Tesseract.get(1L), getModItem(GTPlusPlus.modID, "MU-metaitem.01", 1, 32105)) + .noItemOutputs().fluidInputs(Materials.SpaceTime.getMolten(2880L)) + .fluidOutputs(Materials.Space.getMolten(1440L), Materials.Time.getMolten(1440L)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_UXV).addTo(sHammerRecipes); + } + + if (HardcoreEnderExpansion.isModLoaded()) { + GT_Values.RA.stdBuilder().itemInputs(getModItem(HardcoreEnderExpansion.modID, "endium_ore", 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.HeeEndium, 1)).noFluidInputs() + .noFluidOutputs().duration(16).eut(10).addTo(sHammerRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FormingPressRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FormingPressRecipes.java index ea0ebae0fe..8b3479a3e8 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FormingPressRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FormingPressRecipes.java @@ -1,138 +1,152 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.AppliedEnergistics2; +import static gregtech.api.enums.ModIDs.BuildCraftSilicon; import static gregtech.api.util.GT_ModHandler.getModItem; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; 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.OrePrefixes; +import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class FormingPressRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 1), - 100, - 120); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 1), - 100, - 120); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 2), - 200, - 120); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1L), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 3), - 100, - 480); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), - getModItem("BuildCraft|Silicon", "redstoneChipset", 2L, 4), - 200, - 120); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NetherQuartz, 1L), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 5), - 300, - 120); - GT_Values.RA.addFormingPressRecipe( - new ItemStack(Items.comparator, 1, 32767), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), - getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 6), - 300, - 120); - GT_Values.RA.addFormingPressRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 10), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 0L, 13), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 16), - 200, - 16); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CertusQuartz, 1L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 0L, 13), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 16), - 200, - 16); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 0L, 14), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 17), - 200, - 16); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 0L, 15), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 18), - 200, - 16); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.SiliconSG, 1L), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 0L, 19), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 20), - 200, - 16); - - GT_Values.RA.addFormingPressRecipe( - ItemList.Food_Dough_Sugar.get(4L), - ItemList.Shape_Mold_Cylinder.get(0L), - ItemList.Food_Raw_Cake.get(1L), - 384, - 4); - GT_Values.RA.addFormingPressRecipe( - new ItemStack(Blocks.glass, 1, 32767), - ItemList.Shape_Mold_Arrow.get(0L), - ItemList.Arrow_Head_Glass_Emtpy.get(1L), - 64, - 4); - - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Cupronickel, 1L), - ItemList.Shape_Mold_Credit.get(0L), - ItemList.Credit_Greg_Cupronickel.get(4L), - 100, - 16); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Brass, 1L), - ItemList.Shape_Mold_Credit.get(0L), - ItemList.Coin_Doge.get(4L), - 100, - 16); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), - ItemList.Shape_Mold_Credit.get(0L), - ItemList.Credit_Iron.get(4L), - 100, - 16); - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), - ItemList.Shape_Mold_Credit.get(0L), - ItemList.Credit_Iron.get(4L), - 100, - 16); - - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brick, 1L), - ItemList.Shape_Mold_Ingot.get(0L), - new ItemStack(Items.brick, 1, 0), - 100, - 16); + if (BuildCraftSilicon.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), + getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 0)) + .itemOutputs(getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), + getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 0)) + .itemOutputs(getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), + getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 0)) + .itemOutputs(getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 2)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1L), + getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 0)) + .itemOutputs(getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 3)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), + getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 0)) + .itemOutputs(getModItem(BuildCraftSilicon.modID, "redstoneChipset", 2L, 4)).noFluidInputs() + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NetherQuartz, 1L), + getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 0)) + .itemOutputs(getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 5)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Items.comparator, 1, 32767), + getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 0)) + .itemOutputs(getModItem(BuildCraftSilicon.modID, "redstoneChipset", 1L, 6)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sPressRecipes); + } + + if (AppliedEnergistics2.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 10), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 0L, 13)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 16)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CertusQuartz, 1L), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 0L, 13)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 16)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1L), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 0L, 14)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 17)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 0L, 15)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 18)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.SiliconSG, 1L), + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 0L, 19)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 20)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(16).addTo(sPressRecipes); + } + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Dough_Sugar.get(4L), ItemList.Shape_Mold_Cylinder.get(0L)) + .itemOutputs(ItemList.Food_Raw_Cake.get(1L)).noFluidInputs().noFluidOutputs() + .duration(19 * SECONDS + 4 * TICKS).eut(4).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.glass, 1, 32767), ItemList.Shape_Mold_Arrow.get(0L)) + .itemOutputs(ItemList.Arrow_Head_Glass_Emtpy.get(1L)).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(4).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Cupronickel, 1L), + ItemList.Shape_Mold_Credit.get(0L)) + .itemOutputs(ItemList.Credit_Greg_Cupronickel.get(4L)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(16).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Brass, 1L), + ItemList.Shape_Mold_Credit.get(0L)) + .itemOutputs(ItemList.Coin_Doge.get(4L)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(16) + .addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), + ItemList.Shape_Mold_Credit.get(0L)) + .itemOutputs(ItemList.Credit_Iron.get(4L)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), + ItemList.Shape_Mold_Credit.get(0L)) + .itemOutputs(ItemList.Credit_Iron.get(4L)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brick, 1L), + ItemList.Shape_Mold_Ingot.get(0L)) + .itemOutputs(new ItemStack(Items.brick, 1, 0)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(16).addTo(sPressRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FuelRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FuelRecipes.java index b0b3bf8840..124c7b59f2 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FuelRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FuelRecipes.java @@ -1,6 +1,10 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.*; +import static gregtech.api.enums.ModIDs.ThaumicTinkerer; import static gregtech.api.util.GT_ModHandler.getModItem; +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.ItemStack; @@ -8,30 +12,83 @@ import net.minecraft.item.ItemStack; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_RecipeConstants; public class FuelRecipes implements Runnable { + // todo: add an enum for the fuel type, int values are mysterious @Override public void run() { if (!GregTech_API.mIC2Classic) { - GT_Values.RA.addFuel(GT_ModHandler.getIC2Item("biogasCell", 1L), null, 40, 1); + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("biogasCell", 1L)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 40).metadata(FUEL_TYPE, 1).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + } - GT_Values.RA.addFuel(new ItemStack(Items.golden_apple, 1, 1), new ItemStack(Items.apple, 1), 6400, 5); - GT_Values.RA.addFuel(getModItem("Thaumcraft", "ItemShard", 1L, 6), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "GluttonyShard", 1L), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "FMResource", 1L, 3), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "NetherShard", 1L), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "NetherShard", 1L, 1), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "NetherShard", 1L, 2), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "NetherShard", 1L, 3), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "NetherShard", 1L, 4), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "NetherShard", 1L, 5), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ForbiddenMagic", "NetherShard", 1L, 6), null, 720, 5); - GT_Values.RA.addFuel(getModItem("TaintedMagic", "WarpedShard", 1L), null, 720, 5); - GT_Values.RA.addFuel(getModItem("TaintedMagic", "FluxShard", 1L), null, 720, 5); - GT_Values.RA.addFuel(getModItem("TaintedMagic", "EldritchShard", 1L), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ThaumicTinkerer", "kamiResource", 1L, 6), null, 720, 5); - GT_Values.RA.addFuel(getModItem("ThaumicTinkerer", "kamiResource", 1L, 7), null, 720, 5); + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.golden_apple, 1, 1)) + .itemOutputs(new ItemStack(Items.apple, 1)).noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 6400) + .metadata(FUEL_TYPE, 5).duration(0).eut(0).addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Thaumcraft.modID, "ItemShard", 1L, 6)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "GluttonyShard", 1L)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "FMResource", 1L, 3)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "NetherShard", 1L)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "NetherShard", 1L, 1)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "NetherShard", 1L, 2)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "NetherShard", 1L, 3)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "NetherShard", 1L, 4)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "NetherShard", 1L, 5)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ForbiddenMagic.modID, "NetherShard", 1L, 6)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(TaintedMagic.modID, "WarpedShard", 1L)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(TaintedMagic.modID, "FluxShard", 1L)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(TaintedMagic.modID, "EldritchShard", 1L)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ThaumicTinkerer.modID, "kamiResource", 1L, 6)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(ThaumicTinkerer.modID, "kamiResource", 1L, 7)).noItemOutputs() + .noFluidInputs().noFluidOutputs().metadata(FUEL_VALUE, 720).metadata(FUEL_TYPE, 5).duration(0).eut(0) + .addTo(GT_RecipeConstants.Fuel); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FusionReactorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FusionReactorRecipes.java index 5416e56119..df0cddca83 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FusionReactorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FusionReactorRecipes.java @@ -1,7 +1,13 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFusionRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.FUSION_THRESHOLD; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; public class FusionReactorRecipes implements Runnable { @@ -11,261 +17,184 @@ public class FusionReactorRecipes implements Runnable { // Fusion with margin 32700 65450 131000 // Startup max 160M EU 320M EU 640M EU // Fluid input,Fluid input,Fluid output,ticks,EU/t,Startup - // FT1, FT2, FT3 - fusion tier required, + - requires different startup recipe (startup cost bigger than + // F FT2, FT3 - fusion tier required, + - requires different startup recipe (startup cost bigger than // available on the tier) - GT_Values.RA.addFusionReactorRecipe( - Materials.Lithium.getMolten(16), - Materials.Tungsten.getMolten(16), - Materials.Iridium.getMolten(16), - 64, - 32700, - 300000000); // FT1+ - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Deuterium.getGas(125), - Materials.Tritium.getGas(125), - Materials.Helium.getPlasma(125), - 16, - 4096, - 40000000); // FT1 Cheap - farmable - GT_Values.RA.addFusionReactorRecipe( - Materials.Deuterium.getGas(125), - Materials.Helium_3.getGas(125), - Materials.Helium.getPlasma(125), - 16, - 2048, - 60000000); // FT1 Expensive // - GT_Values.RA.addFusionReactorRecipe( - Materials.Carbon.getMolten(125), - Materials.Helium_3.getGas(125), - Materials.Oxygen.getPlasma(125), - 32, - 4096, - 80000000); // FT1 Expensive // - GT_Values.RA.addFusionReactorRecipe( - Materials.Aluminium.getMolten(16), - Materials.Lithium.getMolten(16), - Materials.Sulfur.getPlasma(144), - 32, - 10240, - 240000000); // FT1+ Cheap - GT_Values.RA.addFusionReactorRecipe( - Materials.Beryllium.getMolten(16), - Materials.Deuterium.getGas(375), - Materials.Nitrogen.getPlasma(125), - 16, - 16384, - 180000000); // FT1+ Expensive // - GT_Values.RA.addFusionReactorRecipe( - Materials.Silicon.getMolten(16), - Materials.Magnesium.getMolten(16), - Materials.Iron.getPlasma(144), - 32, - 8192, - 360000000); // FT1++ Cheap // - GT_Values.RA.addFusionReactorRecipe( - Materials.Potassium.getMolten(16), - Materials.Fluorine.getGas(144), - Materials.Nickel.getPlasma(144), - 16, - 32700, - 480000000); // FT1++ Expensive // - GT_Values.RA.addFusionReactorRecipe( - Materials.Beryllium.getMolten(16), - Materials.Tungsten.getMolten(16), - Materials.Platinum.getMolten(16), - 32, - 32700, - 150000000); // FT1 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Neodymium.getMolten(16), - Materials.Hydrogen.getGas(48), - Materials.Europium.getMolten(16), - 32, - 24576, - 150000000); // FT1 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Lutetium.getMolten(16), - Materials.Chrome.getMolten(16), - Materials.Americium.getMolten(16), - 96, - 49152, - 200000000); // FT2 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Plutonium.getMolten(16), - Materials.Thorium.getMolten(16), - Materials.Naquadah.getMolten(16), - 64, - 32700, - 300000000); // FT1+ - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Americium.getMolten(144), - Materials.Naquadria.getMolten(144), - Materials.Neutronium.getMolten(144), - 240, - 122880, - 640000000); // FT3 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Glowstone.getMolten(16), - Materials.Helium.getPlasma(4), - Materials.Sunnarium.getMolten(16), - 32, - 7680, - 40000000); // Mark 1 Expensive // - - GT_Values.RA.addFusionReactorRecipe( - Materials.Tungsten.getMolten(16), - Materials.Helium.getGas(16), - Materials.Osmium.getMolten(16), - 256, - 24578, - 150000000); // FT1 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Manganese.getMolten(16), - Materials.Hydrogen.getGas(16), - Materials.Iron.getMolten(16), - 64, - 8192, - 120000000); // FT1 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Magnesium.getMolten(128), - Materials.Oxygen.getGas(128), - Materials.Calcium.getPlasma(16), - 128, - 8192, - 120000000); // - GT_Values.RA.addFusionReactorRecipe( - Materials.Mercury.getFluid(16), - Materials.Magnesium.getMolten(16), - Materials.Uranium.getMolten(16), - 64, - 49152, - 240000000); // FT2 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Gold.getMolten(16), - Materials.Aluminium.getMolten(16), - Materials.Uranium.getMolten(16), - 64, - 49152, - 240000000); // FT2 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Uranium.getMolten(16), - Materials.Helium.getGas(16), - Materials.Plutonium.getMolten(16), - 128, - 49152, - 480000000); // FT2+ - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Vanadium.getMolten(16), - Materials.Hydrogen.getGas(125), - Materials.Chrome.getMolten(16), - 64, - 24576, - 140000000); // FT1 - utility - - GT_Values.RA.addFusionReactorRecipe( - Materials.Gallium.getMolten(16), - Materials.Radon.getGas(125), - Materials.Duranium.getMolten(16), - 64, - 16384, - 140000000); - GT_Values.RA.addFusionReactorRecipe( - Materials.Titanium.getMolten(48), - Materials.Duranium.getMolten(32), - Materials.Tritanium.getMolten(16), - 64, - 32700, - 200000000); - GT_Values.RA.addFusionReactorRecipe( - Materials.Tantalum.getMolten(16), - Materials.Tritium.getGas(16), - Materials.Tungsten.getMolten(16), - 16, - 24576, - 200000000); // - GT_Values.RA.addFusionReactorRecipe( - Materials.Silver.getMolten(16), - Materials.Lithium.getMolten(16), - Materials.Indium.getMolten(16), - 32, - 24576, - 380000000); // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Lithium.getMolten(16), Materials.Tungsten.getMolten(16)) + .fluidOutputs(Materials.Iridium.getMolten(16)).duration(3 * SECONDS + 4 * TICKS).eut(TierEU.RECIPE_LuV) + .metadata(FUSION_THRESHOLD, 300000000).addTo(sFusionRecipes); // FT1+ - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Deuterium.getGas(125), Materials.Tritium.getGas(125)) + .fluidOutputs(Materials.Helium.getPlasma(125)).duration(16 * TICKS).eut(4096) + .metadata(FUSION_THRESHOLD, 40000000).addTo(sFusionRecipes); // FT1 Cheap - farmable + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Deuterium.getGas(125), Materials.Helium_3.getGas(125)) + .fluidOutputs(Materials.Helium.getPlasma(125)).duration(16 * TICKS).eut(2048) + .metadata(FUSION_THRESHOLD, 60000000).addTo(sFusionRecipes); // FT1 Expensive // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Carbon.getMolten(125), Materials.Helium_3.getGas(125)) + .fluidOutputs(Materials.Oxygen.getPlasma(125)).duration(1 * SECONDS + 12 * TICKS).eut(4096) + .metadata(FUSION_THRESHOLD, 80000000).addTo(sFusionRecipes); // FT1 Expensive // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Aluminium.getMolten(16), Materials.Lithium.getMolten(16)) + .fluidOutputs(Materials.Sulfur.getPlasma(144)).duration(1 * SECONDS + 12 * TICKS).eut(10240) + .metadata(FUSION_THRESHOLD, 240000000).addTo(sFusionRecipes); // FT1+ Cheap + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Beryllium.getMolten(16), Materials.Deuterium.getGas(375)) + .fluidOutputs(Materials.Nitrogen.getPlasma(125)).duration(16 * TICKS).eut(16384) + .metadata(FUSION_THRESHOLD, 180000000).addTo(sFusionRecipes); // FT1+ Expensive // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Silicon.getMolten(16), Materials.Magnesium.getMolten(16)) + .fluidOutputs(Materials.Iron.getPlasma(144)).duration(1 * SECONDS + 12 * TICKS).eut(8192) + .metadata(FUSION_THRESHOLD, 360000000).addTo(sFusionRecipes); // FT1++ Cheap // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Potassium.getMolten(16), Materials.Fluorine.getGas(144)) + .fluidOutputs(Materials.Nickel.getPlasma(144)).duration(16 * TICKS).eut(TierEU.RECIPE_LuV) + .metadata(FUSION_THRESHOLD, 480000000).addTo(sFusionRecipes); // FT1++ Expensive // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Beryllium.getMolten(16), Materials.Tungsten.getMolten(16)) + .fluidOutputs(Materials.Platinum.getMolten(16)).duration(1 * SECONDS + 12 * TICKS) + .eut(TierEU.RECIPE_LuV).metadata(FUSION_THRESHOLD, 150000000).addTo(sFusionRecipes); // FT1 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Neodymium.getMolten(16), Materials.Hydrogen.getGas(48)) + .fluidOutputs(Materials.Europium.getMolten(16)).duration(1 * SECONDS + 12 * TICKS).eut(24576) + .metadata(FUSION_THRESHOLD, 150000000).addTo(sFusionRecipes); // FT1 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Lutetium.getMolten(16), Materials.Chrome.getMolten(16)) + .fluidOutputs(Materials.Americium.getMolten(16)).duration(4 * SECONDS + 16 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 200000000).addTo(sFusionRecipes); // FT2 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Plutonium.getMolten(16), Materials.Thorium.getMolten(16)) + .fluidOutputs(Materials.Naquadah.getMolten(16)).duration(3 * SECONDS + 4 * TICKS).eut(TierEU.RECIPE_LuV) + .metadata(FUSION_THRESHOLD, 300000000).addTo(sFusionRecipes); // FT1+ - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Americium.getMolten(144), Materials.Naquadria.getMolten(144)) + .fluidOutputs(Materials.Neutronium.getMolten(144)).duration(12 * SECONDS).eut(TierEU.RECIPE_ZPM) + .metadata(FUSION_THRESHOLD, 640000000).addTo(sFusionRecipes); // FT3 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Glowstone.getMolten(16), Materials.Helium.getPlasma(4)) + .fluidOutputs(Materials.Sunnarium.getMolten(16)).duration(1 * SECONDS + 12 * TICKS) + .eut(TierEU.RECIPE_IV).metadata(FUSION_THRESHOLD, 40000000).addTo(sFusionRecipes); // Mark 1 Expensive + // // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Tungsten.getMolten(16), Materials.Helium.getGas(16)) + .fluidOutputs(Materials.Osmium.getMolten(16)).duration(12 * SECONDS + 16 * TICKS).eut(24578) + .metadata(FUSION_THRESHOLD, 150000000).addTo(sFusionRecipes); // FT1 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Manganese.getMolten(16), Materials.Hydrogen.getGas(16)) + .fluidOutputs(Materials.Iron.getMolten(16)).duration(3 * SECONDS + 4 * TICKS).eut(8192) + .metadata(FUSION_THRESHOLD, 120000000).addTo(sFusionRecipes); // FT1 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Magnesium.getMolten(128), Materials.Oxygen.getGas(128)) + .fluidOutputs(Materials.Calcium.getPlasma(16)).duration(6 * SECONDS + 8 * TICKS).eut(8192) + .metadata(FUSION_THRESHOLD, 120000000).addTo(sFusionRecipes); // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Mercury.getFluid(16), Materials.Magnesium.getMolten(16)) + .fluidOutputs(Materials.Uranium.getMolten(16)).duration(3 * SECONDS + 4 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 240000000).addTo(sFusionRecipes); // FT2 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Gold.getMolten(16), Materials.Aluminium.getMolten(16)) + .fluidOutputs(Materials.Uranium.getMolten(16)).duration(3 * SECONDS + 4 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 240000000).addTo(sFusionRecipes); // FT2 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Uranium.getMolten(16), Materials.Helium.getGas(16)) + .fluidOutputs(Materials.Plutonium.getMolten(16)).duration(6 * SECONDS + 8 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 480000000).addTo(sFusionRecipes); // FT2+ - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Vanadium.getMolten(16), Materials.Hydrogen.getGas(125)) + .fluidOutputs(Materials.Chrome.getMolten(16)).duration(3 * SECONDS + 4 * TICKS).eut(24576) + .metadata(FUSION_THRESHOLD, 140000000).addTo(sFusionRecipes); // FT1 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Gallium.getMolten(16), Materials.Radon.getGas(125)) + .fluidOutputs(Materials.Duranium.getMolten(16)).duration(3 * SECONDS + 4 * TICKS).eut(16384) + .metadata(FUSION_THRESHOLD, 140000000).addTo(sFusionRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Titanium.getMolten(48), Materials.Duranium.getMolten(32)) + .fluidOutputs(Materials.Tritanium.getMolten(16)).duration(3 * SECONDS + 4 * TICKS) + .eut(TierEU.RECIPE_LuV).metadata(FUSION_THRESHOLD, 200000000).addTo(sFusionRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Tantalum.getMolten(16), Materials.Tritium.getGas(16)) + .fluidOutputs(Materials.Tungsten.getMolten(16)).duration(16 * TICKS).eut(24576) + .metadata(FUSION_THRESHOLD, 200000000).addTo(sFusionRecipes); // + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Silver.getMolten(16), Materials.Lithium.getMolten(16)) + .fluidOutputs(Materials.Indium.getMolten(16)).duration(1 * SECONDS + 12 * TICKS).eut(24576) + .metadata(FUSION_THRESHOLD, 380000000).addTo(sFusionRecipes); // // NEW RECIPES FOR FUSION - GT_Values.RA.addFusionReactorRecipe( - Materials.Magnesium.getMolten(144), - Materials.Carbon.getMolten(144), - Materials.Argon.getPlasma(125), - 32, - 24576, - 180000000); // FT1+ - utility - - GT_Values.RA.addFusionReactorRecipe( - Materials.Copper.getMolten(72), - Materials.Tritium.getGas(250), - Materials.Zinc.getPlasma(72), - 16, - 49152, - 180000000); // FT2 - farmable - GT_Values.RA.addFusionReactorRecipe( - Materials.Cobalt.getMolten(144), - Materials.Silicon.getMolten(144), - Materials.Niobium.getPlasma(144), - 16, - 49152, - 200000000); // FT2 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Gold.getMolten(144), - Materials.Arsenic.getMolten(144), - Materials.Silver.getPlasma(144), - 16, - 49152, - 350000000); // FT2+ - GT_Values.RA.addFusionReactorRecipe( - Materials.Silver.getMolten(144), - Materials.Helium_3.getGas(375), - Materials.Tin.getPlasma(144), - 16, - 49152, - 280000000); // FT2 - GT_Values.RA.addFusionReactorRecipe( - Materials.Tungsten.getMolten(144), - Materials.Carbon.getMolten(144), - Materials.Mercury.getPlasma(144), - 16, - 49152, - 300000000); // FT2 - - GT_Values.RA.addFusionReactorRecipe( - Materials.Tantalum.getMolten(144), - Materials.Zinc.getPlasma(72), - Materials.Bismuth.getPlasma(144), - 16, - 98304, - 350000000); // FT3 - farmable - GT_Values.RA.addFusionReactorRecipe( - Materials.Caesium.getMolten(144), - Materials.Carbon.getMolten(144), - Materials.Promethium.getMolten(144), - 64, - 49152, - 400000000); // FT3 - GT_Values.RA.addFusionReactorRecipe( - Materials.Iridium.getMolten(144), - Materials.Fluorine.getGas(500), - Materials.Radon.getPlasma(144), - 32, - 98304, - 450000000); // FT3 - utility - GT_Values.RA.addFusionReactorRecipe( - Materials.Plutonium241.getMolten(144), - Materials.Hydrogen.getGas(2000), - Materials.Americium.getPlasma(144), - 64, - 98304, - 500000000); // FT3 - // GT_Values.RA.addFusionReactorRecipe(Materials.Neutronium.getMolten(144), Materials.Neutronium.getMolten(144), - // Materials.Neutronium.getPlasma(72), 64, 130000, 640000000);//FT3+ - yes it is a bit troll XD + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Magnesium.getMolten(144), Materials.Carbon.getMolten(144)) + .fluidOutputs(Materials.Argon.getPlasma(125)).duration(1 * SECONDS + 12 * TICKS).eut(24576) + .metadata(FUSION_THRESHOLD, 180000000).addTo(sFusionRecipes); // FT1+ - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Copper.getMolten(72), Materials.Tritium.getGas(250)) + .fluidOutputs(Materials.Zinc.getPlasma(72)).duration(16 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 180000000).addTo(sFusionRecipes); // FT2 - farmable + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Cobalt.getMolten(144), Materials.Silicon.getMolten(144)) + .fluidOutputs(Materials.Niobium.getPlasma(144)).duration(16 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 200000000).addTo(sFusionRecipes); // FT2 - utility + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Gold.getMolten(144), Materials.Arsenic.getMolten(144)) + .fluidOutputs(Materials.Silver.getPlasma(144)).duration(16 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 350000000).addTo(sFusionRecipes); // FT2+ + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Silver.getMolten(144), Materials.Helium_3.getGas(375)) + .fluidOutputs(Materials.Tin.getPlasma(144)).duration(16 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 280000000).addTo(sFusionRecipes); // FT2 + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Tungsten.getMolten(144), Materials.Carbon.getMolten(144)) + .fluidOutputs(Materials.Mercury.getPlasma(144)).duration(16 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 300000000).addTo(sFusionRecipes); // FT2 + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Tantalum.getMolten(144), Materials.Zinc.getPlasma(72)) + .fluidOutputs(Materials.Bismuth.getPlasma(144)).duration(16 * TICKS).eut(98304) + .metadata(FUSION_THRESHOLD, 350000000).addTo(sFusionRecipes); // FT3 - farmable + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Caesium.getMolten(144), Materials.Carbon.getMolten(144)) + .fluidOutputs(Materials.Promethium.getMolten(144)).duration(3 * SECONDS + 4 * TICKS).eut(49152) + .metadata(FUSION_THRESHOLD, 400000000).addTo(sFusionRecipes); // FT3 + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Iridium.getMolten(144), Materials.Fluorine.getGas(500)) + .fluidOutputs(Materials.Radon.getPlasma(144)).duration(1 * SECONDS + 12 * TICKS).eut(98304) + .metadata(FUSION_THRESHOLD, 450000000).addTo(sFusionRecipes); // FT3 - utility + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.Plutonium241.getMolten(144), Materials.Hydrogen.getGas(2000)) + .fluidOutputs(Materials.Americium.getPlasma(144)).duration(3 * SECONDS + 4 * TICKS).eut(98304) + .metadata(FUSION_THRESHOLD, 500000000).addTo(sFusionRecipes); // FT3 } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ImplosionCompressorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ImplosionCompressorRecipes.java index 30a9fe5b6c..365c11c01d 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ImplosionCompressorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ImplosionCompressorRecipes.java @@ -1,47 +1,85 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.GalacticraftCore; +import static gregtech.api.enums.ModIDs.GalacticraftMars; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isGalacticraftMarsLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sImplosionRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + +import net.minecraft.init.Blocks; +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 gregtech.api.util.GT_OreDictUnificator; public class ImplosionCompressorRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addImplosionRecipe( + addImplosionRecipe( ItemList.IC2_Compressed_Coal_Chunk.get(1L), 8, - ItemList.IC2_Industrial_Diamond.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L)); + new ItemStack[] { ItemList.IC2_Industrial_Diamond.get(1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L) }); - GT_Values.RA.addImplosionRecipe( + addImplosionRecipe( ItemList.Ingot_IridiumAlloy.get(1L), 8, - GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Iridium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L)); + new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Iridium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L) }); - if (isGalacticraftMarsLoaded) { + if (GalacticraftMars.isModLoaded()) { - GT_Values.RA.addImplosionRecipe( + addImplosionRecipe( ItemList.Ingot_Heavy1.get(1L), 8, - getModItem("GalacticraftCore", "item.heavyPlating", 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.StainlessSteel, 1L)); - GT_Values.RA.addImplosionRecipe( + new ItemStack[] { getModItem(GalacticraftCore.modID, "item.heavyPlating", 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.StainlessSteel, 1L) }); + + addImplosionRecipe( ItemList.Ingot_Heavy2.get(1L), 16, - getModItem("GalacticraftMars", "item.null", 1L, 3), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.TungstenSteel, 2L)); - GT_Values.RA.addImplosionRecipe( + new ItemStack[] { getModItem(GalacticraftMars.modID, "item.null", 1L, 3), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.TungstenSteel, 2L) }); + + addImplosionRecipe( ItemList.Ingot_Heavy3.get(1L), 24, - getModItem("GalacticraftMars", "item.itemBasicAsteroids", 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Platinum, 3L)); + new ItemStack[] { getModItem(GalacticraftMars.modID, "item.itemBasicAsteroids", 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Platinum, 3L) }); + } + } + + public void addImplosionRecipe(ItemStack input, int explosiveAmount, ItemStack[] outputs) { + + int tExplosives = Math.min(explosiveAmount, 64); + int tGunpowder = tExplosives << 1; // Worst + int tDynamite = Math.max(1, tExplosives >> 1); // good + int tTNT = tExplosives; // Slightly better + int tITNT = Math.max(1, tExplosives >> 2); // the best + + if (tGunpowder < 65) { + GT_Values.RA.stdBuilder().itemInputs(input, ItemList.Block_Powderbarrel.get(tGunpowder)) + .itemOutputs(outputs).noFluidInputs().noFluidOutputs().duration(1 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sImplosionRecipes); + } + + if (tDynamite < 17) { + GT_Values.RA.stdBuilder().itemInputs(input, GT_ModHandler.getIC2Item("dynamite", tDynamite, null)) + .itemOutputs(outputs).noFluidInputs().noFluidOutputs().duration(1 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sImplosionRecipes); } + + GT_Values.RA.stdBuilder().itemInputs(input, new ItemStack(Blocks.tnt, tTNT)).itemOutputs(outputs) + .noFluidInputs().noFluidOutputs().duration(1 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sImplosionRecipes); + + GT_Values.RA.stdBuilder().itemInputs(input, GT_ModHandler.getIC2Item("industrialTnt", tITNT)) + .itemOutputs(outputs).noFluidInputs().noFluidOutputs().duration(1 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sImplosionRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/LaserEngraverRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/LaserEngraverRecipes.java index 93267a1a7e..3605c16785 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/LaserEngraverRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/LaserEngraverRecipes.java @@ -1,49 +1,37 @@ package gregtech.loaders.postload.recipes; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; public class LaserEngraverRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentCrudeCatalyst.getFluid(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.ExcitedDTCC.getFluid(1000L) }, - 50_000, - 125_000, - true); - - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentProsaicCatalyst.getFluid(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.ExcitedDTPC.getFluid(1000L) }, - 50_000, - 125_000 * 4, - true); - - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentResplendentCatalyst.getFluid(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.ExcitedDTRC.getFluid(1000L) }, - 50_000, - 125_000 * 16, - true); - - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentExoticCatalyst.getFluid(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.ExcitedDTEC.getFluid(1000L) }, - 50_000, - 125_000 * 64, - true); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.DimensionallyTranscendentCrudeCatalyst.getFluid(1000)) + .fluidOutputs(Materials.ExcitedDTCC.getFluid(1000)).requiresCleanRoom() + .duration(41 * MINUTES + 40 * SECONDS).eut((int) TierEU.RECIPE_ZPM).addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.DimensionallyTranscendentProsaicCatalyst.getFluid(1000)) + .fluidOutputs(Materials.ExcitedDTPC.getFluid(1000)).requiresCleanRoom() + .duration(41 * MINUTES + 40 * SECONDS).eut((int) TierEU.RECIPE_UV).addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.DimensionallyTranscendentResplendentCatalyst.getFluid(1000)) + .fluidOutputs(Materials.ExcitedDTRC.getFluid(1000)).requiresCleanRoom() + .duration(41 * MINUTES + 40 * SECONDS).eut((int) TierEU.RECIPE_UHV).addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(Materials.DimensionallyTranscendentExoticCatalyst.getFluid(1000)) + .fluidOutputs(Materials.ExcitedDTEC.getFluid(1000)).requiresCleanRoom() + .duration(41 * MINUTES + 40 * SECONDS).eut((int) TierEU.RECIPE_UEV).addTo(sLaserEngraverRecipes); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/LatheRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/LatheRecipes.java index ed71f464ee..544e398172 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/LatheRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/LatheRecipes.java @@ -1,6 +1,10 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.Forestry; import static gregtech.api.util.GT_ModHandler.getModItem; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLatheRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -10,29 +14,21 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class LatheRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addLatheRecipe( - new ItemStack(Blocks.wooden_slab, 1, GT_Values.W), - new ItemStack(Items.bowl, 1), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1), - 50, - 8); - GT_Values.RA.addLatheRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "slabs", 1L, GT_Values.W), - new ItemStack(Items.bowl, 1), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1), - 50, - 8); - GT_Values.RA.addLatheRecipe( - getModItem(GT_MachineRecipeLoader.aTextEBXL, "woodslab", 1L, GT_Values.W), - new ItemStack(Items.bowl, 1), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1), - 50, - 8); + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.wooden_slab, 1, GT_Values.W)) + .itemOutputs( + new ItemStack(Items.bowl, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(8).addTo(sLatheRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Forestry.modID, "slabs", 1L, GT_Values.W)) + .itemOutputs( + new ItemStack(Items.bowl, 1), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(8).addTo(sLatheRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/MatterAmplifierRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/MatterAmplifierRecipes.java index dcf2549a44..4955440f58 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/MatterAmplifierRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/MatterAmplifierRecipes.java @@ -1,13 +1,23 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAmplifiers; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; public class MatterAmplifierRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addAmplifier(ItemList.IC2_Scrap.get(9L), 180, 1); - GT_Values.RA.addAmplifier(ItemList.IC2_Scrapbox.get(1L), 180, 1); + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Scrap.get(9L)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.UUAmplifier.getFluid(1)).duration(9 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAmplifiers); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Scrapbox.get(1L)).noItemOutputs().noFluidInputs() + .fluidOutputs(Materials.UUAmplifier.getFluid(1)).duration(9 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sAmplifiers); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java index 9531c1dfbc..34f3a437ac 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/MixerRecipes.java @@ -1,9 +1,19 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.GT_Values.NF; +import static gregtech.api.enums.GT_Values.NI; +import static gregtech.api.enums.ModIDs.AppliedEnergistics2; +import static gregtech.api.enums.ModIDs.BiomesOPlanty; +import static gregtech.api.enums.ModIDs.Forestry; +import static gregtech.api.enums.ModIDs.Natura; +import static gregtech.api.enums.ModIDs.PamsHarvestCraft; +import static gregtech.api.enums.ModIDs.Railcraft; +import static gregtech.api.enums.ModIDs.Thaumcraft; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isRailcraftLoaded; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isThaumcraftLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +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 net.minecraftforge.fluids.FluidRegistry.getFluidStack; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; @@ -14,1754 +24,1265 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; -import gregtech.api.enums.*; +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.MaterialsKevlar; +import gregtech.api.enums.MaterialsOreAlum; +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_Utility; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class MixerRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderPearl, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.EnderEye, OrePrefixes.dust.mMaterialAmount), - (int) (100L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 48); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Electrum, 2L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Invar, 3L * OrePrefixes.dust.mMaterialAmount), - (int) (300L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Invar, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Manganese, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1L), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.StainlessSteel, 9L * OrePrefixes.dust.mMaterialAmount), - (int) (900L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Kanthal, 3L * OrePrefixes.dust.mMaterialAmount), - (int) (300L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 120); - // GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3L), - // GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Barium, 2L), GT_OreDictUnificator.get(OrePrefixes.dust, - // Materials.Yttrium, 1L), GT_Values.NI, GT_Values.NI, GT_Utility.getIntegratedCircuit(1), GT_Values.NF, - // GT_Values.NF, GT_OreDictUnificator.getDust(Materials.YttriumBariumCuprate, 6L * - // OrePrefixes.dust.mMaterialAmount), (int) (600L * OrePrefixes.dust.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Brass, 4L * OrePrefixes.dust.mMaterialAmount), - (int) (400L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Bronze, 4L * OrePrefixes.dust.mMaterialAmount), - (int) (400L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(3), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Cupronickel, 2L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 24); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 4L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(4), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.SterlingSilver, 5L * OrePrefixes.dust.mMaterialAmount), - (int) (500L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Electrum, 2L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.BlackBronze, 5L * OrePrefixes.dust.mMaterialAmount), - (int) (500L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 4L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.BismuthBronze, 5L * OrePrefixes.dust.mMaterialAmount), - (int) (500L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackBronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 3L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.BlackSteel, 5L * OrePrefixes.dust.mMaterialAmount), - (int) (500L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SterlingSilver, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BismuthBronze, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 2L), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.RedSteel, 8L * OrePrefixes.dust.mMaterialAmount), - (int) (800L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RoseGold, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 2L), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.BlueSteel, 8L * OrePrefixes.dust.mMaterialAmount), - (int) (800L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 5L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 15L), - GT_Utility.getIntegratedCircuit(14), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.BlackSteel, 25L * OrePrefixes.dust.mMaterialAmount), - (int) (800L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 480); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 20L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 10L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(15), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.RedSteel, 40L * OrePrefixes.dust.mMaterialAmount), - (int) (1200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 480); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 19L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 16L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 5L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 64L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 16L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 40L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(16), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.BlueSteel, 64L * OrePrefixes.dust.mMaterialAmount), - GT_OreDictUnificator.getDust(Materials.BlueSteel, 64L * OrePrefixes.dust.mMaterialAmount), - GT_OreDictUnificator.getDust(Materials.BlueSteel, 32L * OrePrefixes.dust.mMaterialAmount), - GT_Values.NI, - (int) (3600L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 480); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 5L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Molybdenum, 1L), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(2), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Ultimet, 9L * OrePrefixes.dust.mMaterialAmount), - (int) (900L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 500); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 7L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.CobaltBrass, 9L * OrePrefixes.dust.mMaterialAmount), - (int) (900L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 3L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * OrePrefixes.dust.mMaterialAmount), - (int) (600L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Charcoal, 3L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * OrePrefixes.dust.mMaterialAmount), - (int) (600L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 3L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * OrePrefixes.dust.mMaterialAmount), - (int) (600L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Indium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gallium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.IndiumGalliumPhosphide, 3L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brick, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Fireclay, 2L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Nichrome, 5L * OrePrefixes.dust.mMaterialAmount), - (int) (500L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 480); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 3L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.Osmiridium, 4L * OrePrefixes.dust.mMaterialAmount), - (int) (400L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 2000); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Niobium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.NiobiumTitanium, 2L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 2000); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gallium, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.VanadiumGallium, 4L * OrePrefixes.dust.mMaterialAmount), - (int) (400L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 2000); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.TungstenCarbide, 2L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 500); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.TungstenSteel, 2L * OrePrefixes.dust.mMaterialAmount), - (int) (50L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 1920); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 3L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.TPV, 7L * OrePrefixes.dust.mMaterialAmount), - (int) (175L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 1920); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 5L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Molybdenum, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 1L), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.HSSG, 9L * OrePrefixes.dust.mMaterialAmount), - (int) (600L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 1920); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 6L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Manganese, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1L), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.HSSE, 9L * OrePrefixes.dust.mMaterialAmount), - (int) (700L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 4096); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 6L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(2), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.HSSS, 9L * OrePrefixes.dust.mMaterialAmount), - (int) (800L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 7680); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 4L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.FerriteMixture, 6L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 7L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.getDust(Materials.BorosilicateGlass, 8L * OrePrefixes.dust.mMaterialAmount), - (int) (200L * OrePrefixes.dust.mMaterialAmount / 3628800L), - 8); - - GT_Values.RA.addMixerRecipe( - new ItemStack(Items.rotten_flesh, 1, 0), - new ItemStack(Items.fermented_spider_eye, 1, 0), - ItemList.IC2_Scrap.get(1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 1L), - getFluidStack("potion.purpledrink", 750), - getFluidStack("sludge", 1000), - ItemList.Food_Chum.get(4L), - 128, - 24); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(1000L), - GT_Values.NF, - ItemList.Food_Dough.get(2L), - 32, - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), - ItemList.Food_PotatoChips.get(1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - ItemList.Food_ChiliChips.get(1L), - 32, - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Redstone, 5L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ruby, 4L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - ItemList.IC2_Energium_Dust.get(1L), - 300, - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 5L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ruby, 4L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - ItemList.IC2_Energium_Dust.get(9L), - 600, - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - new ItemStack(Blocks.brown_mushroom, 1), - new ItemStack(Items.spider_eye, 1), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - new ItemStack(Items.fermented_spider_eye, 1), - 100, - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.LiveRoot, 1L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IronWood, 2L), - 100, - 8); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 9L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.LiveRoot, 9L), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IronWood, 18L), - 900, - 8); - GT_Values.RA.addMixerRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 1L), - GT_Values.NI, - Materials.Water.getFluid(500L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Fluix, 2L), - 20, - 16); - GT_Values.RA.addMixerRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 1L), - GT_Values.NI, - GT_ModHandler.getDistilledWater(500L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Fluix, 2L), - 20, - 16); - GT_Values.RA.addMixerRecipe( - ItemList.IC2_Fertilizer.get(1L), - new ItemStack(Blocks.dirt, 8, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.Water.getFluid(1000L), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextForestry, "soil", 8L, 0), - 64, - 16); - GT_Values.RA.addMixerRecipe( - ItemList.FR_Fertilizer.get(1L), - new ItemStack(Blocks.dirt, 8, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.Water.getFluid(1000L), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextForestry, "soil", 8L, 0), - 64, - 16); - GT_Values.RA.addMixerRecipe( - ItemList.FR_Compost.get(1L), - new ItemStack(Blocks.dirt, 8, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.Water.getFluid(1000L), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextForestry, "soil", 8L, 0), - 64, - 16); - GT_Values.RA.addMixerRecipe( - ItemList.FR_Mulch.get(8L), - new ItemStack(Blocks.dirt, 8, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.Water.getFluid(1000L), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextForestry, "soil", 8L, 0), - 64, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.sand, 1, 32767), - new ItemStack(Blocks.dirt, 1, 32767), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.Water.getFluid(250L), - GT_Values.NF, - getModItem(GT_MachineRecipeLoader.aTextForestry, "soil", 2L, 1), - 16, - 16); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 5L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 6L), - 16, - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 5L), - Materials.Empty.getCells(1), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.HeavyFuel.getFluid(1000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 6L), - 16, - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1L), - Materials.Empty.getCells(5), - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.LightFuel.getFluid(5000L), - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 6L), - 16, - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 5L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(5), - Materials.HeavyFuel.getFluid(1000L), - Materials.Fuel.getFluid(6000L), - Materials.Empty.getCells(5), - 16, - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(6), - Materials.LightFuel.getFluid(5000L), - Materials.Fuel.getFluid(6000L), - Materials.Empty.getCells(1), - 16, - 120); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 5L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - GT_Values.NI, - GT_Values.NI, - Materials.Lubricant.getFluid(20), - new FluidStack(ItemList.sDrillingFluid, 5000), - Materials.Empty.getCells(5), - 64, - 16); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 1L), - GT_Utility.getIntegratedCircuit(4), - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(125), - getFluidStack("ic2coolant", 125), - GT_Values.NI, - 256, - 48); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 1L), - GT_Utility.getIntegratedCircuit(4), - GT_Values.NI, - GT_Values.NI, - GT_ModHandler.getDistilledWater(1000), - getFluidStack("ic2coolant", 1000), - GT_Values.NI, - 256, - 48); - - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.AdvancedGlue.getFluid(200), - null, - ItemList.SFMixture.get(4), - 800, - 16); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.AdvancedGlue.getFluid(200), - null, - ItemList.SFMixture.get(8), - 800, - 16); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Caesium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.AdvancedGlue.getFluid(200), - null, - ItemList.SFMixture.get(12), - 800, - 16); - - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(2), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderEye, 1L), - null, - null, - Materials.Mercury.getFluid(1000), - null, - ItemList.MSFMixture.get(4), - 300, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), - null, - null, - Materials.Mercury.getFluid(500), - null, - ItemList.MSFMixture.get(1), - 300, - 64); - - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 4), - ItemList.MSFMixture.get(24), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(4000), - null, - ItemList.Block_MSSFUEL.get(4), - 400, - 600); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 4), - ItemList.MSFMixture.get(16), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(3000), - null, - ItemList.Block_MSSFUEL.get(4), - 300, - 600); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 4), - ItemList.MSFMixture.get(8), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(2000), - null, - ItemList.Block_MSSFUEL.get(4), - 200, - 600); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 4), - ItemList.MSFMixture.get(24), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(1600), - null, - ItemList.Block_MSSFUEL.get(4), - 400, - 600); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 4), - ItemList.MSFMixture.get(16), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(1200), - null, - ItemList.Block_MSSFUEL.get(4), - 300, - 600); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 4), - ItemList.MSFMixture.get(8), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(800), - null, - ItemList.Block_MSSFUEL.get(4), - 200, - 600); - - if (isThaumcraftLoaded) { - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(20), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedAir, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.FierySteel.getFluid(50), - null, - ItemList.MSFMixture.get(20), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(20), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEarth, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.FierySteel.getFluid(50), - null, - ItemList.MSFMixture.get(20), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(20), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEntropy, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.FierySteel.getFluid(50), - null, - ItemList.MSFMixture.get(20), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(20), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedFire, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.FierySteel.getFluid(50), - null, - ItemList.MSFMixture.get(20), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(20), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedOrder, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.FierySteel.getFluid(50), - null, - ItemList.MSFMixture.get(20), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(20), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedWater, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.FierySteel.getFluid(50), - null, - ItemList.MSFMixture.get(20), - 200, - 64); + + registerSingleBlockAndMulti(); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderPearl, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.EnderEye, OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(48).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Electrum, 2L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Invar, 3L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Invar, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Manganese, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.StainlessSteel, 9L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(45 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Kanthal, 3L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Brass, 4L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Bronze, 4L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Cupronickel, 2L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(24).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 4), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.SterlingSilver, 5L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Electrum, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.BlackBronze, 5L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.BismuthBronze, 5L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackBronze, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.BlackSteel, 5L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SterlingSilver, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BismuthBronze, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.RedSteel, 8L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RoseGold, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.BlueSteel, 8L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 15), + GT_Utility.getIntegratedCircuit(14)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.BlackSteel, 25L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 20), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 10), + GT_Utility.getIntegratedCircuit(15)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.RedSteel, 40L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 19), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 16), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 64), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BlackSteel, 16), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 40), + GT_Utility.getIntegratedCircuit(16)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.BlueSteel, 64L * OrePrefixes.dust.mMaterialAmount), + GT_OreDictUnificator.getDust(Materials.BlueSteel, 64L * OrePrefixes.dust.mMaterialAmount), + GT_OreDictUnificator.getDust(Materials.BlueSteel, 32L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(3 * MINUTES).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Molybdenum, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Ultimet, 9L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(45 * SECONDS).eut(500).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brass, 7), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.CobaltBrass, 9L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(45 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Charcoal, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Indium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gallium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator + .getDust(Materials.IndiumGalliumPhosphide, 3L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Brick, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Fireclay, 2L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Nichrome, 5L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 3), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.Osmiridium, 4L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(2000).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Niobium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.NiobiumTitanium, 2L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(2000).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gallium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.VanadiumGallium, 4L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS).eut(2000).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.TungstenCarbide, 2L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(500).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.TungstenSteel, 2L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_EV) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.TPV, 7L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(8 * SECONDS + 15 * TICKS).eut(TierEU.RECIPE_EV) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Molybdenum, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.HSSG, 9L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 6), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Manganese, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.HSSE, 9L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(35 * SECONDS).eut(4096).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 6), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 1), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_OreDictUnificator.getDust(Materials.HSSS, 9L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 4)) + .itemOutputs( + GT_OreDictUnificator.getDust(Materials.FerriteMixture, 6L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 7)) + .itemOutputs( + GT_OreDictUnificator + .getDust(Materials.BorosilicateGlass, 8L * OrePrefixes.dust.mMaterialAmount)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Items.rotten_flesh, 1, 0), + new ItemStack(Items.fermented_spider_eye, 1, 0), + ItemList.IC2_Scrap.get(1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 1)) + .itemOutputs(ItemList.Food_Chum.get(4)).fluidInputs(getFluidStack("potion.purpledrink", 750)) + .fluidOutputs(getFluidStack("sludge", 1000)).duration(6 * SECONDS + 8 * TICKS).eut(24) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1)) + .itemOutputs(ItemList.Food_Dough.get(2)).fluidInputs(Materials.Water.getFluid(1000)).noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1), + ItemList.Food_PotatoChips.get(1)) + .itemOutputs(ItemList.Food_ChiliChips.get(1)).noFluidInputs().noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Redstone, 5), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ruby, 4)) + .itemOutputs(ItemList.IC2_Energium_Dust.get(1)).noFluidInputs().noFluidOutputs().duration(15 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ruby, 4)) + .itemOutputs(ItemList.IC2_Energium_Dust.get(9)).noFluidInputs().noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1), + new ItemStack(Blocks.brown_mushroom, 1), + new ItemStack(Items.spider_eye, 1)) + .itemOutputs(new ItemStack(Items.fermented_spider_eye, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.LiveRoot, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IronWood, 2)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 9), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.LiveRoot, 9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IronWood, 18)).noFluidInputs() + .noFluidOutputs().duration(45 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Fluix, 2)) + .fluidInputs(Materials.Water.getFluid(500)).noFluidOutputs().duration(20 * TICKS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Fluix, 2)) + .fluidInputs(GT_ModHandler.getDistilledWater(500)).noFluidOutputs().duration(20 * TICKS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.IC2_Fertilizer.get(1), + new ItemStack(Blocks.dirt, 8, 32767), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "soil", 8L, 0)).fluidInputs(Materials.Water.getFluid(1000)) + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.FR_Fertilizer.get(1), + new ItemStack(Blocks.dirt, 8, 32767), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "soil", 8L, 0)).fluidInputs(Materials.Water.getFluid(1000)) + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.FR_Compost.get(1), + new ItemStack(Blocks.dirt, 8, 32767), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "soil", 8L, 0)).fluidInputs(Materials.Water.getFluid(1000)) + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.FR_Mulch.get(8), + new ItemStack(Blocks.dirt, 8, 32767), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "soil", 8L, 0)).fluidInputs(Materials.Water.getFluid(1000)) + .noFluidOutputs().duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.sand, 1, 32767), + new ItemStack(Blocks.dirt, 1, 32767), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(getModItem(Forestry.modID, "soil", 2L, 1)).fluidInputs(Materials.Water.getFluid(250)) + .noFluidOutputs().duration(16 * TICKS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 5), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 6)).noFluidInputs() + .noFluidOutputs().duration(16 * TICKS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 5), + Materials.Empty.getCells(1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 6)) + .fluidInputs(Materials.HeavyFuel.getFluid(1000)).noFluidOutputs().duration(16 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1), + Materials.Empty.getCells(5), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 6)) + .fluidInputs(Materials.LightFuel.getFluid(5000)).noFluidOutputs().duration(16 * TICKS) + .eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 5), + GT_Utility.getIntegratedCircuit(5)) + .itemOutputs(Materials.Empty.getCells(5)).fluidInputs(Materials.HeavyFuel.getFluid(1000)) + .fluidOutputs(Materials.Fuel.getFluid(6000)).duration(16 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.LightFuel.getFluid(5000)) + .fluidOutputs(Materials.Fuel.getFluid(6000)).duration(16 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 5), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1)) + .itemOutputs(Materials.Empty.getCells(5)).fluidInputs(Materials.Lubricant.getFluid(20)) + .fluidOutputs(new FluidStack(ItemList.sDrillingFluid, 5000)).duration(3 * SECONDS + 4 * TICKS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 1), + GT_Utility.getIntegratedCircuit(4)) + .noItemOutputs().fluidInputs(Materials.Water.getFluid(125)) + .fluidOutputs(getFluidStack("ic2coolant", 125)).duration(12 * SECONDS + 16 * TICKS).eut(48) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 1), + GT_Utility.getIntegratedCircuit(4)) + .noItemOutputs().fluidInputs(GT_ModHandler.getDistilledWater(1000)) + .fluidOutputs(getFluidStack("ic2coolant", 1000)).duration(12 * SECONDS + 16 * TICKS).eut(48) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.SFMixture.get(4)).fluidInputs(Materials.AdvancedGlue.getFluid(200)) + .noFluidOutputs().duration(40 * SECONDS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.SFMixture.get(8)).fluidInputs(Materials.AdvancedGlue.getFluid(200)) + .noFluidOutputs().duration(40 * SECONDS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Caesium, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.SFMixture.get(12)).fluidInputs(Materials.AdvancedGlue.getFluid(200)) + .noFluidOutputs().duration(40 * SECONDS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderEye, 1)) + .itemOutputs(ItemList.MSFMixture.get(4)).fluidInputs(Materials.Mercury.getFluid(1000)).noFluidOutputs() + .duration(15 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.SFMixture.get(1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1)) + .itemOutputs(ItemList.MSFMixture.get(1)).fluidInputs(Materials.Mercury.getFluid(500)).noFluidOutputs() + .duration(15 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 4), + ItemList.MSFMixture.get(24), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(4)).fluidInputs(Materials.NitroFuel.getFluid(4000)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 4), + ItemList.MSFMixture.get(16), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(4)).fluidInputs(Materials.NitroFuel.getFluid(3000)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 4), + ItemList.MSFMixture.get(8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(4)).fluidInputs(Materials.NitroFuel.getFluid(2000)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 4), + ItemList.MSFMixture.get(24), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(4)).fluidInputs(Materials.GasolinePremium.getFluid(1600)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 4), + ItemList.MSFMixture.get(16), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(4)).fluidInputs(Materials.GasolinePremium.getFluid(1200)) + .noFluidOutputs().duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 4), + ItemList.MSFMixture.get(8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(4)).fluidInputs(Materials.GasolinePremium.getFluid(800)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + if (Thaumcraft.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(20), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedAir, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(20)).fluidInputs(Materials.FierySteel.getFluid(50)) + .noFluidOutputs().duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(20), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEarth, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(20)).fluidInputs(Materials.FierySteel.getFluid(50)) + .noFluidOutputs().duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(20), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEntropy, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(20)).fluidInputs(Materials.FierySteel.getFluid(50)) + .noFluidOutputs().duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(20), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedFire, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(20)).fluidInputs(Materials.FierySteel.getFluid(50)) + .noFluidOutputs().duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(20), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedOrder, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(20)).fluidInputs(Materials.FierySteel.getFluid(50)) + .noFluidOutputs().duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(20), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedWater, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(20)).fluidInputs(Materials.FierySteel.getFluid(50)) + .noFluidOutputs().duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); FluidStack tFD = getFluidStack("fluiddeath", 30); if (tFD != null && tFD.getFluid() != null && tFD.amount > 0) { - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(30), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedAir, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - tFD, - null, - ItemList.MSFMixture.get(30), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(30), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEarth, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - tFD, - null, - ItemList.MSFMixture.get(30), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(30), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEntropy, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - tFD, - null, - ItemList.MSFMixture.get(30), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(30), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedFire, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - tFD, - null, - ItemList.MSFMixture.get(30), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(30), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedOrder, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - tFD, - null, - ItemList.MSFMixture.get(30), - 200, - 64); - GT_Values.RA.addMixerRecipe( - ItemList.SFMixture.get(30), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedWater, 1L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - tFD, - null, - ItemList.MSFMixture.get(30), - 200, - 64); - - GT_Values.RA.addMixerRecipe( + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(30), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedAir, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(30)).fluidInputs(tFD).noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(30), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEarth, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(30)).fluidInputs(tFD).noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(30), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedEntropy, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(30)).fluidInputs(tFD).noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(30), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedFire, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(30)).fluidInputs(tFD).noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(30), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedOrder, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(30)).fluidInputs(tFD).noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.SFMixture.get(30), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.InfusedWater, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.MSFMixture.get(30)).fluidInputs(tFD).noFluidOutputs() + .duration(10 * SECONDS).eut(64).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 1), + ItemList.MSFMixture.get(6), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(1000)) + .noFluidOutputs().duration(7 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), + ItemList.MSFMixture.get(4), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(750)) + .noFluidOutputs().duration(6 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 1), + ItemList.MSFMixture.get(2), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(500)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 1), + ItemList.MSFMixture.get(6), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(400)) + .noFluidOutputs().duration(7 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), + ItemList.MSFMixture.get(4), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(300)) + .noFluidOutputs().duration(6 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 1), + ItemList.MSFMixture.get(2), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(200)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + } + } + + GT_Values.RA.stdBuilder() + .itemInputs( GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 1), - ItemList.MSFMixture.get(6), - getModItem("Thaumcraft", "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(1000), - null, - ItemList.Block_MSSFUEL.get(1), - 140, - 600); - GT_Values.RA.addMixerRecipe( + ItemList.SFMixture.get(6), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(1000)) + .noFluidOutputs().duration(7 * SECONDS).eut(250).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), - ItemList.MSFMixture.get(4), - getModItem("Thaumcraft", "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(750), - null, - ItemList.Block_MSSFUEL.get(1), - 120, - 600); - GT_Values.RA.addMixerRecipe( + ItemList.SFMixture.get(4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(750)) + .noFluidOutputs().duration(6 * SECONDS).eut(250).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 1), - ItemList.MSFMixture.get(2), - getModItem("Thaumcraft", "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(500), - null, - ItemList.Block_MSSFUEL.get(1), - 100, - 600); - GT_Values.RA.addMixerRecipe( + ItemList.SFMixture.get(2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(500)) + .noFluidOutputs().duration(5 * SECONDS).eut(250).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 1), - ItemList.MSFMixture.get(6), - getModItem("Thaumcraft", "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(400), - null, - ItemList.Block_MSSFUEL.get(1), - 140, - 600); - GT_Values.RA.addMixerRecipe( + ItemList.SFMixture.get(6), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(400)) + .noFluidOutputs().duration(7 * SECONDS).eut(250).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), - ItemList.MSFMixture.get(4), - getModItem("Thaumcraft", "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(300), - null, - ItemList.Block_MSSFUEL.get(1), - 120, - 600); - GT_Values.RA.addMixerRecipe( + ItemList.SFMixture.get(4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(300)) + .noFluidOutputs().duration(6 * SECONDS).eut(250).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 1), - ItemList.MSFMixture.get(2), - getModItem("Thaumcraft", "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(200), - null, - ItemList.Block_MSSFUEL.get(1), - 100, - 600); - } - } + ItemList.SFMixture.get(2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(200)) + .noFluidOutputs().duration(5 * SECONDS).eut(250).addTo(sMixerRecipes); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 1), - ItemList.SFMixture.get(6), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(1000), - null, - ItemList.Block_SSFUEL.get(1), - 140, - 250); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), - ItemList.SFMixture.get(4), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(750), - null, - ItemList.Block_SSFUEL.get(1), - 120, - 250); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 1), - ItemList.SFMixture.get(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(500), - null, - ItemList.Block_SSFUEL.get(1), - 100, - 250); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lignite, 1), - ItemList.SFMixture.get(6), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(400), - null, - ItemList.Block_SSFUEL.get(1), - 140, - 250); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), - ItemList.SFMixture.get(4), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(300), - null, - ItemList.Block_SSFUEL.get(1), - 120, - 250); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 1), - ItemList.SFMixture.get(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(200), - null, - ItemList.Block_SSFUEL.get(1), - 100, - 250); - GT_Values.RA.addMixerRecipe( - new ItemStack[] { Materials.NaquadahEnriched.getDust(8), Materials.Holmium.getDust(2), - GT_Utility.getIntegratedCircuit(4) }, - null, - new ItemStack[] { Materials.EnrichedHolmium.getDust(10) }, - null, - 30 * 20, - (int) GT_Values.VP[7]); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricAcid, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Cell_Empty.get(1)).fluidInputs(Materials.NitricAcid.getFluid(1000)) + .fluidOutputs(new FluidStack(ItemList.sNitrationMixture, 2000)).duration(24 * SECONDS).eut(2) + .addTo(sMixerRecipes); - // Catalysts for Plasma Forge. - GT_Values.RA.addMixerRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(9) }, - new FluidStack[] { Materials.Helium.getPlasma(1000L), Materials.Iron.getPlasma(1000L), - Materials.Calcium.getPlasma(1000L), Materials.Niobium.getPlasma(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentCrudeCatalyst.getFluid(1000L) }, - 50_000, - 125_000); - - GT_Values.RA.addMixerRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(10) }, - new FluidStack[] { Materials.DimensionallyTranscendentCrudeCatalyst.getFluid(1000L), - Materials.Radon.getPlasma(1000L), Materials.Nickel.getPlasma(1000L), - Materials.Boron.getPlasma(1000L), Materials.Sulfur.getPlasma(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentProsaicCatalyst.getFluid(1000L) }, - 50_000, - 125_000 * 4); - - GT_Values.RA.addMixerRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(11) }, - new FluidStack[] { Materials.DimensionallyTranscendentProsaicCatalyst.getFluid(1000L), - Materials.Nitrogen.getPlasma(1000L), Materials.Zinc.getPlasma(1000L), - Materials.Silver.getPlasma(1000L), Materials.Titanium.getPlasma(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentResplendentCatalyst.getFluid(1000L) }, - 50_000, - 125_000 * 16); - - GT_Values.RA.addMixerRecipe( - new ItemStack[] { GT_Utility.getIntegratedCircuit(12) }, - new FluidStack[] { Materials.DimensionallyTranscendentResplendentCatalyst.getFluid(1000L), - Materials.Americium.getPlasma(1000L), Materials.Bismuth.getPlasma(1000L), - Materials.Oxygen.getPlasma(1000L), Materials.Tin.getPlasma(1000L) }, - new ItemStack[] { GT_Values.NI }, - new FluidStack[] { Materials.DimensionallyTranscendentExoticCatalyst.getFluid(1000L) }, - 50_000, - 125_000 * 64); - - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricAcid, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitricAcid.getFluid(1000L), - new FluidStack(ItemList.sNitrationMixture, 2000), - ItemList.Cell_Empty.get(1), - 480, - 2); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricAcid, 1), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitricAcid, 1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - GT_Values.NF, - GT_Values.NF, - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitrationMixture, 2), - 480, - 2); - - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - new ItemStack(Items.wheat, 4, 32767), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - null, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 2), - new ItemStack(Items.wheat, 4, 32767), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - getModItem("BiomesOPlenty", "plants", 4, 6), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 2), - getModItem("BiomesOPlenty", "plants", 4, 6), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - getModItem("harvestcraft", "oatsItem", 4), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 2), - getModItem("harvestcraft", "oatsItem", 4), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - getModItem("harvestcraft", "ryeItem", 4), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 2), - getModItem("harvestcraft", "ryeItem", 4), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - getModItem("harvestcraft", "barleyItem", 4), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 2), - getModItem("harvestcraft", "barleyItem", 4, 6), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - getModItem("Natura", "barleyFood", 4), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 2), - getModItem("Natura", "barleyFood", 4), - GT_Utility.getIntegratedCircuit(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 32767), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4L), - GT_Utility.getIntegratedCircuit(3), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); - GT_Values.RA.addMixerRecipe( - new ItemStack(Blocks.dirt, 1, 2), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4L), - GT_Utility.getIntegratedCircuit(3), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(100), - GT_Values.NF, - getModItem("Forestry", "fertilizerBio", 1L, 0), - 200, - 16); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricAcid, 1), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitricAcid, 1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitrationMixture, 2)).noFluidInputs() + .noFluidOutputs().duration(24 * SECONDS).eut(2).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 32767), + new ItemStack(Items.wheat, 4, 32767), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 2), + new ItemStack(Items.wheat, 4, 32767), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 32767), + getModItem(BiomesOPlanty.modID, "plants", 4, 6), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 2), + getModItem(BiomesOPlanty.modID, "plants", 4, 6), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 32767), + getModItem(PamsHarvestCraft.modID, "oatsItem", 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 2), + getModItem(PamsHarvestCraft.modID, "oatsItem", 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 32767), + getModItem(PamsHarvestCraft.modID, "ryeItem", 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 2), + getModItem(PamsHarvestCraft.modID, "ryeItem", 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 32767), + getModItem(PamsHarvestCraft.modID, "barleyItem", 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 2), + getModItem(PamsHarvestCraft.modID, "barleyItem", 4, 6), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 32767), + getModItem(Natura.modID, "barleyFood", 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 2), + getModItem(Natura.modID, "barleyFood", 4), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 32767), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.dirt, 1, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4), + GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(getModItem(Forestry.modID, "fertilizerBio", 1L, 0)) + .fluidInputs(Materials.Water.getFluid(100)).noFluidOutputs().duration(10 * SECONDS).eut(16) + .addTo(sMixerRecipes); // radiation manufacturing - GT_Values.RA.addMixerRecipe( - GT_ModHandler.getIC2Item("fuelRod", 1), - new ItemStack(Items.glowstone_dust, 9), - NI, - NI, - Materials.Helium.getGas(250), - NF, - ItemList.GlowstoneCell.get(1), - 30, - 16); - - GT_Values.RA.addMixerRecipe( - MaterialsOreAlum.SluiceSand.getDust(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(500), - MaterialsOreAlum.SluiceJuice.getFluid(1000), - GT_Values.NI, - 100, - 16); - - RA.addMixerRecipe( - new ItemStack[] { ItemList.IC2_Spray_WeedEx.get(1) }, - new FluidStack[] { MaterialsKevlar.NaphthenicAcid.getFluid(10) }, - new ItemStack[] {}, - new FluidStack[] { Materials.WeedEX9000.getFluid(750) }, - 100, - 100); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("fuelRod", 1), new ItemStack(Items.glowstone_dust, 9), NI, NI) + .itemOutputs(ItemList.GlowstoneCell.get(1)).fluidInputs(Materials.Helium.getGas(250)).fluidOutputs(NF) + .duration(1 * SECONDS + 10 * TICKS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(MaterialsOreAlum.SluiceSand.getDust(1)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(500)).fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(1000)) + .duration(5 * SECONDS).eut(16).addTo(sMixerRecipes); // NaCl + H2O = (NaCl·H2O) - GT_Values.RA.addMixerRecipe( - Materials.Salt.getDust(2), - GT_Utility.getIntegratedCircuit(3), - GT_Values.NI, - GT_Values.NI, - Materials.Water.getFluid(1000), - Materials.SaltWater.getFluid(1000), - GT_Values.NI, - 100, - 8); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Salt.getDust(2), GT_Utility.getIntegratedCircuit(3)) + .noItemOutputs().fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(Materials.SaltWater.getFluid(1000)).duration(5 * SECONDS).eut(8).addTo(sMixerRecipes); // CaCO3 + 2 CH3COOH = Ca(CH3COO)2 + H2O + CO2 - GT_Values.RA.addMixerRecipe( - Materials.Calcite.getDust(5), - Materials.Empty.getCells(2), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.CalciumAcetateSolution.getFluid(1000), - Materials.Water.getCells(1), - Materials.CarbonDioxide.getCells(1), - GT_Values.NI, - GT_Values.NI, - 240, - 16); - GT_Values.RA.addMixerRecipe( - Materials.Calcite.getDust(5), - Materials.Empty.getCells(2), - GT_Utility.getIntegratedCircuit(11), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.Water.getFluid(1000), - Materials.CalciumAcetateSolution.getCells(1), - Materials.CarbonDioxide.getCells(1), - GT_Values.NI, - GT_Values.NI, - 240, - 16); - GT_Values.RA.addMixerRecipe( - Materials.Calcite.getDust(5), - Materials.Empty.getCells(2), - GT_Utility.getIntegratedCircuit(21), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.CarbonDioxide.getGas(1000), - Materials.Water.getCells(1), - Materials.CalciumAcetateSolution.getCells(1), - GT_Values.NI, - GT_Values.NI, - 240, - 16); - GT_Values.RA.addMixerRecipe( - Materials.Calcite.getDust(5), - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(4), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.CalciumAcetateSolution.getFluid(1000), - Materials.CarbonDioxide.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 240, - 16); - GT_Values.RA.addMixerRecipe( - Materials.Calcite.getDust(5), - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(14), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.CarbonDioxide.getGas(1000), - Materials.CalciumAcetateSolution.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - 240, - 16); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Calcite.getDust(5), + Materials.Empty.getCells(2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1), Materials.CarbonDioxide.getCells(1)) + .fluidInputs(Materials.AceticAcid.getFluid(2000)) + .fluidOutputs(Materials.CalciumAcetateSolution.getFluid(1000)).duration(12 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Calcite.getDust(5), + Materials.Empty.getCells(2), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.CalciumAcetateSolution.getCells(1), Materials.CarbonDioxide.getCells(1)) + .fluidInputs(Materials.AceticAcid.getFluid(2000)).fluidOutputs(Materials.Water.getFluid(1000)) + .duration(12 * SECONDS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Calcite.getDust(5), + Materials.Empty.getCells(2), + GT_Utility.getIntegratedCircuit(21)) + .itemOutputs(Materials.Water.getCells(1), Materials.CalciumAcetateSolution.getCells(1)) + .fluidInputs(Materials.AceticAcid.getFluid(2000)).fluidOutputs(Materials.CarbonDioxide.getGas(1000)) + .duration(12 * SECONDS).eut(16).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Calcite.getDust(5), + Materials.Empty.getCells(1), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(Materials.CarbonDioxide.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(2000)) + .fluidOutputs(Materials.CalciumAcetateSolution.getFluid(1000)).duration(12 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Calcite.getDust(5), + Materials.Empty.getCells(1), + GT_Utility.getIntegratedCircuit(14)) + .itemOutputs(Materials.CalciumAcetateSolution.getCells(1)) + .fluidInputs(Materials.AceticAcid.getFluid(2000)).fluidOutputs(Materials.CarbonDioxide.getGas(1000)) + .duration(12 * SECONDS).eut(16).addTo(sMixerRecipes); + // Ca + 2 CH3COOH = Ca(CH3COO)2 + 2H - GT_Values.RA.addMixerRecipe( - Materials.Calcium.getDust(1), - Materials.Empty.getCells(2), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.CalciumAcetateSolution.getFluid(1000), - Materials.Hydrogen.getCells(2), - 80, - 16); - GT_Values.RA.addMixerRecipe( - Materials.Calcium.getDust(1), - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(11), - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.Hydrogen.getGas(2000), - Materials.CalciumAcetateSolution.getCells(1), - 80, - 16); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Calcium.getDust(1), + Materials.Empty.getCells(2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Hydrogen.getCells(2)).fluidInputs(Materials.AceticAcid.getFluid(2000)) + .fluidOutputs(Materials.CalciumAcetateSolution.getFluid(1000)).duration(4 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Calcium.getDust(1), + Materials.Empty.getCells(1), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.CalciumAcetateSolution.getCells(1)) + .fluidInputs(Materials.AceticAcid.getFluid(2000)).fluidOutputs(Materials.Hydrogen.getGas(2000)) + .duration(4 * SECONDS).eut(16).addTo(sMixerRecipes); + // CaO + 2 CH3COOH = Ca(CH3COO)2 + H2O - GT_Values.RA.addMixerRecipe( - Materials.Quicklime.getDust(2), - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(1), - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.CalciumAcetateSolution.getFluid(1000), - Materials.Water.getCells(1), - 80, - 16); - GT_Values.RA.addMixerRecipe( - Materials.Quicklime.getDust(2), - Materials.Empty.getCells(1), - GT_Utility.getIntegratedCircuit(11), - GT_Values.NI, - Materials.AceticAcid.getFluid(2000), - Materials.Water.getFluid(1000), - Materials.CalciumAcetateSolution.getCells(1), - 80, - 16); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Quicklime.getDust(2), + Materials.Empty.getCells(1), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Water.getCells(1)).fluidInputs(Materials.AceticAcid.getFluid(2000)) + .fluidOutputs(Materials.CalciumAcetateSolution.getFluid(1000)).duration(4 * SECONDS).eut(16) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Quicklime.getDust(2), + Materials.Empty.getCells(1), + GT_Utility.getIntegratedCircuit(11)) + .itemOutputs(Materials.CalciumAcetateSolution.getCells(1)) + .fluidInputs(Materials.AceticAcid.getFluid(2000)).fluidOutputs(Materials.Water.getFluid(1000)) + .duration(4 * SECONDS).eut(16).addTo(sMixerRecipes); // 2CH3COOCH3 + 3CH3COCH3/(C4H6O2)n = 5Glue - GT_Values.RA.addMixerRecipe( - Materials.Acetone.getCells(3), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.PolyvinylAcetate.getFluid(2000), - Materials.AdvancedGlue.getFluid(5000), - Materials.Empty.getCells(3), - 100, - 8); - GT_Values.RA.addMixerRecipe( - Materials.PolyvinylAcetate.getCells(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Acetone.getFluid(3000), - Materials.AdvancedGlue.getFluid(5000), - Materials.Empty.getCells(2), - 100, - 8); - GT_Values.RA.addMixerRecipe( - Materials.MethylAcetate.getCells(3), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.PolyvinylAcetate.getFluid(2000), - Materials.AdvancedGlue.getFluid(5000), - Materials.Empty.getCells(3), - 100, - 8); - GT_Values.RA.addMixerRecipe( - Materials.PolyvinylAcetate.getCells(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.MethylAcetate.getFluid(3000), - Materials.AdvancedGlue.getFluid(5000), - Materials.Empty.getCells(2), - 100, - 8); - - GT_Values.RA.addMixerRecipe( - Materials.Sugar.getDust(4), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.SulfuricAcid.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Charcoal.getGems(1), - 1200, - 2); - GT_Values.RA.addMixerRecipe( - Materials.Wood.getDust(4), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.SulfuricAcid.getFluid(1000), - Materials.DilutedSulfuricAcid.getFluid(1000), - Materials.Charcoal.getGems(1), - 1200, - 2); - - GT_Values.RA.addMixerRecipe( - Materials.Fuel.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Tetranitromethane.getFluid(20), - Materials.NitroFuel.getFluid(1000), - Materials.Empty.getCells(1), - 20, - 480); - GT_Values.RA.addMixerRecipe( - Materials.BioDiesel.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - Materials.Tetranitromethane.getFluid(40), - Materials.NitroFuel.getFluid(900), - Materials.Empty.getCells(1), - 20, - 480); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Acetone.getCells(3)).itemOutputs(Materials.Empty.getCells(3)) + .fluidInputs(Materials.PolyvinylAcetate.getFluid(2000)) + .fluidOutputs(Materials.AdvancedGlue.getFluid(5000)).duration(5 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.PolyvinylAcetate.getCells(2)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.Acetone.getFluid(3000)) + .fluidOutputs(Materials.AdvancedGlue.getFluid(5000)).duration(5 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.MethylAcetate.getCells(3)) + .itemOutputs(Materials.Empty.getCells(3)).fluidInputs(Materials.PolyvinylAcetate.getFluid(2000)) + .fluidOutputs(Materials.AdvancedGlue.getFluid(5000)).duration(5 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.PolyvinylAcetate.getCells(2)) + .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.MethylAcetate.getFluid(3000)) + .fluidOutputs(Materials.AdvancedGlue.getFluid(5000)).duration(5 * SECONDS).eut(8).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sugar.getDust(4)).itemOutputs(Materials.Charcoal.getGems(1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(60 * SECONDS).eut(2) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Wood.getDust(4)).itemOutputs(Materials.Charcoal.getGems(1)) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).duration(60 * SECONDS).eut(2) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Fuel.getCells(1)).itemOutputs(Materials.Empty.getCells(1)) + .fluidInputs(Materials.Tetranitromethane.getFluid(20)).fluidOutputs(Materials.NitroFuel.getFluid(1000)) + .duration(20 * TICKS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.BioDiesel.getCells(1)).itemOutputs(Materials.Empty.getCells(1)) + .fluidInputs(Materials.Tetranitromethane.getFluid(40)).fluidOutputs(Materials.NitroFuel.getFluid(900)) + .duration(20 * TICKS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); // CH4O + C4H8 = C5H12O - GT_Values.RA.addMixerRecipe( - Materials.Methanol.getCells(1), - Materials.Butene.getCells(1), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.MTBEMixture.getCells(1), - Materials.Empty.getCells(1), - GT_Values.NI, - GT_Values.NI, - 20, - 480); - GT_Values.RA.addMixerRecipe( - Materials.Naphtha.getCells(16), - Materials.Gas.getCells(2), - Materials.Methanol.getCells(1), - Materials.Acetone.getCells(1), - GT_Values.NF, - GT_Values.NF, - Materials.GasolineRaw.getCells(20), - 100, - 480); - - GT_Values.RA.addMixerRecipe( - Materials.GasolineRegular.getCells(20), - Materials.Octane.getCells(2), - Materials.NitrousOxide.getCells(6), - Materials.Toluene.getCells(1), - Materials.AntiKnock.getFluid(3000L), - Materials.GasolinePremium.getFluid(32000L), - Materials.Empty.getCells(29), - 50, - 1920); - - if (isRailcraftLoaded) { - GT_Values.RA.addMixerRecipe( - EnumCube.COKE_BLOCK.getItem(), - ItemList.SFMixture.get(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(300), - null, - ItemList.Block_SSFUEL.get(1), - 100, - 250); - GT_Values.RA.addMixerRecipe( - EnumCube.COKE_BLOCK.getItem(), - ItemList.SFMixture.get(2), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(120), - null, - ItemList.Block_SSFUEL.get(1), - 100, - 250); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Methanol.getCells(1), Materials.Butene.getCells(1)) + .itemOutputs(Materials.MTBEMixture.getCells(1), Materials.Empty.getCells(1)).noFluidInputs() + .noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.Naphtha.getCells(16), + Materials.Gas.getCells(2), + Materials.Methanol.getCells(1), + Materials.Acetone.getCells(1)) + .itemOutputs(Materials.GasolineRaw.getCells(20)).noFluidInputs().noFluidOutputs().duration(5 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.GasolineRegular.getCells(20), + Materials.Octane.getCells(2), + Materials.NitrousOxide.getCells(6), + Materials.Toluene.getCells(1)) + .itemOutputs(Materials.Empty.getCells(29)).fluidInputs(Materials.AntiKnock.getFluid(3000)) + .fluidOutputs(Materials.GasolinePremium.getFluid(32000)).duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_EV).addTo(sMixerRecipes); + + if (Railcraft.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs( + EnumCube.COKE_BLOCK.getItem(), + ItemList.SFMixture.get(2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(300)) + .noFluidOutputs().duration(5 * SECONDS).eut(250).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + EnumCube.COKE_BLOCK.getItem(), + ItemList.SFMixture.get(2), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_SSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(120)) + .noFluidOutputs().duration(5 * SECONDS).eut(250).addTo(sMixerRecipes); } - if (isThaumcraftLoaded && isRailcraftLoaded) { - GT_Values.RA.addMixerRecipe( - EnumCube.COKE_BLOCK.getItem(), - ItemList.MSFMixture.get(2), - getModItem(MOD_ID_TC, "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.NitroFuel.getFluid(300), - null, - ItemList.Block_MSSFUEL.get(1), - 100, - 600); - GT_Values.RA.addMixerRecipe( - EnumCube.COKE_BLOCK.getItem(), - ItemList.MSFMixture.get(2), - getModItem(MOD_ID_TC, "ItemResource", 4), - GT_Values.NI, - GT_Values.NI, - GT_Utility.getIntegratedCircuit(1), - Materials.GasolinePremium.getFluid(120), - null, - ItemList.Block_MSSFUEL.get(1), - 100, - 600); + if (Thaumcraft.isModLoaded() && Railcraft.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs( + EnumCube.COKE_BLOCK.getItem(), + ItemList.MSFMixture.get(2), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.NitroFuel.getFluid(300)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + EnumCube.COKE_BLOCK.getItem(), + ItemList.MSFMixture.get(2), + getModItem(Thaumcraft.modID, "ItemResource", 4), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(ItemList.Block_MSSFUEL.get(1)).fluidInputs(Materials.GasolinePremium.getFluid(120)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); } } - public static void addMixerPotionRecipes(String aName, ItemStack aItem) { - // splash - if (!(FluidRegistry.getFluid("potion." + aName) == null - || FluidRegistry.getFluid("potion." + aName + ".splash") == null)) - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1L), - null, - null, - null, - new FluidStack(FluidRegistry.getFluid("potion." + aName), 750), - new FluidStack(FluidRegistry.getFluid("potion." + aName + ".splash"), 750), - null, - 200, - 24); - // splash strong - if (!(FluidRegistry.getFluid("potion." + aName + ".strong") == null - || FluidRegistry.getFluid("potion." + aName + ".strong.splash") == null)) - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1L), - null, - null, - null, - new FluidStack(FluidRegistry.getFluid("potion." + aName + ".strong"), 750), - new FluidStack(FluidRegistry.getFluid("potion." + aName + ".strong.splash"), 750), - null, - 200, - 24); - // splash long - if (!(FluidRegistry.getFluid("potion." + aName + ".long") == null - || FluidRegistry.getFluid("potion." + aName + ".long.splash") == null)) - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1L), - null, - null, - null, - new FluidStack(FluidRegistry.getFluid("potion." + aName + ".long"), 750), - new FluidStack(FluidRegistry.getFluid("potion." + aName + ".long.splash"), 750), - null, - 200, - 24); + public static void addMixerPotionRecipes(String aName) { + + boolean splash = !(FluidRegistry.getFluid("potion." + aName) == null + || FluidRegistry.getFluid("potion." + aName + ".splash") == null); + boolean splashStrong = !(FluidRegistry.getFluid("potion." + aName + ".strong") == null + || FluidRegistry.getFluid("potion." + aName + ".strong.splash") == null); + boolean splashLong = !(FluidRegistry.getFluid("potion." + aName + ".long") == null + || FluidRegistry.getFluid("potion." + aName + ".long.splash") == null); + + if (splash) + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1)) + .noItemOutputs().fluidInputs(new FluidStack(FluidRegistry.getFluid("potion." + aName), 750)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("potion." + aName + ".splash"), 750)) + .duration(10 * SECONDS).eut(24).addTo(sMixerRecipes); + + if (splashStrong) GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1)).noItemOutputs() + .fluidInputs(new FluidStack(FluidRegistry.getFluid("potion." + aName + ".strong"), 750)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("potion." + aName + ".strong.splash"), 750)) + .duration(10 * SECONDS).eut(24).addTo(sMixerRecipes); + + if (splashLong) GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1)).noItemOutputs() + .fluidInputs(new FluidStack(FluidRegistry.getFluid("potion." + aName + ".long"), 750)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("potion." + aName + ".long.splash"), 750)) + .duration(10 * SECONDS).eut(24).addTo(sMixerRecipes); + } + + public void registerSingleBlockAndMulti() { + GT_Values.RA.stdBuilder() + .itemInputs( + Materials.NaquadahEnriched.getDust(8), + Materials.Holmium.getDust(2), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(Materials.EnrichedHolmium.getDust(10)).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sMixerRecipes); + + // Catalysts for Plasma Forge. + { + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(9)).noItemOutputs() + .fluidInputs( + Materials.Helium.getPlasma(1000L), + Materials.Iron.getPlasma(1000L), + Materials.Calcium.getPlasma(1000L), + Materials.Niobium.getPlasma(1000L)) + .fluidOutputs(Materials.DimensionallyTranscendentCrudeCatalyst.getFluid(1000L)) + .duration(41 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)).noItemOutputs() + .fluidInputs( + Materials.DimensionallyTranscendentCrudeCatalyst.getFluid(1000L), + Materials.Radon.getPlasma(1000L), + Materials.Nickel.getPlasma(1000L), + Materials.Boron.getPlasma(1000L), + Materials.Sulfur.getPlasma(1000L)) + .fluidOutputs(Materials.DimensionallyTranscendentProsaicCatalyst.getFluid(1000L)) + .duration(41 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(11)).noItemOutputs() + .fluidInputs( + Materials.DimensionallyTranscendentProsaicCatalyst.getFluid(1000L), + Materials.Nitrogen.getPlasma(1000L), + Materials.Zinc.getPlasma(1000L), + Materials.Silver.getPlasma(1000L), + Materials.Titanium.getPlasma(1000L)) + .fluidOutputs(Materials.DimensionallyTranscendentResplendentCatalyst.getFluid(1000L)) + .duration(41 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(12)).noItemOutputs() + .fluidInputs( + Materials.DimensionallyTranscendentResplendentCatalyst.getFluid(1000L), + Materials.Americium.getPlasma(1000L), + Materials.Bismuth.getPlasma(1000L), + Materials.Oxygen.getPlasma(1000L), + Materials.Tin.getPlasma(1000L)) + .fluidOutputs(Materials.DimensionallyTranscendentExoticCatalyst.getFluid(1000L)) + .duration(41 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sMixerRecipes); + } + + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Spray_WeedEx.get(1)).noItemOutputs() + .fluidInputs(MaterialsKevlar.NaphthenicAcid.getFluid(10)) + .fluidOutputs(Materials.WeedEX9000.getFluid(750)).duration(5 * SECONDS).eut(100).addTo(sMixerRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/NEIHiding.java b/src/main/java/gregtech/loaders/postload/recipes/NEIHiding.java index e5ee87bae9..865bee813a 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/NEIHiding.java +++ b/src/main/java/gregtech/loaders/postload/recipes/NEIHiding.java @@ -1,20 +1,40 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.Forestry; +import static gregtech.api.enums.ModIDs.NotEnoughItems; + import net.minecraft.item.ItemStack; import codechicken.nei.api.API; +import gregtech.api.enums.ItemList; import gregtech.common.items.GT_MetaGenerated_Item_03; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class NEIHiding implements Runnable { @Override public void run() { - for (int g = 0; g < 16; g++) { - if (!GT_MachineRecipeLoader.isNEILoaded) { - break; + if (!NotEnoughItems.isModLoaded()) { + return; + } + + for (int i = 0; i < 16; i++) { + API.hideItem(new ItemStack(GT_MetaGenerated_Item_03.INSTANCE, 1, i)); + } + + if (Forestry.isModLoaded()) { + ItemStack[] coverIDs = { ItemList.Plank_Larch.get(2L), ItemList.Plank_Teak.get(2L), + ItemList.Plank_Acacia_Green.get(2L), ItemList.Plank_Lime.get(2L), ItemList.Plank_Chestnut.get(2L), + ItemList.Plank_Wenge.get(2L), ItemList.Plank_Baobab.get(2L), ItemList.Plank_Sequoia.get(2L), + ItemList.Plank_Kapok.get(2L), ItemList.Plank_Ebony.get(2L), ItemList.Plank_Mahagony.get(2L), + ItemList.Plank_Balsa.get(2L), ItemList.Plank_Willow.get(2L), ItemList.Plank_Walnut.get(2L), + ItemList.Plank_Greenheart.get(2L), ItemList.Plank_Cherry.get(2L), ItemList.Plank_Mahoe.get(2L), + ItemList.Plank_Poplar.get(2L), ItemList.Plank_Palm.get(2L), ItemList.Plank_Papaya.get(2L), + ItemList.Plank_Pine.get(2L), ItemList.Plank_Plum.get(2L), ItemList.Plank_Maple.get(2L), + ItemList.Plank_Citrus.get(2L) }; + + for (ItemStack cover : coverIDs) { + API.hideItem(cover); } - API.hideItem(new ItemStack(GT_MetaGenerated_Item_03.INSTANCE, 1, g)); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/OreDictUnification.java b/src/main/java/gregtech/loaders/postload/recipes/OreDictUnification.java index b5cfd7282b..e45b160352 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/OreDictUnification.java +++ b/src/main/java/gregtech/loaders/postload/recipes/OreDictUnification.java @@ -1,7 +1,7 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.HardcoreEnderExpansion; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isHardcoreEnderExpansionLoaded; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; @@ -11,11 +11,11 @@ public class OreDictUnification implements Runnable { @Override public void run() { - if (isHardcoreEnderExpansionLoaded) { + if (HardcoreEnderExpansion.isModLoaded()) { GT_OreDictUnificator.set( OrePrefixes.ingot, Materials.HeeEndium, - getModItem("HardcoreEnderExpansion", "endium_ingot", 1), + getModItem(HardcoreEnderExpansion.modID, "endium_ingot", 1), true, true); } diff --git a/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java index e317b6986b..621bfae743 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/PackagerRecipes.java @@ -1,5 +1,9 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -10,29 +14,29 @@ public class PackagerRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addBoxingRecipe( - ItemList.IC2_Scrap.get(9L), - ItemList.Schematic_3by3.get(0L), - ItemList.IC2_Scrapbox.get(1L), - 16, - 1); - GT_Values.RA.addBoxingRecipe( - ItemList.Food_Fries.get(1L), - GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Paper, 1L), - ItemList.Food_Packaged_Fries.get(1L), - 64, - 16); - GT_Values.RA.addBoxingRecipe( - ItemList.Food_PotatoChips.get(1L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 1L), - ItemList.Food_Packaged_PotatoChips.get(1L), - 64, - 16); - GT_Values.RA.addBoxingRecipe( - ItemList.Food_ChiliChips.get(1L), - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 1L), - ItemList.Food_Packaged_ChiliChips.get(1L), - 64, - 16); + GT_Values.RA.stdBuilder().itemInputs(ItemList.IC2_Scrap.get(9), ItemList.Schematic_3by3.get(0)) + .itemOutputs(ItemList.IC2_Scrapbox.get(1)).noFluidInputs().noFluidOutputs().duration(16 * TICKS).eut(1) + .addTo(sBoxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Food_Fries.get(1), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Paper, 1)) + .itemOutputs(ItemList.Food_Packaged_Fries.get(1)).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sBoxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Food_PotatoChips.get(1), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 1)) + .itemOutputs(ItemList.Food_Packaged_PotatoChips.get(1)).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sBoxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Food_ChiliChips.get(1), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 1)) + .itemOutputs(ItemList.Food_Packaged_ChiliChips.get(1)).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sBoxinatorRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/PlasmaForgeRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/PlasmaForgeRecipes.java index a6db8ca9c5..00e089b0bc 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/PlasmaForgeRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/PlasmaForgeRecipes.java @@ -1,12 +1,12 @@ package gregtech.loaders.postload.recipes; import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPlasmaForgeRecipes; +import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - import gregtech.api.enums.*; public class PlasmaForgeRecipes implements Runnable { @@ -14,27 +14,27 @@ public class PlasmaForgeRecipes implements Runnable { @Override public void run() { // Giga chad trophy. - GT_Values.RA.addPlasmaForgeRecipe( - new ItemStack[] { ItemList.Field_Generator_UEV.get(64), ItemList.Field_Generator_UIV.get(64), - ItemList.Field_Generator_UMV.get(64) }, - new FluidStack[] { Materials.ExcitedDTEC.getFluid(100_000_000), - Materials.SpaceTime.getMolten(64 * 2 * 9 * 144) }, - new ItemStack[] { ItemList.GigaChad.get(1) }, - new FluidStack[] { GT_Values.NF }, - 86400 * 20 * 2, - 2_000_000_000, - 13500); + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Field_Generator_UEV.get(64), + ItemList.Field_Generator_UIV.get(64), + ItemList.Field_Generator_UMV.get(64)) + .fluidInputs( + Materials.ExcitedDTEC.getFluid(100_000_000), + Materials.SpaceTime.getMolten(64 * 2 * 9 * 144)) + .itemOutputs(ItemList.GigaChad.get(1)).noFluidOutputs().duration(86400 * 20 * 2).eut(2_000_000_000) + .metadata(COIL_HEAT, 13500).addTo(sPlasmaForgeRecipes); // Quantum anomaly recipe bypass for UXV. Avoids RNG. - GT_Values.RA.addPlasmaForgeRecipe( - new ItemStack[] { getModItem(MOD_ID_DC, "item.ChromaticLens", 1), - getModItem("GoodGenerator", "huiCircuit", 1, 4) }, - new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(144), getFluidStack("molten.shirabon", 72), - Materials.BlackDwarfMatter.getMolten(144) }, - new ItemStack[] { getModItem(MOD_ID_GTPP, "MU-metaitem.01", 1, 32105) }, - new FluidStack[] { NF }, - 50 * 20, - (int) TierEU.RECIPE_UXV, - 13_500); + GT_Values.RA.stdBuilder() + .itemInputs( + getModItem(NewHorizonsCoreMod.modID, "item.ChromaticLens", 1), + getModItem(GoodGenerator.modID, "huiCircuit", 1, 4)) + .fluidInputs( + Materials.WhiteDwarfMatter.getMolten(144), + getFluidStack("molten.shirabon", 72), + Materials.BlackDwarfMatter.getMolten(144)) + .itemOutputs(getModItem(GTPlusPlus.modID, "MU-metaitem.01", 1, 32105)).noFluidOutputs() + .duration(50 * 20).eut((int) TierEU.RECIPE_UXV).metadata(COIL_HEAT, 13500).addTo(sPlasmaForgeRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/PrinterRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/PrinterRecipes.java index e01bb1d1ce..4df41eb779 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/PrinterRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/PrinterRecipes.java @@ -1,5 +1,7 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPrinterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.init.Items; @@ -16,40 +18,28 @@ public class PrinterRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addPrinterRecipe( - GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Paper, 1L), - getFluidStack("squidink", 36), - GT_Values.NI, - ItemList.Paper_Punch_Card_Empty.get(1L), - 100, - 2); - GT_Values.RA.addPrinterRecipe( - ItemList.Paper_Punch_Card_Empty.get(1L), - getFluidStack("squidink", 36), - ItemList.Tool_DataStick.getWithName(0L, "With Punch Card Data"), - ItemList.Paper_Punch_Card_Encoded.get(1L), - 100, - 2); - GT_Values.RA.addPrinterRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), - getFluidStack("squidink", 144), - ItemList.Tool_DataStick.getWithName(0L, "With Scanned Book Data"), - ItemList.Paper_Printed_Pages.get(1L), - 400, - 2); - GT_Values.RA.addPrinterRecipe( - new ItemStack(Items.map, 1, 32767), - getFluidStack("squidink", 144), - ItemList.Tool_DataStick.getWithName(0L, "With Scanned Map Data"), - new ItemStack(Items.filled_map, 1, 0), - 400, - 2); - GT_Values.RA.addPrinterRecipe( - new ItemStack(Items.book, 1, 32767), - getFluidStack("squidink", 144), - GT_Values.NI, - GT_Utility.getWrittenBook("Manual_Printer", ItemList.Book_Written_01.get(1L)), - 400, - 2); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Paper, 1L)) + .itemOutputs(ItemList.Paper_Punch_Card_Empty.get(1L)).fluidInputs(getFluidStack("squidink", 36)) + .noFluidOutputs().duration(5 * SECONDS).eut(2).addTo(sPrinterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Paper_Punch_Card_Empty.get(1L)) + .specialItem(ItemList.Tool_DataStick.getWithName(0L, "With Punch Card Data")) + .itemOutputs(ItemList.Paper_Punch_Card_Encoded.get(1L)).fluidInputs(getFluidStack("squidink", 36)) + .noFluidOutputs().duration(5 * SECONDS).eut(2).addTo(sPrinterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L)) + .specialItem(ItemList.Tool_DataStick.getWithName(0L, "With Scanned Book Data")) + .itemOutputs(ItemList.Paper_Printed_Pages.get(1L)).fluidInputs(getFluidStack("squidink", 144)) + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sPrinterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.map, 1, 32767)) + .specialItem(ItemList.Tool_DataStick.getWithName(0L, "With Scanned Map Data")) + .itemOutputs(new ItemStack(Items.filled_map, 1, 0)).fluidInputs(getFluidStack("squidink", 144)) + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sPrinterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.book, 1, 32767)) + .itemOutputs(GT_Utility.getWrittenBook("Manual_Printer", ItemList.Book_Written_01.get(1L))) + .fluidInputs(getFluidStack("squidink", 144)).noFluidOutputs().duration(20 * SECONDS).eut(2) + .addTo(sPrinterRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/Pulverizer.java b/src/main/java/gregtech/loaders/postload/recipes/Pulverizer.java index 3d5d714742..ce101f00e1 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/Pulverizer.java +++ b/src/main/java/gregtech/loaders/postload/recipes/Pulverizer.java @@ -1,454 +1,413 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_RC; +import static gregtech.api.enums.ModIDs.*; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isHardcoreEnderExpansionLoaded; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isRailcraftLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.*; 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.OrePrefixes; -import gregtech.api.util.GT_ModHandler; +import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; public class Pulverizer implements Runnable { @Override public void run() { // recycling Long Distance Pipes - GT_Values.RA.addPulveriserRecipe( - ItemList.Long_Distance_Pipeline_Fluid.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 19L) }, - null, - 300, - 4); - - GT_Values.RA.addPulveriserRecipe( - ItemList.Long_Distance_Pipeline_Item.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 12L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 7L) }, - null, - 300, - 4); - - GT_Values.RA.addPulveriserRecipe( - ItemList.Long_Distance_Pipeline_Fluid_Pipe.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Steel, 2L) }, - null, - 10, - 4); - - GT_Values.RA.addPulveriserRecipe( - ItemList.Long_Distance_Pipeline_Item_Pipe.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tin, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Steel, 1L) }, - null, - 10, - 4); + { + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Fluid.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 19)).noFluidInputs() + .noFluidOutputs().duration(15 * SECONDS).eut(4).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Item.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 12), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 7)) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(4).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Fluid_Pipe.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Steel, 2)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(4).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Long_Distance_Pipeline_Item_Pipe.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tin, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Steel, 1)) + .noFluidInputs().noFluidOutputs().duration(10 * TICKS).eut(4).addTo(sMaceratorRecipes); + } // marbe dust( stone dust - GT_Values.RA.addPulveriserRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Marble, 1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Marble, 1L) }, - null, - 160, - 4); - GT_Values.RA.addPulveriserRecipe( - getModItem("Thaumcraft", "ItemResource", 1, 18), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1L) }, - null, - 21, - 4); - GT_Values.RA.addPulveriserRecipe( - new ItemStack(Items.reeds, 1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L) }, - null, - 50, - 2); - - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_Cupronickel.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cupronickel, 8), + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Marble, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Marble, 1)).noFluidInputs() + .noFluidOutputs().duration(8 * SECONDS).eut(4).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Thaumcraft.modID, "ItemResource", 1, 18)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1)).noFluidInputs() + .noFluidOutputs().duration(1 * SECONDS + 1 * TICKS).eut(4).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.reeds, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1)).noFluidInputs() + .noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Cupronickel.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cupronickel, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 2) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_Kanthal.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Kanthal, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 2)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Kanthal.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Kanthal, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cupronickel, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 3) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_Nichrome.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nichrome, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 3)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Nichrome.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nichrome, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Kanthal, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 4) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_TungstenSteel.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TPV, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 4)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_TungstenSteel.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TPV, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nichrome, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 5) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_HSSG.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 5)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_HSSG.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TPV, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 6) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_HSSS.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSS, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 6)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_HSSS.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSS, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSG, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 7) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_Naquadah.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 7)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Naquadah.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HSSS, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 8) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_NaquadahAlloy.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahAlloy, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 8)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_NaquadahAlloy.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahAlloy, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 9) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_Trinium.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Trinium, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 9)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_Trinium.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Trinium, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahAlloy, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 10) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_ElectrumFlux.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.ElectrumFlux, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 10)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_ElectrumFlux.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.ElectrumFlux, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Trinium, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 11) }, - null, - 1500, - 80); - GT_Values.RA.addPulveriserRecipe( - ItemList.Casing_Coil_AwakenedDraconium.get(1L), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DraconiumAwakened, 8), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 11)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Coil_AwakenedDraconium.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DraconiumAwakened, 8), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.ElectrumFlux, 1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 12) }, - null, - 1500, - 80); - - // recycling RC Tanks - // Iron - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 0), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2L) }, - new int[] { 10000 }, - 300, - 2); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 300, - 2); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 2), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bronze, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iron, 3L) }, - new int[] { 10000, 10000 }, - 300, - 2); - - // Steel - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 13), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 2L) }, - new int[] { 10000 }, - 300, - 2); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 14), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 300, - 2); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.beta", 1L, 15), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Steel, 3L) }, - new int[] { 10000 }, - 300, - 2); - - // Aluminium - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 0), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 2L) }, - new int[] { 10000 }, - 450, - 8); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 450, - 8); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 2), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Aluminium, 3L) }, - new int[] { 10000, 10000 }, - 450, - 8); - - // Stainless Steel - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 3), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.StainlessSteel, 2L) }, - new int[] { 10000 }, - 600, - 16); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 4), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.StainlessSteel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 600, - 16); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 5), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.StainlessSteel, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.StainlessSteel, 3L) }, - new int[] { 10000 }, - 600, - 16); - - // Titanium - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 6), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 2L) }, - new int[] { 10000 }, - 600, - 30); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 7), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 600, - 30); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 8), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Titanium, 3L) }, - new int[] { 10000 }, - 600, - 30); - - // Tungesten Steel - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 9), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 2L) }, - new int[] { 10000 }, - 600, - 30); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 10), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 600, - 30); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 11), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.TungstenSteel, 3L) }, - new int[] { 10000 }, - 600, - 30); - - // Palladium - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 12), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 2L) }, - new int[] { 10000 }, - 750, - 64); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 13), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 750, - 64); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.zeta", 1L, 14), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NiobiumTitanium, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Chrome, 3L) }, - new int[] { 10000, 10000 }, - 750, - 64); - - // Iridium - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 0), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 2L) }, - new int[] { 10000 }, - 900, - 120); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 1), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 900, - 120); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 2), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Enderium, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iridium, 3L) }, - new int[] { 10000, 10000 }, - 900, - 120); - - // Osmium - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 3), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 2L) }, - new int[] { 10000 }, - 1050, - 256); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 4), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 1050, - 256); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 5), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Osmium, 3L) }, - new int[] { 10000, 10000 }, - 1050, - 256); - - // Neutronium - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 6), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Neutronium, 2L) }, - new int[] { 10000 }, - 1200, - 480); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 7), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Neutronium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L) }, - new int[] { 10000, 10000 }, - 1200, - 480); - GT_Values.RA.addPulveriserRecipe( - getModItem(MOD_ID_RC, "machine.eta", 1L, 8), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Neutronium, 12L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Neutronium, 3L) }, - new int[] { 10000 }, - 1200, - 480); - - if (isRailcraftLoaded) { - GT_ModHandler.addPulverisationRecipe( - getModItem(MOD_ID_RC, "cube.crushed.obsidian", 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 1L), - GT_Values.NI, - 0, - true); + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.QuartzSand, 12)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 15 * SECONDS).eut(80).addTo(sMaceratorRecipes); + + if (Railcraft.isModLoaded()) { + // recycling RC Tanks + // Iron + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2)).outputChances(10000) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bronze, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iron, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); + + // Steel + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 13)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 2)).outputChances(10000) + .noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 14)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.beta", 1L, 15)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Steel, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Steel, 3)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(15 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); + + // Aluminium + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 2)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(22 * SECONDS + 10 * TICKS).eut(8) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(22 * SECONDS + 10 * TICKS) + .eut(8).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Aluminium, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(22 * SECONDS + 10 * TICKS) + .eut(8).addTo(sMaceratorRecipes); + + // Stainless Steel + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 3)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.StainlessSteel, 2)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(16) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.StainlessSteel, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(16) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 5)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.StainlessSteel, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.StainlessSteel, 3)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(16) + .addTo(sMaceratorRecipes); + + // Titanium + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 6)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 2)).outputChances(10000) + .noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(30).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 7)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(30) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 8)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Titanium, 3)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(30) + .addTo(sMaceratorRecipes); + + // Tungesten Steel + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 9)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 2)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(30) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 10)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(30) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 11)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.TungstenSteel, 3)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(30 * SECONDS).eut(30) + .addTo(sMaceratorRecipes); + + // Palladium + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 12)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 2)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(37 * SECONDS + 10 * TICKS).eut(64) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 13)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(37 * SECONDS + 10 * TICKS) + .eut(64).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.zeta", 1L, 14)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NiobiumTitanium, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Chrome, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(37 * SECONDS + 10 * TICKS) + .eut(64).addTo(sMaceratorRecipes); + + // Iridium + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 0)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 2)).outputChances(10000) + .noFluidInputs().noFluidOutputs().duration(45 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(45 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 2)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Enderium, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Iridium, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(45 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sMaceratorRecipes); + + // Osmium + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 3)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 2)).outputChances(10000) + .noFluidInputs().noFluidOutputs().duration(52 * SECONDS + 10 * TICKS).eut(256) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Osmium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(52 * SECONDS + 10 * TICKS) + .eut(256).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 5)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Osmium, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(52 * SECONDS + 10 * TICKS) + .eut(256).addTo(sMaceratorRecipes); + + // Neutronium + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 6)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Neutronium, 2)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 7)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Neutronium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3)) + .outputChances(10000, 10000).noFluidInputs().noFluidOutputs().duration(60 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "machine.eta", 1L, 8)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Neutronium, 12), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Neutronium, 3)) + .outputChances(10000).noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(Railcraft.modID, "cube.crushed.obsidian", 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 1L)).noFluidInputs() + .noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); } - GT_ModHandler.addPulverisationRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "tile.BlockSkyStone", 1L, 32767), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 1L, 45), - GT_Values.NI, - 0, - false); - GT_ModHandler.addPulverisationRecipe( - getModItem(GT_MachineRecipeLoader.aTextAE, "tile.BlockSkyChest", 1L, 32767), - getModItem(GT_MachineRecipeLoader.aTextAE, GT_MachineRecipeLoader.aTextAEMM, 8L, 45), - GT_Values.NI, - 0, - false); - GT_ModHandler.addPulverisationRecipe( - new ItemStack(Items.blaze_rod, 1), - new ItemStack(Items.blaze_powder, 3), - new ItemStack(Items.blaze_powder, 1), - 50, - false); - GT_ModHandler.addPulverisationRecipe( - new ItemStack(Blocks.web, 1, 0), - new ItemStack(Items.string, 1), - new ItemStack(Items.string, 1), - 50, - false); - GT_ModHandler - .addPulverisationRecipe(new ItemStack(Blocks.red_mushroom, 1, 32767), ItemList.IC2_Grin_Powder.get(1L)); - GT_ModHandler.addPulverisationRecipe( - new ItemStack(Items.item_frame, 1, 32767), - new ItemStack(Items.leather, 1), - GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 4L), - 95, - false); - GT_ModHandler.addPulverisationRecipe( - new ItemStack(Items.bow, 1, 0), - new ItemStack(Items.string, 3), - GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 3L), - 95, - false); - GT_ModHandler.addPulverisationRecipe(Materials.Brick.getIngots(1), Materials.Brick.getDustSmall(1)); - GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.brick_stairs, 1, 0), Materials.Brick.getDustSmall(6)); - GT_ModHandler.addPulverisationRecipe(ItemList.CompressedFireclay.get(1), Materials.Fireclay.getDustSmall(1)); - GT_ModHandler.addPulverisationRecipe(ItemList.Firebrick.get(1), Materials.Brick.getDust(1)); - GT_ModHandler.addPulverisationRecipe(ItemList.Casing_Firebricks.get(1), Materials.Brick.getDust(4)); - GT_ModHandler.addPulverisationRecipe( - ItemList.Machine_Bricked_BlastFurnace.get(1), - Materials.Brick.getDust(8), - Materials.Iron.getDust(1), - true); - - if (isHardcoreEnderExpansionLoaded) { - GT_ModHandler.addPulverisationRecipe( - getModItem("HardcoreEnderExpansion", "endium_ore", 1), - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.HeeEndium, 2), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 1), - 50, - GT_Values.NI, - 0, - true); + if (AppliedEnergistics2.isModLoaded()) { + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "tile.BlockSkyStone", 1L, 32767)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 1L, 45)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(getModItem(AppliedEnergistics2.modID, "tile.BlockSkyChest", 1L, 32767)) + .itemOutputs(getModItem(AppliedEnergistics2.modID, "item.ItemMultiMaterial", 8L, 45)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + } + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.blaze_rod, 1)) + .itemOutputs(new ItemStack(Items.blaze_powder, 3), new ItemStack(Items.blaze_powder, 1)) + .outputChances(10000, 5000).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.web, 1, 0)) + .itemOutputs(new ItemStack(Items.string, 1), new ItemStack(Items.string, 1)).outputChances(10000, 5000) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.red_mushroom, 1, 32767)) + .itemOutputs(ItemList.IC2_Grin_Powder.get(1L)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.item_frame, 1, 32767)) + .itemOutputs( + new ItemStack(Items.leather, 1), + GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 4L)) + .outputChances(10000, 9500).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.bow, 1, 0)) + .itemOutputs( + new ItemStack(Items.string, 3), + GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 3)) + .outputChances(10000, 9500).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Brick.getIngots(1)).itemOutputs(Materials.Brick.getDustSmall(1)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.brick_stairs, 1, 0)) + .itemOutputs(Materials.Brick.getDustSmall(6)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.CompressedFireclay.get(1)) + .itemOutputs(Materials.Fireclay.getDustSmall(1)).noFluidInputs().noFluidOutputs().duration(20 * SECONDS) + .eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Firebrick.get(1)).itemOutputs(Materials.Brick.getDust(1)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Casing_Firebricks.get(1)).itemOutputs(Materials.Brick.getDust(4)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Machine_Bricked_BlastFurnace.get(1)) + .itemOutputs(Materials.Brick.getDust(8), Materials.Iron.getDust(1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + + if (HardcoreEnderExpansion.isModLoaded()) { + GT_Values.RA.stdBuilder().itemInputs(getModItem(HardcoreEnderExpansion.modID, "endium_ore", 1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.HeeEndium, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 1)) + .outputChances(10000, 5000).noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(2) + .addTo(sMaceratorRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/PyrolyseRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/PyrolyseRecipes.java index 24ecdfd91f..4490270219 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/PyrolyseRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/PyrolyseRecipes.java @@ -1,8 +1,11 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.enums.ModIDs.Forestry; +import static gregtech.api.enums.ModIDs.Railcraft; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isForestryLoaded; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isRailcraftLoaded; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPyrolyseRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; import mods.railcraft.common.items.RailcraftToolItems; @@ -16,114 +19,88 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.loaders.postload.GT_MachineRecipeLoader; +import gregtech.api.util.GT_Utility; public class PyrolyseRecipes implements Runnable { @Override public void run() { - if (isRailcraftLoaded) { - GT_Values.RA.addPyrolyseRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 16), - GT_Values.NF, - 1, - RailcraftToolItems.getCoalCoke(16), - Materials.Creosote.getFluid(8000), - 640, - 64); - GT_Values.RA.addPyrolyseRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 16), - Materials.Nitrogen.getGas(1000), - 2, - RailcraftToolItems.getCoalCoke(16), - Materials.Creosote.getFluid(8000), - 320, - 96); - GT_Values.RA.addPyrolyseRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 8), - GT_Values.NF, - 1, - EnumCube.COKE_BLOCK.getItem(8), - Materials.Creosote.getFluid(32000), - 2560, - 64); - GT_Values.RA.addPyrolyseRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 8), - Materials.Nitrogen.getGas(1000), - 2, - EnumCube.COKE_BLOCK.getItem(8), - Materials.Creosote.getFluid(32000), - 1280, - 96); + if (Railcraft.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 16), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(RailcraftToolItems.getCoalCoke(16)).noFluidInputs() + .fluidOutputs(Materials.Creosote.getFluid(8000)).duration(32 * SECONDS).eut(64) + .addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 16), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(RailcraftToolItems.getCoalCoke(16)).fluidInputs(Materials.Nitrogen.getGas(1000)) + .fluidOutputs(Materials.Creosote.getFluid(8000)).duration(16 * SECONDS).eut(96) + .addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 8), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(EnumCube.COKE_BLOCK.getItem(8)).noFluidInputs() + .fluidOutputs(Materials.Creosote.getFluid(32000)).duration(2 * MINUTES + 8 * SECONDS).eut(64) + .addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 8), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(EnumCube.COKE_BLOCK.getItem(8)).fluidInputs(Materials.Nitrogen.getGas(1000)) + .fluidOutputs(Materials.Creosote.getFluid(32000)).duration(1 * MINUTES + 4 * SECONDS).eut(96) + .addTo(sPyrolyseRecipes); + } + + if (!GregTech_API.mIC2Classic) { + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("biochaff", 4), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Water.getFluid(4000)) + .fluidOutputs(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 5000)).duration(45 * SECONDS) + .eut(10).addTo(sPyrolyseRecipes); } - if (!GregTech_API.mIC2Classic) GT_Values.RA.addPyrolyseRecipe( - GT_ModHandler.getIC2Item("biochaff", 4L), - Materials.Water.getFluid(4000), - 1, - GT_Values.NI, - new FluidStack(FluidRegistry.getFluid("ic2biomass"), 5000), - 900, - 10); - if (isForestryLoaded) { - GT_Values.RA.addPyrolyseRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "fertilizerBio", 4L), - Materials.Water.getFluid(4000), - 1, - GT_Values.NI, - Materials.Biomass.getFluid(5000), - 900, - 10); - GT_Values.RA.addPyrolyseRecipe( - getModItem(GT_MachineRecipeLoader.aTextForestry, "mulch", 32L), - Materials.Water.getFluid(4000), - 1, - GT_Values.NI, - Materials.Biomass.getFluid(5000), - 900, - 10); + if (Forestry.isModLoaded()) { + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(Forestry.modID, "fertilizerBio", 4), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Water.getFluid(4000)) + .fluidOutputs(Materials.Biomass.getFluid(5000)).duration(45 * SECONDS).eut(10) + .addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(Forestry.modID, "mulch", 32), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs().fluidInputs(Materials.Water.getFluid(4000)) + .fluidOutputs(Materials.Biomass.getFluid(5000)).duration(45 * SECONDS).eut(10) + .addTo(sPyrolyseRecipes); } - GT_Values.RA.addPyrolyseRecipe( - GT_ModHandler.getIC2Item("biochaff", 1), - Materials.Water.getFluid(1500), - 2, - GT_Values.NI, - Materials.FermentedBiomass.getFluid(1500), - 200, - 10); - GT_Values.RA.addPyrolyseRecipe( - GT_Values.NI, - new FluidStack(FluidRegistry.getFluid("ic2biomass"), 1000), - 2, - GT_Values.NI, - Materials.FermentedBiomass.getFluid(1000), - 100, - 10); - GT_Values.RA.addPyrolyseRecipe( - GT_Values.NI, - Materials.Biomass.getFluid(1000), - 2, - GT_Values.NI, - Materials.FermentedBiomass.getFluid(1000), - 100, - 10); - - GT_Values.RA.addPyrolyseRecipe( - Materials.Sugar.getDust(23), - GT_Values.NF, - 1, - Materials.Charcoal.getDust(12), - Materials.Water.getFluid(1500), - 320, - 64); - GT_Values.RA.addPyrolyseRecipe( - Materials.Sugar.getDust(23), - Materials.Nitrogen.getGas(500), - 2, - Materials.Charcoal.getDust(12), - Materials.Water.getFluid(1500), - 160, - 96); + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("biochaff", 1), GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs(Materials.Water.getFluid(1500)).fluidOutputs(Materials.FermentedBiomass.getFluid(1500)) + .duration(10 * SECONDS).eut(10).addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs() + .fluidInputs(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 1000)) + .fluidOutputs(Materials.FermentedBiomass.getFluid(1000)).duration(5 * SECONDS).eut(10) + .addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Biomass.getFluid(1000)) + .fluidOutputs(Materials.FermentedBiomass.getFluid(1000)).duration(5 * SECONDS).eut(10) + .addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sugar.getDust(23), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(Materials.Charcoal.getDust(12)).noFluidInputs() + .fluidOutputs(Materials.Water.getFluid(1500)).duration(16 * SECONDS).eut(64).addTo(sPyrolyseRecipes); + + GT_Values.RA.stdBuilder().itemInputs(Materials.Sugar.getDust(23), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Charcoal.getDust(12)).fluidInputs(Materials.Nitrogen.getGas(500)) + .fluidOutputs(Materials.Water.getFluid(1500)).duration(8 * SECONDS).eut(96).addTo(sPyrolyseRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/SifterRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/SifterRecipes.java index 6ee7575a1b..30daf240ca 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/SifterRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/SifterRecipes.java @@ -1,5 +1,8 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSifterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; @@ -13,22 +16,26 @@ public class SifterRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addSifterRecipe( - new ItemStack(Blocks.gravel, 1, 0), - new ItemStack[] { new ItemStack(Items.flint, 1, 0), new ItemStack(Items.flint, 1, 0), - new ItemStack(Items.flint, 1, 0), new ItemStack(Items.flint, 1, 0), - new ItemStack(Items.flint, 1, 0), new ItemStack(Items.flint, 1, 0) }, - new int[] { 10000, 9000, 8000, 6000, 3300, 2500 }, - 600, - 16); - GT_Values.RA.addSifterRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Coal, 1L), - new ItemStack[] { new ItemStack(Items.coal, 1, 0), new ItemStack(Items.coal, 1, 0), - new ItemStack(Items.coal, 1, 0), new ItemStack(Items.coal, 1, 0), + GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.gravel, 1, 0)) + .itemOutputs( + new ItemStack(Items.flint, 1, 0), + new ItemStack(Items.flint, 1, 0), + new ItemStack(Items.flint, 1, 0), + new ItemStack(Items.flint, 1, 0), + new ItemStack(Items.flint, 1, 0), + new ItemStack(Items.flint, 1, 0)) + .outputChances(10000, 9000, 8000, 6000, 3300, 2500).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(16).addTo(sSifterRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Coal, 1L)) + .itemOutputs( + new ItemStack(Items.coal, 1, 0), + new ItemStack(Items.coal, 1, 0), + new ItemStack(Items.coal, 1, 0), + new ItemStack(Items.coal, 1, 0), new ItemStack(Items.coal, 1, 0), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L) }, - new int[] { 10000, 9000, 8000, 7000, 6000, 5000 }, - 600, - 16); + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L)) + .outputChances(10000, 9000, 8000, 7000, 6000, 5000).noFluidInputs().noFluidOutputs() + .duration(30 * SECONDS).eut(16).addTo(sSifterRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/SlicerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/SlicerRecipes.java index fa21dbaaec..1165f3ebb3 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/SlicerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/SlicerRecipes.java @@ -1,5 +1,9 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSlicerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; @@ -7,29 +11,20 @@ public class SlicerRecipes implements Runnable { @Override public void run() { - GT_Values.RA.addSlicerRecipe( - ItemList.Food_Dough_Chocolate.get(1L), - ItemList.Shape_Slicer_Flat.get(0L), - ItemList.Food_Raw_Cookie.get(4L), - 128, - 4); - GT_Values.RA.addSlicerRecipe( - ItemList.Food_Baked_Bun.get(1L), - ItemList.Shape_Slicer_Flat.get(0L), - ItemList.Food_Sliced_Bun.get(2L), - 128, - 4); - GT_Values.RA.addSlicerRecipe( - ItemList.Food_Baked_Bread.get(1L), - ItemList.Shape_Slicer_Flat.get(0L), - ItemList.Food_Sliced_Bread.get(2L), - 128, - 4); - GT_Values.RA.addSlicerRecipe( - ItemList.Food_Baked_Baguette.get(1L), - ItemList.Shape_Slicer_Flat.get(0L), - ItemList.Food_Sliced_Baguette.get(2L), - 128, - 4); + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Dough_Chocolate.get(1), ItemList.Shape_Slicer_Flat.get(0)) + .itemOutputs(ItemList.Food_Raw_Cookie.get(4)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sSlicerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Baked_Bun.get(1), ItemList.Shape_Slicer_Flat.get(0)) + .itemOutputs(ItemList.Food_Sliced_Bun.get(2)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sSlicerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Baked_Bread.get(1), ItemList.Shape_Slicer_Flat.get(0)) + .itemOutputs(ItemList.Food_Sliced_Bread.get(2)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sSlicerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Food_Baked_Baguette.get(1), ItemList.Shape_Slicer_Flat.get(0)) + .itemOutputs(ItemList.Food_Sliced_Baguette.get(2)).noFluidInputs().noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS).eut(4).addTo(sSlicerRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/SmelterRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/SmelterRecipes.java index db2f540821..f244969687 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/SmelterRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/SmelterRecipes.java @@ -3,6 +3,7 @@ package gregtech.loaders.postload.recipes; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; +import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; @@ -13,41 +14,58 @@ public class SmelterRecipes implements Runnable { @Override public void run() { - GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_PotatoChips.get(1L), ItemList.Food_PotatoChips.get(1L)); + GT_ModHandler.addSmeltingRecipe( ItemList.Food_Potato_On_Stick.get(1L), ItemList.Food_Potato_On_Stick_Roasted.get(1L)); + GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Bun.get(1L), ItemList.Food_Baked_Bun.get(1L)); + GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Bread.get(1L), ItemList.Food_Baked_Bread.get(1L)); + GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Baguette.get(1L), ItemList.Food_Baked_Baguette.get(1L)); + GT_ModHandler .addSmeltingRecipe(ItemList.Food_Raw_Pizza_Veggie.get(1L), ItemList.Food_Baked_Pizza_Veggie.get(1L)); + GT_ModHandler .addSmeltingRecipe(ItemList.Food_Raw_Pizza_Cheese.get(1L), ItemList.Food_Baked_Pizza_Cheese.get(1L)); + GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Pizza_Meat.get(1L), ItemList.Food_Baked_Pizza_Meat.get(1L)); + GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Baguette.get(1L), ItemList.Food_Baked_Baguette.get(1L)); + GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Cake.get(1L), ItemList.Food_Baked_Cake.get(1L)); + GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Cookie.get(1L), new ItemStack(Items.cookie, 1)); + GT_ModHandler.addSmeltingRecipe(new ItemStack(Items.slime_ball, 1), ItemList.IC2_Resin.get(1L)); GT_ModHandler.addSmeltingRecipe( GT_OreDictUnificator.get(OrePrefixes.ore, Materials.Graphite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1L)); + GT_ModHandler.addSmeltingRecipe( GT_OreDictUnificator.get(OrePrefixes.oreBlackgranite, Materials.Graphite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1L)); + GT_ModHandler.addSmeltingRecipe( GT_OreDictUnificator.get(OrePrefixes.oreEndstone, Materials.Graphite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1L)); + GT_ModHandler.addSmeltingRecipe( GT_OreDictUnificator.get(OrePrefixes.oreNetherrack, Materials.Graphite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1L)); + GT_ModHandler.addSmeltingRecipe( GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.WroughtIron, 1L)); + GT_ModHandler.addSmeltingRecipe( GT_OreDictUnificator.get(OrePrefixes.oreRedgranite, Materials.Graphite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1L)); + + GameRegistry.addSmelting(ItemList.CompressedFireclay.get(1), ItemList.Firebrick.get(1), 0); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ThaumcraftRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ThaumcraftRecipes.java index a7f3ec3202..43fca26e7a 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ThaumcraftRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ThaumcraftRecipes.java @@ -1,8 +1,8 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.MOD_ID_TC; +import static gregtech.api.enums.ModIDs.AppliedEnergistics2; +import static gregtech.api.enums.ModIDs.Thaumcraft; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isThaumcraftLoaded; import java.util.Arrays; import java.util.Collections; @@ -25,955 +25,940 @@ public class ThaumcraftRecipes implements Runnable { @Override public void run() { - if (isThaumcraftLoaded) { - // Add Recipe for TC Crucible: Salis Mundus to Balanced Shards - String tKey = "GT_BALANCE_SHARD_RECIPE"; - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - "TB.SM", - getModItem(MOD_ID_TC, "ItemResource", 1L, 14), - getModItem(MOD_ID_TC, "ItemShard", 1L, 6), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.PRAECANTATIO, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L))); - - if (GregTech_API.sThaumcraftCompat != null) { - - tKey = "GT_WOOD_TO_CHARCOAL"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way of making charcoal magically instead of using regular ovens for this purpose.

To create charcoal from wood you first need an air-free environment, some vacuus essentia is needed for that, then you need to incinerate the wood using ignis essentia and wait until all the water inside the wood is burned away.

This method however doesn't create creosote oil as byproduct."); - - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Charcoal Transmutation", - "Turning wood into charcoal", - new String[] { "ALUMENTUM" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 1L), - 2, - 0, - 13, - 5, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.ARBOR, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 8L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 8L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.log.get(Materials.Wood), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 1L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); - - tKey = "GT_FILL_WATER_BUCKET"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way of filling a bucket with aqua essentia in order to simply get water."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Water Transmutation", - "Filling buckets with water", - null, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Water, 1L), - 2, - 0, - 16, - 5, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 4L), - new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Empty, 1L), - GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Water, 1L), - Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - GT_OreDictUnificator.get(OrePrefixes.bucketClay, Materials.Empty, 1L), - GT_OreDictUnificator.get(OrePrefixes.bucketClay, Materials.Water, 1L), - Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - GT_OreDictUnificator.get(OrePrefixes.capsule, Materials.Empty, 1L), - GT_OreDictUnificator.get(OrePrefixes.capsule, Materials.Water, 1L), - Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), - Collections - .singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))) }); - - tKey = "GT_TRANSZINC"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to multiply zinc by steeping zinc nuggets in metallum harvested from other metals."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Zinc Transmutation", - "Transformation of metals into zinc", - new String[] { "TRANSTIN" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Zinc, 1L), - 2, - 1, - 9, - 13, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.SANO, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Zinc), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Zinc, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.SANO, 1L))) }); - - tKey = "GT_TRANSANTIMONY"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to multiply antimony by steeping antimony nuggets in metallum harvested from other metals."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Antimony Transmutation", - "Transformation of metals into antimony", - new String[] { "GT_TRANSZINC", "TRANSLEAD" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Antimony, 1L), - 2, - 1, - 9, - 14, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Antimony), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Antimony, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L))) }); - - tKey = "GT_TRANSNICKEL"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to multiply nickel by steeping nickel nuggets in metallum harvested from other metals."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Nickel Transmutation", - "Transformation of metals into nickel", - new String[] { "TRANSLEAD" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Nickel, 1L), - 2, - 1, - 9, - 15, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Nickel), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Nickel, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); - - tKey = "GT_TRANSCOBALT"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to multiply cobalt by steeping cobalt nuggets in metallum harvested from other metals."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Cobalt Transmutation", - "Transformation of metals into cobalt", - new String[] { "GT_TRANSNICKEL" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cobalt, 1L), - 2, - 1, - 9, - 16, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Cobalt), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cobalt, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); - - tKey = "GT_TRANSBISMUTH"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to multiply bismuth by steeping bismuth nuggets in metallum harvested from other metals."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Bismuth Transmutation", - "Transformation of metals into bismuth", - new String[] { "GT_TRANSCOBALT" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bismuth, 1L), - 2, - 1, - 11, - 17, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Bismuth), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bismuth, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); - - tKey = "GT_IRON_TO_STEEL"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way of making Iron harder by just re-ordering its components.

This Method can be used to create a Material called Steel, which is used in many non-Thaumaturgic applications."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Steel Transmutation", - "Transforming iron to steel", - new String[] { "TRANSIRON", "GT_WOOD_TO_CHARCOAL" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 1L), - 3, - 0, - 13, - 8, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Iron), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 1L), - Collections - .singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L))) }); - - tKey = "GT_TRANSBRONZE"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way of creating Alloys using the already known transmutations of Copper and Tin.

This Method can be used to create a Bronze directly without having to go through an alloying process."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Bronze Transmutation", - "Transformation of metals into bronze", - new String[] { "TRANSTIN", "TRANSCOPPER" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bronze, 1L), - 2, - 0, - 13, - 11, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Bronze), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bronze, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); - - tKey = "GT_TRANSELECTRUM"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Electrum as well."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Electrum Transmutation", - "Transformation of metals into electrum", - new String[] { "GT_TRANSBRONZE", "TRANSGOLD", "TRANSSILVER" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Electrum, 1L), - 2, - 1, - 11, - 11, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.LUCRUM, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Electrum), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Electrum, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.LUCRUM, 1L))) }); - - tKey = "GT_TRANSBRASS"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Brass as well."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Brass Transmutation", - "Transformation of metals into brass", - new String[] { "GT_TRANSBRONZE", "GT_TRANSZINC" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Brass, 1L), - 2, - 1, - 11, - 12, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Brass), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Brass, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); - - tKey = "GT_TRANSINVAR"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Invar as well."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Invar Transmutation", - "Transformation of metals into invar", - new String[] { "GT_TRANSBRONZE", "GT_TRANSNICKEL" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Invar, 1L), - 2, - 1, - 11, - 15, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Invar), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Invar, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 1L))) }); - - tKey = "GT_TRANSCUPRONICKEL"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Cupronickel as well."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Cupronickel Transmutation", - "Transformation of metals into cupronickel", - new String[] { "GT_TRANSBRONZE", "GT_TRANSNICKEL" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cupronickel, 1L), - 2, - 1, - 11, - 16, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Cupronickel), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cupronickel, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); - - tKey = "GT_TRANSBATTERYALLOY"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Battery Alloy as well."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Battery Alloy Transmutation", - "Transformation of metals into battery alloy", - new String[] { "GT_TRANSBRONZE", "GT_TRANSANTIMONY" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.BatteryAlloy, 1L), - 2, - 1, - 11, - 13, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.BatteryAlloy), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.BatteryAlloy, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L))) }); - - tKey = "GT_TRANSSOLDERINGALLOY"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Soldering Alloy as well."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Soldering Alloy Transmutation", - "Transformation of metals into soldering alloy", - new String[] { "GT_TRANSBRONZE", "GT_TRANSANTIMONY" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.SolderingAlloy, 1L), - 2, - 1, - 11, - 14, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.SolderingAlloy), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.SolderingAlloy, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 1L))) }); - - tKey = "GT_ADVANCEDMETALLURGY"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Now that you have discovered all the basic metals, you can finally move on to the next Level of magic metallurgy and create more advanced metals"); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Advanced Metallurgic Transmutation", - "Mastering the basic metals", - new String[] { "GT_TRANSBISMUTH", "GT_IRON_TO_STEEL", "GT_TRANSSOLDERINGALLOY", - "GT_TRANSBATTERYALLOY", "GT_TRANSBRASS", "GT_TRANSELECTRUM", "GT_TRANSCUPRONICKEL", - "GT_TRANSINVAR" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), - 3, - 0, - 16, - 14, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 50L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PRAECANTATIO, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.NEBRISUM, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 20L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey }); - - tKey = "GT_TRANSALUMINIUM"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to multiply aluminium by steeping aluminium nuggets in metallum harvested from other metals.

This transmutation is slightly harder to achieve, because aluminium has special properties, which require more order to achieve the desired result."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Aluminium Transmutation", - "Transformation of metals into aluminium", - new String[] { "GT_ADVANCEDMETALLURGY" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 1L), - 4, - 0, - 19, - 14, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.nugget.get(Materials.Aluminium), - GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); - - tKey = "GT_TRANSSKYSTONE"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to convert obsidian to skystone.

Not sure why you'd want to do this, unless skystone is somehow unavailable in your world."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Skystone Transmutation", - "Transformation of obsidian into skystone", - new String[] { "GT_ADVANCEDMETALLURGY" }, - "ALCHEMY", - getModItem("appliedenergistics2", "tile.BlockSkyStone", 1), - 4, - 0, - 19, - 15, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.TERRA, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - new ItemStack(Blocks.obsidian), - getModItem("appliedenergistics2", "tile.BlockSkyStone", 1), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.TERRA, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.TENEBRAE, 1L))) }); - - tKey = "GT_TRANSMINERAL"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to convert basaltic mineral sand to granitic mineral sand and vice versa.

Handy for people living in the sky who can't access it normally, or if you really want one or the other."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Basaltic Mineral Transmutation", - "Transformation of mineral sands", - new String[] { "GT_ADVANCEDMETALLURGY" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GraniticMineralSand, 1L), - 4, - 0, - 19, - 16, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.TERRA, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BasalticMineralSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GraniticMineralSand, 1L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 1L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GraniticMineralSand, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BasalticMineralSand, 1L), - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 1L))) }); - - tKey = "GT_CRYSTALLISATION"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Sometimes when processing your Crystal Shards they become a pile of Dust instead of the mostly required Shard.

You have finally found a way to reverse this Process by using Vitreus Essentia for recrystallising the Shards."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Shard Recrystallisation", - "Fixing your precious crystals", - new String[] { "ALCHEMICALMANUFACTURE" }, - "ALCHEMY", - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedOrder, 1L), - 3, - 0, - -11, - -3, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 5L), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.dust.get(Materials.Amber), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Amber, 1L), - Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.dust.get(Materials.InfusedOrder), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedOrder, 1L), - Collections - .singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.dust.get(Materials.InfusedEntropy), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEntropy, 1L), - Collections - .singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.dust.get(Materials.InfusedAir), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedAir, 1L), - Collections - .singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.dust.get(Materials.InfusedEarth), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEarth, 1L), - Collections - .singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.dust.get(Materials.InfusedFire), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedFire, 1L), - Collections - .singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), - GregTech_API.sThaumcraftCompat.addCrucibleRecipe( - tKey, - OrePrefixes.dust.get(Materials.InfusedWater), - GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedWater, 1L), - Collections.singletonList( - new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))) }); - - tKey = "GT_MAGICENERGY"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "While trying to find new ways to integrate magic into your industrial factories, you have discovered a way to convert magical energy into electrical power."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Magic Energy Conversion", - "Magic to Power", - new String[] { "ARCANEBORE" }, - "ARTIFICE", - ItemList.MagicEnergyConverter_LV.get(1L), - 3, - 0, - -3, - 10, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - tKey, - ItemList.Hull_LV.get(1L), - new ItemStack[] { new ItemStack(Blocks.beacon), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L), - ItemList.Sensor_MV.get(2L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L), - ItemList.Sensor_MV.get(2L) }, - ItemList.MagicEnergyConverter_LV.get(1L), - 5, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 32L))) }); - - tKey = "GT_MAGICENERGY2"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Attempts to increase the output of your Magic Energy generators have resulted in significant improvements."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Adept Magic Energy Conversion", - "Magic to Power", - new String[] { "GT_MAGICENERGY" }, - "ARTIFICE", - ItemList.MagicEnergyConverter_MV.get(1L), - 1, - 1, - -4, - 12, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - tKey, - ItemList.Hull_MV.get(1L), - new ItemStack[] { new ItemStack(Blocks.beacon), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), - GT_OreDictUnificator - .get(OrePrefixes.plateDouble, Materials.Thaumium, 1L), - ItemList.Sensor_HV.get(2L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), - GT_OreDictUnificator - .get(OrePrefixes.plateDouble, Materials.StainlessSteel, 1L), - ItemList.Sensor_HV.get(2L) }, - ItemList.MagicEnergyConverter_MV.get(1L), - 6, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 64L))) }); - - tKey = "GT_MAGICENERGY3"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Attempts to further increase the output of your Magic Energy generators have resulted in great improvements."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Master Magic Energy Conversion", - "Magic to Power", - new String[] { "GT_MAGICENERGY2" }, - "ARTIFICE", - ItemList.MagicEnergyConverter_HV.get(1L), - 1, - 1, - -4, - 14, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 40L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 20L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - tKey, - ItemList.Hull_HV.get(1L), - new ItemStack[] { new ItemStack(Blocks.beacon), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), - GT_OreDictUnificator - .get(OrePrefixes.plateDense, Materials.Thaumium, 1L), - ItemList.Field_Generator_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), - GT_OreDictUnificator - .get(OrePrefixes.plateDense, Materials.Titanium, 1L), - ItemList.Field_Generator_MV.get(1L) }, - ItemList.MagicEnergyConverter_HV.get(1L), - 8, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 128L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 128L))) }); - - tKey = "GT_MAGICABSORB"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Research into magical energy conversion methods has identified a way to convert surrounding energies into electrical power."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Magic Energy Absorption", - "Harvesting Magic", - new String[] { "GT_MAGICENERGY" }, - "ARTIFICE", - ItemList.MagicEnergyAbsorber_LV.get(1L), - 3, - 0, - -2, - 12, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - tKey, - ItemList.Hull_LV.get(1L), - new ItemStack[] { ItemList.MagicEnergyConverter_LV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L), - ItemList.Sensor_MV.get(2L) }, - ItemList.MagicEnergyAbsorber_LV.get(1L), - 6, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 16L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 4L))) }); - - tKey = "GT_MAGICABSORB2"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "Moar output! Drain all the Magic!"); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Improved Magic Energy Absorption", - "Harvesting Magic", - new String[] { "GT_MAGICABSORB" }, - "ARTIFICE", - ItemList.MagicEnergyAbsorber_EV.get(1L), - 3, - 1, - -2, - 14, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - tKey, - ItemList.Hull_MV.get(1L), - new ItemStack[] { ItemList.MagicEnergyConverter_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L), - ItemList.Sensor_HV.get(2L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L) }, - ItemList.MagicEnergyAbsorber_MV.get(1L), - 6, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 64L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 64L), - new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 8L))), - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - tKey, - ItemList.Hull_HV.get(1L), - new ItemStack[] { ItemList.MagicEnergyConverter_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), - ItemList.Field_Generator_MV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), }, - ItemList.MagicEnergyAbsorber_HV.get(1L), - 8, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 128L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 128L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 64L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 128L), - new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 16L))), - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - tKey, - ItemList.Hull_EV.get(1L), - new ItemStack[] { ItemList.MagicEnergyConverter_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 1), - ItemList.Field_Generator_HV.get(1L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 1L), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), - GT_OreDictUnificator - .get(OrePrefixes.plate, Materials.TungstenSteel, 1), }, - ItemList.MagicEnergyAbsorber_EV.get(1L), - 10, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 256L), - new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 128L), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 256L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 128L), - new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 256L), - new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 64L))) }); - - tKey = "GT_HAZMATENCH"; - GT_LanguageManager.addStringLocalization( - GT_MachineRecipeLoader.aTextTCGTPage + tKey, - "You have discovered a way to magically enchant a mundane piece of armor with the protective properties of a Hazmat suite."); - GregTech_API.sThaumcraftCompat.addResearch( - tKey, - "Hazmat Protection", - "Magical protection from physical hazards", - new String[] { "INFUSIONENCHANTMENT" }, - "ARTIFICE", - GT_ModHandler.getIC2Item("hazmatChestplate", 1), - 4, - 0, - -7, - 13, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.VITIUM, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.RADIO, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 1L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VENENUM, 1L)), - null, - new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, - GregTech_API.sThaumcraftCompat.addInfusionEnchantmentRecipe( - tKey, - Enchantment_Hazmat.INSTANCE, - 5, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.VITIUM, 8L), - new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 16L), - new TC_Aspects.TC_AspectStack(TC_Aspects.RADIO, 16L), - new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 32L), - new TC_Aspects.TC_AspectStack(TC_Aspects.VENENUM, 16L)), - new ItemStack[] { getModItem(MOD_ID_TC, "ItemResource", 1L, 14), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 1), - GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Lead, 1), - getModItem(MOD_ID_TC, "ItemResource", 1L, 14), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 1), - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 1), - GT_OreDictUnificator - .get(OrePrefixes.plateDense, Materials.Lead, 1) }) }); - } + if ((!Thaumcraft.isModLoaded()) || GregTech_API.sThaumcraftCompat == null) { + return; } + + // Add Recipe for TC Crucible: Salis Mundus to Balanced Shards + String tKey = "GT_BALANCE_SHARD_RECIPE"; + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + "TB.SM", + getModItem(Thaumcraft.modID, "ItemResource", 1L, 14), + getModItem(Thaumcraft.modID, "ItemShard", 1L, 6), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.PRAECANTATIO, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L))); + + tKey = "GT_WOOD_TO_CHARCOAL"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way of making charcoal magically instead of using regular ovens for this purpose.

To create charcoal from wood you first need an air-free environment, some vacuus essentia is needed for that, then you need to incinerate the wood using ignis essentia and wait until all the water inside the wood is burned away.

This method however doesn't create creosote oil as byproduct."); + + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Charcoal Transmutation", + "Turning wood into charcoal", + new String[] { "ALUMENTUM" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 1L), + 2, + 0, + 13, + 5, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.ARBOR, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 8L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 8L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.log.get(Materials.Wood), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 1L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); + + tKey = "GT_FILL_WATER_BUCKET"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way of filling a bucket with aqua essentia in order to simply get water."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Water Transmutation", + "Filling buckets with water", + null, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Water, 1L), + 2, + 0, + 16, + 5, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 4L), + new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Empty, 1L), + GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Water, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + GT_OreDictUnificator.get(OrePrefixes.bucketClay, Materials.Empty, 1L), + GT_OreDictUnificator.get(OrePrefixes.bucketClay, Materials.Water, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + GT_OreDictUnificator.get(OrePrefixes.capsule, Materials.Empty, 1L), + GT_OreDictUnificator.get(OrePrefixes.capsule, Materials.Water, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Empty, 1L), + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L))) }); + + tKey = "GT_TRANSZINC"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to multiply zinc by steeping zinc nuggets in metallum harvested from other metals."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Zinc Transmutation", + "Transformation of metals into zinc", + new String[] { "TRANSTIN" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Zinc, 1L), + 2, + 1, + 9, + 13, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.SANO, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Zinc), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Zinc, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.SANO, 1L))) }); + + tKey = "GT_TRANSANTIMONY"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to multiply antimony by steeping antimony nuggets in metallum harvested from other metals."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Antimony Transmutation", + "Transformation of metals into antimony", + new String[] { "GT_TRANSZINC", "TRANSLEAD" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Antimony, 1L), + 2, + 1, + 9, + 14, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Antimony), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Antimony, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L))) }); + + tKey = "GT_TRANSNICKEL"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to multiply nickel by steeping nickel nuggets in metallum harvested from other metals."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Nickel Transmutation", + "Transformation of metals into nickel", + new String[] { "TRANSLEAD" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Nickel, 1L), + 2, + 1, + 9, + 15, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Nickel), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Nickel, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); + + tKey = "GT_TRANSCOBALT"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to multiply cobalt by steeping cobalt nuggets in metallum harvested from other metals."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Cobalt Transmutation", + "Transformation of metals into cobalt", + new String[] { "GT_TRANSNICKEL" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cobalt, 1L), + 2, + 1, + 9, + 16, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Cobalt), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cobalt, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); + + tKey = "GT_TRANSBISMUTH"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to multiply bismuth by steeping bismuth nuggets in metallum harvested from other metals."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Bismuth Transmutation", + "Transformation of metals into bismuth", + new String[] { "GT_TRANSCOBALT" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bismuth, 1L), + 2, + 1, + 11, + 17, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Bismuth), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bismuth, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); + + tKey = "GT_IRON_TO_STEEL"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way of making Iron harder by just re-ordering its components.

This Method can be used to create a Material called Steel, which is used in many non-Thaumaturgic applications."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Steel Transmutation", + "Transforming iron to steel", + new String[] { "TRANSIRON", "GT_WOOD_TO_CHARCOAL" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 1L), + 3, + 0, + 13, + 8, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Iron), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Steel, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L))) }); + + tKey = "GT_TRANSBRONZE"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way of creating Alloys using the already known transmutations of Copper and Tin.

This Method can be used to create a Bronze directly without having to go through an alloying process."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Bronze Transmutation", + "Transformation of metals into bronze", + new String[] { "TRANSTIN", "TRANSCOPPER" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bronze, 1L), + 2, + 0, + 13, + 11, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Bronze), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Bronze, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); + + tKey = "GT_TRANSELECTRUM"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Electrum as well."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Electrum Transmutation", + "Transformation of metals into electrum", + new String[] { "GT_TRANSBRONZE", "TRANSGOLD", "TRANSSILVER" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Electrum, 1L), + 2, + 1, + 11, + 11, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.LUCRUM, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Electrum), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Electrum, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.LUCRUM, 1L))) }); + + tKey = "GT_TRANSBRASS"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Brass as well."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Brass Transmutation", + "Transformation of metals into brass", + new String[] { "GT_TRANSBRONZE", "GT_TRANSZINC" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Brass, 1L), + 2, + 1, + 11, + 12, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Brass), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Brass, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1L))) }); + + tKey = "GT_TRANSINVAR"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Invar as well."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Invar Transmutation", + "Transformation of metals into invar", + new String[] { "GT_TRANSBRONZE", "GT_TRANSNICKEL" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Invar, 1L), + 2, + 1, + 11, + 15, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Invar), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Invar, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 1L))) }); + + tKey = "GT_TRANSCUPRONICKEL"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Cupronickel as well."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Cupronickel Transmutation", + "Transformation of metals into cupronickel", + new String[] { "GT_TRANSBRONZE", "GT_TRANSNICKEL" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cupronickel, 1L), + 2, + 1, + 11, + 16, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Cupronickel), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Cupronickel, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); + + tKey = "GT_TRANSBATTERYALLOY"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Battery Alloy as well."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Battery Alloy Transmutation", + "Transformation of metals into battery alloy", + new String[] { "GT_TRANSBRONZE", "GT_TRANSANTIMONY" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.BatteryAlloy, 1L), + 2, + 1, + 11, + 13, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.BatteryAlloy), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.BatteryAlloy, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L))) }); + + tKey = "GT_TRANSSOLDERINGALLOY"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Your discovery of Bronze Transmutation has lead you to the conclusion it works with other Alloys such as Soldering Alloy as well."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Soldering Alloy Transmutation", + "Transformation of metals into soldering alloy", + new String[] { "GT_TRANSBRONZE", "GT_TRANSANTIMONY" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.SolderingAlloy, 1L), + 2, + 1, + 11, + 14, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.SolderingAlloy), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.SolderingAlloy, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 1L))) }); + + tKey = "GT_ADVANCEDMETALLURGY"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Now that you have discovered all the basic metals, you can finally move on to the next Level of magic metallurgy and create more advanced metals"); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Advanced Metallurgic Transmutation", + "Mastering the basic metals", + new String[] { "GT_TRANSBISMUTH", "GT_IRON_TO_STEEL", "GT_TRANSSOLDERINGALLOY", "GT_TRANSBATTERYALLOY", + "GT_TRANSBRASS", "GT_TRANSELECTRUM", "GT_TRANSCUPRONICKEL", "GT_TRANSINVAR" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), + 3, + 0, + 16, + 14, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 50L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PRAECANTATIO, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.NEBRISUM, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 20L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey }); + + tKey = "GT_TRANSALUMINIUM"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to multiply aluminium by steeping aluminium nuggets in metallum harvested from other metals.

This transmutation is slightly harder to achieve, because aluminium has special properties, which require more order to achieve the desired result."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Aluminium Transmutation", + "Transformation of metals into aluminium", + new String[] { "GT_ADVANCEDMETALLURGY" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 1L), + 4, + 0, + 19, + 14, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.nugget.get(Materials.Aluminium), + GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L))) }); + + tKey = "GT_TRANSSKYSTONE"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to convert obsidian to skystone.

Not sure why you'd want to do this, unless skystone is somehow unavailable in your world."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Skystone Transmutation", + "Transformation of obsidian into skystone", + new String[] { "GT_ADVANCEDMETALLURGY" }, + "ALCHEMY", + getModItem(AppliedEnergistics2.modID, "tile.BlockSkyStone", 1), + 4, + 0, + 19, + 15, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.TERRA, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + new ItemStack(Blocks.obsidian), + getModItem(AppliedEnergistics2.modID, "tile.BlockSkyStone", 1), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.TERRA, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.TENEBRAE, 1L))) }); + + tKey = "GT_TRANSMINERAL"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to convert basaltic mineral sand to granitic mineral sand and vice versa.

Handy for people living in the sky who can't access it normally, or if you really want one or the other."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Basaltic Mineral Transmutation", + "Transformation of mineral sands", + new String[] { "GT_ADVANCEDMETALLURGY" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GraniticMineralSand, 1L), + 4, + 0, + 19, + 16, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.TERRA, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BasalticMineralSand, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GraniticMineralSand, 1L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 1L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GraniticMineralSand, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.BasalticMineralSand, 1L), + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MAGNETO, 1L))) }); + + tKey = "GT_CRYSTALLISATION"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Sometimes when processing your Crystal Shards they become a pile of Dust instead of the mostly required Shard.

You have finally found a way to reverse this Process by using Vitreus Essentia for recrystallising the Shards."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Shard Recrystallisation", + "Fixing your precious crystals", + new String[] { "ALCHEMICALMANUFACTURE" }, + "ALCHEMY", + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedOrder, 1L), + 3, + 0, + -11, + -3, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 5L), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 3L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.dust.get(Materials.Amber), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Amber, 1L), + Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.dust.get(Materials.InfusedOrder), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedOrder, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.dust.get(Materials.InfusedEntropy), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEntropy, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.dust.get(Materials.InfusedAir), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedAir, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.dust.get(Materials.InfusedEarth), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEarth, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.dust.get(Materials.InfusedFire), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedFire, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))), + GregTech_API.sThaumcraftCompat.addCrucibleRecipe( + tKey, + OrePrefixes.dust.get(Materials.InfusedWater), + GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedWater, 1L), + Collections.singletonList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 4L))) }); + + tKey = "GT_MAGICENERGY"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "While trying to find new ways to integrate magic into your industrial factories, you have discovered a way to convert magical energy into electrical power."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Magic Energy Conversion", + "Magic to Power", + new String[] { "ARCANEBORE" }, + "ARTIFICE", + ItemList.MagicEnergyConverter_LV.get(1L), + 3, + 0, + -3, + 10, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + tKey, + ItemList.Hull_LV.get(1L), + new ItemStack[] { new ItemStack(Blocks.beacon), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L), + ItemList.Sensor_MV.get(2L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L), + ItemList.Sensor_MV.get(2L) }, + ItemList.MagicEnergyConverter_LV.get(1L), + 5, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 32L))) }); + + tKey = "GT_MAGICENERGY2"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Attempts to increase the output of your Magic Energy generators have resulted in significant improvements."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Adept Magic Energy Conversion", + "Magic to Power", + new String[] { "GT_MAGICENERGY" }, + "ARTIFICE", + ItemList.MagicEnergyConverter_MV.get(1L), + 1, + 1, + -4, + 12, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + tKey, + ItemList.Hull_MV.get(1L), + new ItemStack[] { new ItemStack(Blocks.beacon), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Thaumium, 1L), + ItemList.Sensor_HV.get(2L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.StainlessSteel, 1L), + ItemList.Sensor_HV.get(2L) }, + ItemList.MagicEnergyConverter_MV.get(1L), + 6, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 64L))) }); + + tKey = "GT_MAGICENERGY3"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Attempts to further increase the output of your Magic Energy generators have resulted in great improvements."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Master Magic Energy Conversion", + "Magic to Power", + new String[] { "GT_MAGICENERGY2" }, + "ARTIFICE", + ItemList.MagicEnergyConverter_HV.get(1L), + 1, + 1, + -4, + 14, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 40L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 20L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + tKey, + ItemList.Hull_HV.get(1L), + new ItemStack[] { new ItemStack(Blocks.beacon), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Thaumium, 1L), + ItemList.Field_Generator_MV.get(1L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Titanium, 1L), + ItemList.Field_Generator_MV.get(1L) }, + ItemList.MagicEnergyConverter_HV.get(1L), + 8, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 128L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 128L))) }); + + tKey = "GT_MAGICABSORB"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Research into magical energy conversion methods has identified a way to convert surrounding energies into electrical power."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Magic Energy Absorption", + "Harvesting Magic", + new String[] { "GT_MAGICENERGY" }, + "ARTIFICE", + ItemList.MagicEnergyAbsorber_LV.get(1L), + 3, + 0, + -2, + 12, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + tKey, + ItemList.Hull_LV.get(1L), + new ItemStack[] { ItemList.MagicEnergyConverter_LV.get(1L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Good, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L), + ItemList.Sensor_MV.get(2L) }, + ItemList.MagicEnergyAbsorber_LV.get(1L), + 6, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 16L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 4L))) }); + + tKey = "GT_MAGICABSORB2"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "Moar output! Drain all the Magic!"); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Improved Magic Energy Absorption", + "Harvesting Magic", + new String[] { "GT_MAGICABSORB" }, + "ARTIFICE", + ItemList.MagicEnergyAbsorber_EV.get(1L), + 3, + 1, + -2, + 14, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L), + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 20L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + tKey, + ItemList.Hull_MV.get(1L), + new ItemStack[] { ItemList.MagicEnergyConverter_MV.get(1L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L), + ItemList.Sensor_HV.get(2L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Thaumium, 1L) }, + ItemList.MagicEnergyAbsorber_MV.get(1L), + 6, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 64L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 64L), + new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 8L))), + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + tKey, + ItemList.Hull_HV.get(1L), + new ItemStack[] { ItemList.MagicEnergyConverter_MV.get(1L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), + ItemList.Field_Generator_MV.get(1L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), }, + ItemList.MagicEnergyAbsorber_HV.get(1L), + 8, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 128L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 128L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 64L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 128L), + new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 16L))), + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + tKey, + ItemList.Hull_EV.get(1L), + new ItemStack[] { ItemList.MagicEnergyConverter_HV.get(1L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 1), + ItemList.Field_Generator_HV.get(1L), + GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 1L), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Void, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 1), }, + ItemList.MagicEnergyAbsorber_EV.get(1L), + 10, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 256L), + new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 128L), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 256L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 128L), + new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 256L), + new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 64L))) }); + + tKey = "GT_HAZMATENCH"; + GT_LanguageManager.addStringLocalization( + GT_MachineRecipeLoader.aTextTCGTPage + tKey, + "You have discovered a way to magically enchant a mundane piece of armor with the protective properties of a Hazmat suite."); + GregTech_API.sThaumcraftCompat.addResearch( + tKey, + "Hazmat Protection", + "Magical protection from physical hazards", + new String[] { "INFUSIONENCHANTMENT" }, + "ARTIFICE", + GT_ModHandler.getIC2Item("hazmatChestplate", 1), + 4, + 0, + -7, + 13, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.VITIUM, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.RADIO, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 1L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VENENUM, 1L)), + null, + new Object[] { GT_MachineRecipeLoader.aTextTCGTPage + tKey, + GregTech_API.sThaumcraftCompat.addInfusionEnchantmentRecipe( + tKey, + Enchantment_Hazmat.INSTANCE, + 5, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.VITIUM, 8L), + new TC_Aspects.TC_AspectStack(TC_Aspects.GELUM, 16L), + new TC_Aspects.TC_AspectStack(TC_Aspects.RADIO, 16L), + new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 32L), + new TC_Aspects.TC_AspectStack(TC_Aspects.VENENUM, 16L)), + new ItemStack[] { getModItem(Thaumcraft.modID, "ItemResource", 1L, 14), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Lead, 1), + getModItem(Thaumcraft.modID, "ItemResource", 1L, 14), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Lead, 1) }) }); + } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/ThermalCentrifugeRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ThermalCentrifugeRecipes.java index 654e9a2004..2463be534f 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ThermalCentrifugeRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ThermalCentrifugeRecipes.java @@ -1,25 +1,24 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.GT_Values.RA; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; public class ThermalCentrifugeRecipes implements Runnable { @Override public void run() { - RA.addThermalCentrifugeRecipe( - ItemList.SunnariumCell.get(1), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sunnarium, 1L), - new ItemStack(Items.glowstone_dust, 2), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), - 500, - 48); + GT_Values.RA.stdBuilder().itemInputs(ItemList.SunnariumCell.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sunnarium, 1), + new ItemStack(Items.glowstone_dust, 2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1)) + .noFluidInputs().noFluidOutputs().duration(25 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sThermalCentrifugeRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java index 2f5a62d168..3a19f27c1c 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java @@ -5,6 +5,7 @@ import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sTranscendentPlasmaMixer import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; +import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.util.GT_Utility; @@ -15,6 +16,7 @@ public class TranscendentPlasmaMixerRecipes implements Runnable { private static final int RESPLENDENT_EU_PER_L = 269_326_451; private static final int EXOTIC_EU_PER_L = 1_073_007_393; + @Deprecated private static void addTranscendentPlasmaMixerRecipe(final FluidStack fluidOutput, final int circuitNumber, final FluidStack[] fluidInput, final int EUPerL) { sTranscendentPlasmaMixerRecipes.addRecipe( @@ -32,53 +34,65 @@ public class TranscendentPlasmaMixerRecipes implements Runnable { @Override public void run() { - addTranscendentPlasmaMixerRecipe( - Materials.ExcitedDTCC.getFluid(1000L), - 1, - new FluidStack[] { Materials.Helium.getPlasma(1000), Materials.Iron.getPlasma(1000), - Materials.Calcium.getPlasma(1000), Materials.Niobium.getPlasma(1000) }, - CRUDE_EU_PER_L); - - addTranscendentPlasmaMixerRecipe( - Materials.ExcitedDTPC.getFluid(1000L), - 2, - new FluidStack[] { Materials.Helium.getPlasma(1000), Materials.Iron.getPlasma(1000), - Materials.Calcium.getPlasma(1000), Materials.Niobium.getPlasma(1000), - - Materials.Radon.getPlasma(1000), Materials.Nickel.getPlasma(1000), - Materials.Boron.getPlasma(1000), Materials.Sulfur.getPlasma(1000), - - }, - PROSAIC_EU_PER_L); - - addTranscendentPlasmaMixerRecipe( - Materials.ExcitedDTRC.getFluid(1000L), - 3, - new FluidStack[] { Materials.Helium.getPlasma(1000), Materials.Iron.getPlasma(1000), - Materials.Calcium.getPlasma(1000), Materials.Niobium.getPlasma(1000), - - Materials.Radon.getPlasma(1000), Materials.Nickel.getPlasma(1000), - Materials.Boron.getPlasma(1000), Materials.Sulfur.getPlasma(1000), - - Materials.Nitrogen.getPlasma(1000), Materials.Zinc.getPlasma(1000), - Materials.Silver.getPlasma(1000), Materials.Titanium.getPlasma(1000), }, - RESPLENDENT_EU_PER_L); - - addTranscendentPlasmaMixerRecipe( - Materials.ExcitedDTEC.getFluid(1000L), - 4, - new FluidStack[] { Materials.Helium.getPlasma(1000), Materials.Iron.getPlasma(1000), - Materials.Calcium.getPlasma(1000), Materials.Niobium.getPlasma(1000), - - Materials.Radon.getPlasma(1000), Materials.Nickel.getPlasma(1000), - Materials.Boron.getPlasma(1000), Materials.Sulfur.getPlasma(1000), - - Materials.Nitrogen.getPlasma(1000), Materials.Zinc.getPlasma(1000), - Materials.Silver.getPlasma(1000), Materials.Titanium.getPlasma(1000), - - Materials.Americium.getPlasma(1000), Materials.Bismuth.getPlasma(1000), - Materials.Oxygen.getPlasma(1000), Materials.Tin.getPlasma(1000), }, - EXOTIC_EU_PER_L); + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).noItemOutputs() + .fluidInputs(Materials.ExcitedDTCC.getFluid(1000L)) + .fluidOutputs( + Materials.Helium.getPlasma(1000), + Materials.Iron.getPlasma(1000), + Materials.Calcium.getPlasma(1000), + Materials.Niobium.getPlasma(1000)) + .duration(100).eut(CRUDE_EU_PER_L).addTo(sTranscendentPlasmaMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).noItemOutputs() + .fluidInputs(Materials.ExcitedDTPC.getFluid(1000L)) + .fluidOutputs( + Materials.Helium.getPlasma(1000), + Materials.Iron.getPlasma(1000), + Materials.Calcium.getPlasma(1000), + Materials.Niobium.getPlasma(1000), + Materials.Radon.getPlasma(1000), + Materials.Nickel.getPlasma(1000), + Materials.Boron.getPlasma(1000), + Materials.Sulfur.getPlasma(1000)) + .duration(100).eut(PROSAIC_EU_PER_L).addTo(sTranscendentPlasmaMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(3)).noItemOutputs() + .fluidInputs(Materials.ExcitedDTRC.getFluid(1000L)) + .fluidOutputs( + Materials.Helium.getPlasma(1000), + Materials.Iron.getPlasma(1000), + Materials.Calcium.getPlasma(1000), + Materials.Niobium.getPlasma(1000), + Materials.Radon.getPlasma(1000), + Materials.Nickel.getPlasma(1000), + Materials.Boron.getPlasma(1000), + Materials.Sulfur.getPlasma(1000), + Materials.Nitrogen.getPlasma(1000), + Materials.Zinc.getPlasma(1000), + Materials.Silver.getPlasma(1000), + Materials.Titanium.getPlasma(1000)) + .duration(100).eut(RESPLENDENT_EU_PER_L).addTo(sTranscendentPlasmaMixerRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)).noItemOutputs() + .fluidInputs(Materials.ExcitedDTEC.getFluid(1000L)) + .fluidOutputs( + Materials.Helium.getPlasma(1000), + Materials.Iron.getPlasma(1000), + Materials.Calcium.getPlasma(1000), + Materials.Niobium.getPlasma(1000), + Materials.Radon.getPlasma(1000), + Materials.Nickel.getPlasma(1000), + Materials.Boron.getPlasma(1000), + Materials.Sulfur.getPlasma(1000), + Materials.Nitrogen.getPlasma(1000), + Materials.Zinc.getPlasma(1000), + Materials.Silver.getPlasma(1000), + Materials.Titanium.getPlasma(1000), + Materials.Americium.getPlasma(1000), + Materials.Bismuth.getPlasma(1000), + Materials.Oxygen.getPlasma(1000), + Materials.Tin.getPlasma(1000)) + .duration(100).eut(EXOTIC_EU_PER_L).addTo(sTranscendentPlasmaMixerRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java index 2a0a530986..a0411a5365 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/VacuumFreezerRecipes.java @@ -1,15 +1,13 @@ package gregtech.loaders.postload.recipes; -import static gregtech.loaders.postload.GT_MachineRecipeLoader.isGTPPLoaded; +import static gregtech.api.enums.ModIDs.GTPlusPlus; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.util.GT_RecipeBuilder.*; -import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; -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.*; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -18,241 +16,276 @@ public class VacuumFreezerRecipes implements Runnable { @Override public void run() { // reactor parts vacuum - // reactor heat switch - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorHeatSwitch", 1L, 32767), - GT_ModHandler.getIC2Item("reactorHeatSwitch", 1L, 1), - 100); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorHeatSwitchCore", 1L, 32767), - GT_ModHandler.getIC2Item("reactorHeatSwitchCore", 1L, 1), - 100); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorHeatSwitchSpread", 1L, 32767), - GT_ModHandler.getIC2Item("reactorHeatSwitchSpread", 1L, 1), - 100); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorHeatSwitchDiamond", 1L, 32767), - GT_ModHandler.getIC2Item("reactorHeatSwitchDiamond", 1L, 1), - 100); - // reactor vent - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorVent", 1L, 32767), - GT_ModHandler.getIC2Item("reactorVent", 1L, 1), - 100); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorVentCore", 1L, 32767), - GT_ModHandler.getIC2Item("reactorVentCore", 1L, 1), - 100); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorVentGold", 1L, 32767), - GT_ModHandler.getIC2Item("reactorVentGold", 1L, 1), - 100); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorVentDiamond", 1L, 32767), - GT_ModHandler.getIC2Item("reactorVentDiamond", 1L, 1), - 100); - // reactor vent spread - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorVentSpread", 1L, 32767), - GT_ModHandler.getIC2Item("reactorVentSpread", 1L, 0), - 100); - // reactor coolant - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorCoolantSimple", 1L, 32767), - GT_ModHandler.getIC2Item("reactorCoolantSimple", 1L, 1), - 100); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorCoolantTriple", 1L, 32767), - GT_ModHandler.getIC2Item("reactorCoolantTriple", 1L, 1), - 300); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("reactorCoolantSix", 1L, 32767), - GT_ModHandler.getIC2Item("reactorCoolantSix", 1L, 1), - 600); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_He_1.getWildcard(1L), - ItemList.Reactor_Coolant_He_1.get(1L), - 600); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_He_3.getWildcard(1L), - ItemList.Reactor_Coolant_He_3.get(1L), - 1800); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_He_6.getWildcard(1L), - ItemList.Reactor_Coolant_He_6.get(1L), - 3600); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_NaK_1.getWildcard(1L), - ItemList.Reactor_Coolant_NaK_1.get(1L), - 600); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_NaK_3.getWildcard(1L), - ItemList.Reactor_Coolant_NaK_3.get(1L), - 1800); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_NaK_6.getWildcard(1L), - ItemList.Reactor_Coolant_NaK_6.get(1L), - 3600); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.neutroniumHeatCapacitor.getWildcard(1L), - ItemList.neutroniumHeatCapacitor.get(1L), - 10000000); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_1.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_1.get(1L), - 1800); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_2.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_2.get(1L), - 3600); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_3.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_3.get(1L), - 5400); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_6.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_6.get(1L), - 10800); + { + // reactor heat switch + { + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorHeatSwitch", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorHeatSwitch", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorHeatSwitchCore", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorHeatSwitchCore", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorHeatSwitchSpread", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorHeatSwitchSpread", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorHeatSwitchDiamond", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorHeatSwitchDiamond", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + } + + // reactor vent + { + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorVent", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorVent", 1L, 1)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorVentCore", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorVentCore", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorVentGold", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorVentGold", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorVentDiamond", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorVentDiamond", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + } + + // reactor vent spread + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorVentSpread", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorVentSpread", 1L, 0)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + // reactor coolant + { + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorCoolantSimple", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorCoolantSimple", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(10 * TICKS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorCoolantTriple", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorCoolantTriple", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("reactorCoolantSix", 1L, 32767)) + .itemOutputs(GT_ModHandler.getIC2Item("reactorCoolantSix", 1L, 1)).noFluidInputs() + .noFluidOutputs().duration(3 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_He_1.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_He_1.get(1L)).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_He_3.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_He_3.get(1L)).noFluidInputs().noFluidOutputs() + .duration(9 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_He_6.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_He_6.get(1L)).noFluidInputs().noFluidOutputs() + .duration(18 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_NaK_1.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_NaK_1.get(1L)).noFluidInputs().noFluidOutputs() + .duration(3 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_NaK_3.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_NaK_3.get(1L)).noFluidInputs().noFluidOutputs() + .duration(9 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_NaK_6.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_NaK_6.get(1L)).noFluidInputs().noFluidOutputs() + .duration(18 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.neutroniumHeatCapacitor.getWildcard(1L)) + .itemOutputs(ItemList.neutroniumHeatCapacitor.get(1L)).noFluidInputs().noFluidOutputs() + .duration(13 * HOURS + 53 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_1.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_1.get(1L)).noFluidInputs().noFluidOutputs() + .duration(9 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_2.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_2.get(1L)).noFluidInputs().noFluidOutputs() + .duration(18 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_3.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_3.get(1L)).noFluidInputs().noFluidOutputs() + .duration(27 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_6.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_6.get(1L)).noFluidInputs().noFluidOutputs() + .duration(54 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + } + } // fluid vacuum - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Ice, 1L), - 50); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidOxygen, 1L), - 1200, - 480); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidNitrogen, 1L), - 1200, - 480); - GT_Values.RA.addVacuumFreezerRecipe( - GT_ModHandler.getIC2Item("airCell", 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidAir, 1L), - 28, - 480); - - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_1.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_1.get(1L), - 1800); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_2.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_2.get(1L), - 3600); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_3.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_3.get(1L), - 5400); - GT_Values.RA.addVacuumFreezerRecipe( - ItemList.Reactor_Coolant_Sp_6.getWildcard(1L), - ItemList.Reactor_Coolant_Sp_6.get(1L), - 10800); + { + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Ice, 1L)).noFluidInputs() + .noFluidOutputs().duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidOxygen, 1L)).noFluidInputs() + .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidNitrogen, 1L)) + .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getIC2Item("airCell", 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidAir, 1L)).noFluidInputs() + .noFluidOutputs().duration(1 * SECONDS + 8 * TICKS).eut(TierEU.RECIPE_HV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_1.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_1.get(1L)).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_2.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_2.get(1L)).noFluidInputs().noFluidOutputs() + .duration(3 * MINUTES).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_3.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_3.get(1L)).noFluidInputs().noFluidOutputs() + .duration(4 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(ItemList.Reactor_Coolant_Sp_6.getWildcard(1L)) + .itemOutputs(ItemList.Reactor_Coolant_Sp_6.get(1L)).noFluidInputs().noFluidOutputs() + .duration(9 * MINUTES).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + } // Freeze superconductors. - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Pentacadmiummagnesiumhexaoxid, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Pentacadmiummagnesiumhexaoxid, 1L), - 200, - 120); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Titaniumonabariumdecacoppereikosaoxid, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titaniumonabariumdecacoppereikosaoxid, 1L), - 200, - 480); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Uraniumtriplatinid, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Uraniumtriplatinid, 1L), - 200, - 1920); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Vanadiumtriindinid, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Vanadiumtriindinid, 1L), - 200, - 7680); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get( - OrePrefixes.ingotHot, - Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, - 1L), - GT_OreDictUnificator.get( - OrePrefixes.ingot, - Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, - 1L), - 400, - 30720); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 1L), - 400, - 122880); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Longasssuperconductornameforuvwire, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Longasssuperconductornameforuvwire, 1L), - 800, - 491520); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Longasssuperconductornameforuhvwire, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Longasssuperconductornameforuhvwire, 1L), - 1600, - 1966080); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUEVBase, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.SuperconductorUEVBase, 1L), - 3200, - 7864320); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUIVBase, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.SuperconductorUIVBase, 1L), - 3200, - 30198988); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUMVBase, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.SuperconductorUMVBase, 1L), - 3200, - 120795955); + { + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Pentacadmiummagnesiumhexaoxid, 1L)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Pentacadmiummagnesiumhexaoxid, 1L)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_MV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Titaniumonabariumdecacoppereikosaoxid, 1L)) + .itemOutputs( + GT_OreDictUnificator + .get(OrePrefixes.ingot, Materials.Titaniumonabariumdecacoppereikosaoxid, 1L)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Uraniumtriplatinid, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Uraniumtriplatinid, 1L)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_EV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Vanadiumtriindinid, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Vanadiumtriindinid, 1L)) + .noFluidInputs().noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_IV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get( + OrePrefixes.ingotHot, + Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, + 1L)) + .itemOutputs( + GT_OreDictUnificator.get( + OrePrefixes.ingot, + Materials.Tetraindiumditindibariumtitaniumheptacoppertetrakaidekaoxid, + 1L)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_LuV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.ingotHot, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 1L)) + .itemOutputs( + GT_OreDictUnificator + .get(OrePrefixes.ingot, Materials.Tetranaquadahdiindiumhexaplatiumosminid, 1L)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_ZPM) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Longasssuperconductornameforuvwire, 1L)) + .itemOutputs( + GT_OreDictUnificator + .get(OrePrefixes.ingot, Materials.Longasssuperconductornameforuvwire, 1L)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_UV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs( + GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Longasssuperconductornameforuhvwire, 1L)) + .itemOutputs( + GT_OreDictUnificator + .get(OrePrefixes.ingot, Materials.Longasssuperconductornameforuhvwire, 1L)) + .noFluidInputs().noFluidOutputs().duration(1 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_UHV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUEVBase, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.SuperconductorUEVBase, 1L)) + .noFluidInputs().noFluidOutputs().duration(2 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UEV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUIVBase, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.SuperconductorUIVBase, 1L)) + .noFluidInputs().noFluidOutputs().duration(2 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UIV) + .addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.SuperconductorUMVBase, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.SuperconductorUMVBase, 1L)) + .noFluidInputs().noFluidOutputs().duration(2 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UMV) + .addTo(sVacuumRecipes); + } // Plasma Freezing - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Americium, 1L), - GT_OreDictUnificator.get(OrePrefixes.cellMolten, Materials.Americium, 1L), - 20, - 30720); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Helium, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Helium, 1L), - 5, - 120); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Nitrogen, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), - 28, - 120); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Oxygen, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), - 32, - 120); - GT_Values.RA.addVacuumFreezerRecipe( - GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Radon, 1L), - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Radon, 1L), - 110, - 480); - GT_Values.RA.addVacuumFreezerRecipe(Materials.Boron.getPlasma(144L), Materials.Boron.getMolten(144L), 20, 120); - - if (isGTPPLoaded) { - GT_Values.RA.addVacuumFreezerRecipe( - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TranscendentMetal, 1L) }, - new FluidStack[] { new FluidStack(FluidRegistry.getFluid("molten.titansteel"), 144), - Materials.SuperCoolant.getFluid(1000) }, - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TranscendentMetal, 1L) }, - new FluidStack[] { GT_Values.NF }, - 50 * 20, - 32_000_000); + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Americium, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cellMolten, Materials.Americium, 1L)) + .noFluidInputs().noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_LuV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Helium, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Helium, 1L)).noFluidInputs() + .noFluidOutputs().duration(5 * TICKS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Nitrogen, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L)).noFluidInputs() + .noFluidOutputs().duration(1 * SECONDS + 8 * TICKS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Oxygen, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L)).noFluidInputs() + .noFluidOutputs().duration(1 * SECONDS + 12 * TICKS).eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.cellPlasma, Materials.Radon, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Radon, 1L)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV).addTo(sVacuumRecipes); + + GT_Values.RA.stdBuilder().noItemInputs().noItemOutputs().fluidInputs(Materials.Boron.getPlasma(144L)) + .fluidOutputs(Materials.Boron.getPlasma(144L)).duration(20 * TICKS).eut(12).addTo(sVacuumRecipes); + + } + + if (GTPlusPlus.isModLoaded()) { + // hot transcendent metal ingot cooling + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TranscendentMetal, 1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TranscendentMetal, 1L)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("molten.titansteel"), 144), + Materials.SuperCoolant.getFluid(1000)) + .noFluidOutputs().duration(20 * TICKS).eut(TierEU.RECIPE_UIV).addTo(sVacuumRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/WiremillRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/WiremillRecipes.java index 463f190c23..c6a8023686 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/WiremillRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/WiremillRecipes.java @@ -1,5 +1,10 @@ package gregtech.loaders.postload.recipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sWiremillRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_Utility.calculateRecipeEU; + import net.minecraft.init.Items; import net.minecraft.item.ItemStack; @@ -7,56 +12,152 @@ import gregtech.GT_Mod; 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.util.GT_OreDictUnificator; -import gregtech.api.util.GT_RecipeRegistrator; +import gregtech.api.util.*; public class WiremillRecipes implements Runnable { + // directly copied from GT code but converted to RA2 format + void registerWiremillRecipes(Materials materials, int baseDuration, int eut, OrePrefixes prefix1, + OrePrefixes prefix2, int multiplier) { + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(prefix1, materials, 1L), GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, materials, multiplier)).noFluidInputs() + .noFluidOutputs().duration(baseDuration).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix1, materials, 2L / multiplier), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt02, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration((int) (baseDuration * 1.5f)).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix1, materials, 4L / multiplier), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt04, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration(baseDuration * 2).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix1, materials, 8L / multiplier), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt08, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration((int) (baseDuration * 2.5f)).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix1, materials, 12L / multiplier), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt12, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration(baseDuration * 3).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix1, materials, 16L / multiplier), + GT_Utility.getIntegratedCircuit(16)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt16, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration((int) (baseDuration * 3.5f)).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix2, materials, 2L / multiplier), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration(baseDuration / 2).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix2, materials, 4L / multiplier), + GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt02, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration(baseDuration).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix2, materials, 8L / multiplier), + GT_Utility.getIntegratedCircuit(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt04, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration((int) (baseDuration * 1.5f)).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix2, materials, 16L / multiplier), + GT_Utility.getIntegratedCircuit(8)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt08, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration(baseDuration * 2).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix2, materials, 24L / multiplier), + GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt12, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration((int) (baseDuration * 2.5f)).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(prefix2, materials, 32L / multiplier), + GT_Utility.getIntegratedCircuit(16)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt16, materials, 1L)).noFluidInputs() + .noFluidOutputs().duration(baseDuration * 3).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(prefix1, materials, 1L), GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireFine, materials, 4L * multiplier)).noFluidInputs() + .noFluidOutputs().duration(baseDuration).eut(eut).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(prefix2, materials, 1L), GT_Utility.getIntegratedCircuit(3)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireFine, materials, 2L * multiplier)).noFluidInputs() + .noFluidOutputs().duration(baseDuration / 2).eut(eut).addTo(sWiremillRecipes); + } + + void registerWiremillRecipes(Materials aMaterial, int baseDuration, int aEUt) { + registerWiremillRecipes( + aMaterial, + baseDuration, + calculateRecipeEU(aMaterial, aEUt), + OrePrefixes.ingot, + OrePrefixes.stick, + 2); + } + @Override public void run() { - GT_RecipeRegistrator - .registerWiremillRecipes(Materials.Graphene, 400, 2, OrePrefixes.dust, OrePrefixes.stick, 1); - GT_RecipeRegistrator.registerWiremillRecipes(Materials.SpaceTime, 400, 32_000); + registerWiremillRecipes(Materials.Graphene, 20 * SECONDS, 2, OrePrefixes.dust, OrePrefixes.stick, 1); - GT_Values.RA.addWiremillRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Polycaprolactam, 1L), - new ItemStack(Items.string, 32), - 80, - 48); + registerWiremillRecipes(Materials.SpaceTime, 20 * SECONDS, 32_000); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Polycaprolactam, 1L)) + .itemOutputs(new ItemStack(Items.string, 32)).noFluidInputs().noFluidOutputs().duration(4 * SECONDS) + .eut(48).addTo(sWiremillRecipes); if (!GT_Mod.gregtechproxy.mDisableIC2Cables) { - GT_Values.RA.addWiremillRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Copper, 1L), - GT_ModHandler.getIC2Item("copperCableItem", 3L), - 100, - 2); - GT_Values.RA.addWiremillRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnnealedCopper, 1L), - GT_ModHandler.getIC2Item("copperCableItem", 3L), - 100, - 2); - GT_Values.RA.addWiremillRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 1L), - GT_ModHandler.getIC2Item("tinCableItem", 4L), - 150, - 1); - GT_Values.RA.addWiremillRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), - GT_ModHandler.getIC2Item("ironCableItem", 6L), - 200, - 2); - GT_Values.RA.addWiremillRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), - GT_ModHandler.getIC2Item("ironCableItem", 6L), - 200, - 2); - GT_Values.RA.addWiremillRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), - GT_ModHandler.getIC2Item("goldCableItem", 6L), - 200, - 1); + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Copper, 1L)) + .itemOutputs(GT_ModHandler.getIC2Item("copperCableItem", 3L)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(2).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnnealedCopper, 1L)) + .itemOutputs(GT_ModHandler.getIC2Item("copperCableItem", 3L)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(2).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 1L)) + .itemOutputs(GT_ModHandler.getIC2Item("tinCableItem", 4L)).noFluidInputs().noFluidOutputs() + .duration(7 * SECONDS + 10 * TICKS).eut(1).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L)) + .itemOutputs(GT_ModHandler.getIC2Item("ironCableItem", 6L)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(2).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L)) + .itemOutputs(GT_ModHandler.getIC2Item("ironCableItem", 6L)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(2).addTo(sWiremillRecipes); + + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L)) + .itemOutputs(GT_ModHandler.getIC2Item("goldCableItem", 6L)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(1).addTo(sWiremillRecipes); } } } diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java b/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java index fc9f7d936d..4e9566c2d1 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java @@ -1,6 +1,6 @@ package gregtech.loaders.preload; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -152,7 +152,7 @@ public class GT_Loader_ItemData implements Runnable { GT_OreDictUnificator .addItemData(new ItemStack(Blocks.iron_bars, 8, 32767), new ItemData(Materials.Iron, 10886400L)); GT_OreDictUnificator.addItemData( - GT_ModHandler.getModItem(MOD_ID_DC, "item.SteelBars", 8L, 0), + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.SteelBars", 8L, 0), new ItemData(Materials.Steel, 10886400L)); GT_OreDictUnificator .addItemData(GT_ModHandler.getIC2Item("ironFurnace", 1L), new ItemData(Materials.Iron, 18144000L)); diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java index f7652b3c86..a1256c5ea7 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java @@ -1,12 +1,13 @@ package gregtech.loaders.preload; +import static gregtech.api.enums.ModIDs.*; + import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; import codechicken.nei.api.API; -import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.*; @@ -248,8 +249,6 @@ public class GT_Loader_MetaTileEntities implements Runnable { // TODO CHECK CIRC | GT_ModHandler.RecipeBits.BUFFERED; private static final long bitsd = GT_ModHandler.RecipeBits.DISMANTLEABLE | bits; - private static final Boolean isNEILoaded = Loader.isModLoaded("NotEnoughItems"); - private static void run1() { GT_ModHandler.addCraftingRecipe( ItemList.Casing_Pipe_Polytetrafluoroethylene.get(1L), @@ -5624,7 +5623,7 @@ public class GT_Loader_MetaTileEntities implements Runnable { // TODO CHECK CIRC new Object[] { "ACA", aTextWireHull, "ACA", 'M', ItemList.Hull_IV, 'A', ItemList.Robot_Arm_IV, 'C', OrePrefixes.circuit.get(Materials.Elite), 'W', OrePrefixes.cableGt01.get(Materials.Tungsten) }); - if (Loader.isModLoaded("Forestry")) { + if (Forestry.isModLoaded()) { ItemList.Machine_IndustrialApiary.set( new GT_MetaTileEntity_IndustrialApiary( 9399, @@ -5633,76 +5632,77 @@ public class GT_Loader_MetaTileEntities implements Runnable { // TODO CHECK CIRC 8).getStackForm(1L)); /* Conversion recipes */ - if (Loader.isModLoaded("gendustry")) { + // TODO: Move those recipes with the other recipes + if (Gendustry.isModLoaded()) { GT_ModHandler.addShapelessCraftingRecipe( ItemList.Machine_IndustrialApiary.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "IndustrialApiary", 1, 0) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "IndustrialApiary", 1, 0) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_Frame.get(1), - new Object[] { GT_ModHandler.getModItem("gendustry", "UpgradeFrame", 1) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "UpgradeFrame", 1) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_PRODUCTION.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 0) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 0) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_PLAINS.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 17) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 17) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_LIGHT.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 11) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 11) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_FLOWERING.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 2) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 2) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_WINTER.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 20) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 20) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_DRYER.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 5) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 5) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_AUTOMATION.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 14) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 14) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_HUMIDIFIER.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 4) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 4) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_HELL.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 13) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 13) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_POLLEN.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 22) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 22) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_DESERT.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 16) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 16) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_COOLER.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 7) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 7) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_LIFESPAN.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 1) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 1) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_SEAL.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 10) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 10) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_STABILIZER.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 19) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 19) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_JUNGLE.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 18) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 18) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_TERRITORY.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 3) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 3) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_OCEAN.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 21) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 21) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_SKY.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 12) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 12) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_HEATER.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 6) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 6) }); GT_ModHandler.addShapelessCraftingRecipe( ItemList.IndustrialApiary_Upgrade_SIEVE.get(1L), - new Object[] { GT_ModHandler.getModItem("gendustry", "ApiaryUpgrade", 1, 15) }); + new Object[] { GT_ModHandler.getModItem(Gendustry.modID, "ApiaryUpgrade", 1, 15) }); } } @@ -8593,7 +8593,7 @@ public class GT_Loader_MetaTileEntities implements Runnable { // TODO CHECK CIRC "basicgenerator.magicenergyabsorber.tier.04", "Grandmaster Magic Energy Absorber", 4).getStackForm(1L)); - if (!Loader.isModLoaded("Thaumcraft")) { + if (!Thaumcraft.isModLoaded()) { GT_ModHandler.addCraftingRecipe( ItemList.MagicEnergyConverter_LV.get(1L), bitsd, @@ -9241,7 +9241,7 @@ public class GT_Loader_MetaTileEntities implements Runnable { // TODO CHECK CIRC 1200, 120); } else { - if (isNEILoaded) { + if (NotEnoughItems.isModLoaded()) { API.hideItem(ItemList.Machine_Multi_Cleanroom.get(1L)); } } diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java b/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java index 273dcf1427..56ea3ffcee 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java @@ -1,6 +1,6 @@ package gregtech.loaders.preload; -import static gregtech.api.enums.GT_Values.MOD_ID_DC; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -320,97 +320,99 @@ public class GT_Loader_OreDictionary implements Runnable { GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.Osmium, - GT_ModHandler.getModItem(MOD_ID_DC, "item.OsmiumItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.OsmiumItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.Aluminium, - GT_ModHandler.getModItem(MOD_ID_DC, "item.AluminiumItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.AluminiumItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.StainlessSteel, - GT_ModHandler.getModItem(MOD_ID_DC, "item.StainlessSteelItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.StainlessSteelItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.Tungsten, - GT_ModHandler.getModItem(MOD_ID_DC, "item.TungstenItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TungstenItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.Neutronium, - GT_ModHandler.getModItem(MOD_ID_DC, "item.NeutroniumItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.NeutroniumItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.TungstenSteel, - GT_ModHandler.getModItem(MOD_ID_DC, "item.TungstenSteelItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TungstenSteelItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.Iridium, - GT_ModHandler.getModItem(MOD_ID_DC, "item.IridiumItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.IridiumItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.Titanium, - GT_ModHandler.getModItem(MOD_ID_DC, "item.TitaniumItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.TitaniumItemCasing", 1L, 0)); GT_OreDictUnificator.registerOre( OrePrefixes.itemCasing, Materials.Chrome, - GT_ModHandler.getModItem(MOD_ID_DC, "item.ChromeItemCasing", 1L, 0)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.ChromeItemCasing", 1L, 0)); // Fake Circuits GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Primitive, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitULV", 1L)); - // GT_OreDictUnificator.registerOre(OrePrefixes.circuit, Materials.Basic, GT_ModHandler.getModItem(MOD_ID_DC, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitULV", 1L)); + // GT_OreDictUnificator.registerOre(OrePrefixes.circuit, Materials.Basic, + // GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, // "item.CircuitLV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Good, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitMV", 1L)); - // GT_OreDictUnificator.registerOre(OrePrefixes.circuit, Materials.Advanced, GT_ModHandler.getModItem(MOD_ID_DC, + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitMV", 1L)); + // GT_OreDictUnificator.registerOre(OrePrefixes.circuit, Materials.Advanced, + // GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, // "item.CircuitHV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Data, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitEV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitEV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Elite, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitIV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitIV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Master, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitLuV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitLuV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Ultimate, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitZPM", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitZPM", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Superconductor, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitUV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitUV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Infinite, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitUHV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitUHV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Bio, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitUEV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitUEV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Optical, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitUIV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitUIV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Exotic, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitUMV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitUMV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Cosmic, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitUXV", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitUXV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, Materials.Transcendent, - GT_ModHandler.getModItem(MOD_ID_DC, "item.CircuitMAX", 1L)); + GT_ModHandler.getModItem(NewHorizonsCoreMod.modID, "item.CircuitMAX", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.block, diff --git a/src/main/java/gregtech/loaders/preload/GT_PreLoad.java b/src/main/java/gregtech/loaders/preload/GT_PreLoad.java index a9e6f80da7..0d1c8f33a3 100644 --- a/src/main/java/gregtech/loaders/preload/GT_PreLoad.java +++ b/src/main/java/gregtech/loaders/preload/GT_PreLoad.java @@ -1,8 +1,7 @@ package gregtech.loaders.preload; import static gregtech.GT_Mod.GT_FML_LOGGER; -import static gregtech.api.enums.GT_Values.MOD_ID_AE; -import static gregtech.api.enums.GT_Values.MOD_ID_GTPP; +import static gregtech.api.enums.ModIDs.*; import java.io.BufferedReader; import java.io.File; @@ -119,14 +118,14 @@ public class GT_PreLoad { } public static void initCompat() { - GregTech_API.mIC2Classic = Loader.isModLoaded("IC2-Classic-Spmod"); - GregTech_API.mGTPlusPlus = Loader.isModLoaded(MOD_ID_GTPP); - GregTech_API.mTranslocator = Loader.isModLoaded("Translocator"); - GregTech_API.mTConstruct = Loader.isModLoaded("TConstruct"); - GregTech_API.mGalacticraft = Loader.isModLoaded("GalacticraftCore"); - GregTech_API.mAE2 = Loader.isModLoaded(MOD_ID_AE); - GregTech_API.mHodgepodge = Loader.isModLoaded("hodgepodge"); - GregTech_API.mEternalSingularity = Loader.isModLoaded("eternalsingularity"); + GregTech_API.mIC2Classic = IndustrialCraft2Classic.isModLoaded(); + GregTech_API.mGTPlusPlus = GTPlusPlus.isModLoaded(); + GregTech_API.mTranslocator = Translocator.isModLoaded(); + GregTech_API.mTConstruct = TinkerConstruct.isModLoaded(); + GregTech_API.mGalacticraft = GalacticraftCore.isModLoaded(); + GregTech_API.mAE2 = AppliedEnergistics2.isModLoaded(); + GregTech_API.mHodgepodge = HodgePodge.isModLoaded(); + GregTech_API.mEternalSingularity = EternalSingularity.isModLoaded(); } public static void createLogFiles(File parentFile, Configuration tMainConfig) { @@ -187,7 +186,7 @@ public class GT_PreLoad { } public static void runMineTweakerCompat() { - if (!Loader.isModLoaded("MineTweaker3")) return; + if (!CraftTweaker.isModLoaded()) return; GT_FML_LOGGER.info("preReader"); final List oreTags = new ArrayList<>(); @@ -614,7 +613,7 @@ public class GT_PreLoad { GT_Mod.gregtechproxy.mUndergroundOil.getConfig(tMainConfig, "undergroundfluid"); GT_Mod.gregtechproxy.mEnableCleanroom = tMainConfig.get("general", "EnableCleanroom", true).getBoolean(true); if (GT_Mod.gregtechproxy.mEnableCleanroom) GT_MetaTileEntity_Cleanroom.loadConfig(tMainConfig); - GT_Mod.gregtechproxy.mLowGravProcessing = Loader.isModLoaded(GT_Values.MOD_ID_GC_CORE) + GT_Mod.gregtechproxy.mLowGravProcessing = GalacticraftCore.isModLoaded() && tMainConfig.get("general", "LowGravProcessing", true).getBoolean(true); GT_Mod.gregtechproxy.mUseGreatlyShrukenReplacementList = tMainConfig .get("general", "GTNH Optimised Material Loading", true).getBoolean(true); @@ -633,7 +632,7 @@ public class GT_PreLoad { GregTech_API.mEUtoRF = GregTech_API.sOPStuff.get(ConfigCategories.general, "100EUtoRF", 360); GregTech_API.mRFtoEU = GregTech_API.sOPStuff.get(ConfigCategories.general, "100RFtoEU", 20); GregTech_API.mRFExplosions = GregTech_API.sOPStuff.get(ConfigCategories.general, "RFExplosions", false); - GregTech_API.meIOLoaded = Loader.isModLoaded("EnderIO"); + GregTech_API.meIOLoaded = EnderIO.isModLoaded(); GT_Mod.gregtechproxy.mForceFreeFace = GregTech_API.sMachineFile .get(ConfigCategories.machineconfig, "forceFreeFace", true); GT_Mod.gregtechproxy.mBrickedBlastFurnace = tMainConfig.get("general", "BrickedBlastFurnace", true) diff --git a/src/main/java/gregtech/nei/IMCForNEI.java b/src/main/java/gregtech/nei/IMCForNEI.java index 08f4a6d137..36d05d8021 100644 --- a/src/main/java/gregtech/nei/IMCForNEI.java +++ b/src/main/java/gregtech/nei/IMCForNEI.java @@ -1,14 +1,15 @@ package gregtech.nei; +import static gregtech.api.enums.ModIDs.NotEnoughItems; + import net.minecraft.nbt.NBTTagCompound; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.event.FMLInterModComms; public class IMCForNEI { public static void IMCSender() { - if (!Loader.isModLoaded("NotEnoughItems")) { + if (!NotEnoughItems.isModLoaded()) { return; } diff --git a/src/main/java/gregtech/nei/dumper/GregTechIDDumper.java b/src/main/java/gregtech/nei/dumper/GregTechIDDumper.java index 896ec8f83b..dfcc2f567c 100644 --- a/src/main/java/gregtech/nei/dumper/GregTechIDDumper.java +++ b/src/main/java/gregtech/nei/dumper/GregTechIDDumper.java @@ -1,12 +1,13 @@ package gregtech.nei.dumper; +import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; + import net.minecraft.util.ChatComponentTranslation; import net.minecraft.util.ChatStyle; import net.minecraft.util.EnumChatFormatting; import codechicken.nei.NEIClientUtils; import codechicken.nei.config.DataDumper; -import cpw.mods.fml.common.Loader; public abstract class GregTechIDDumper extends DataDumper { @@ -37,7 +38,7 @@ public abstract class GregTechIDDumper extends DataDumper { } protected void logWarn() { - if (!Loader.isModLoaded("dreamcraft")) { + if (!NewHorizonsCoreMod.isModLoaded()) { NEIClientUtils.printChatMessage( new ChatComponentTranslation("nei.options.tools.dump.gt5u.warn_env") .setChatStyle(new ChatStyle().setColor(EnumChatFormatting.DARK_RED))); -- cgit