From 50dd2150151561859f37148e9cfe59b3225328ea Mon Sep 17 00:00:00 2001 From: PureBluez Date: Mon, 23 Dec 2024 18:56:30 -0600 Subject: [PATCH 1/8] add solar factory recipe --- .../recipes/AssemblingLineRecipes.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java index ba62b6845..3045b5197 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java @@ -340,6 +340,28 @@ public void run() { 30 * SECONDS, (int) TierEU.RECIPE_UEV); + // Solar Factory Controller + GTValues.RA.stdBuilder() + .metadata(RESEARCH_ITEM, ItemList.Cover_SolarPanel.get(1)) + .metadata(RESEARCH_TIME, 2 * HOURS) + .itemInputs( + ItemList.Hull_LuV.get(2), + ItemList.AssemblingMachineLuV.get(1), + GTOreDictUnificator.get(OrePrefixes.frameGt, Materials.BlueAlloy, 4), + ItemList.Robot_Arm_LuV.get(8), + ItemList.Electric_Motor_LuV.get(4), + ItemList.Electric_Piston_LuV.get(4), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 4), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.LuV), 8)) + .itemOutputs(ItemList.SolarFactory.get(1)) + .fluidInputs( + new FluidStack(solderIndalloy, 2880), + Materials.Lubricant.getFluid(1440), + Materials.Electrotine.getMolten(720)) + .duration(60 * SECONDS) + .eut(TierEU.RECIPE_LuV) + .addTo(AssemblyLine); + if (GalaxySpace.isModLoaded()) { // Dyson Swarm Module TTRecipeAdder.addResearchableAssemblylineRecipe( From cb50766e4f020185c13add69af3832de4effd301 Mon Sep 17 00:00:00 2001 From: PureBluez Date: Fri, 27 Dec 2024 13:48:36 -0600 Subject: [PATCH 2/8] move the solar factory recipes to coremod also apply spotless --- .../gthandler/GT_MachineRecipeLoader.java | 2 + .../recipes/AssemblingLineRecipes.java | 7 +- .../recipes/SolarFactoryRecipes.java | 241 ++++++++++++++++++ 3 files changed, 245 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java diff --git a/src/main/java/com/dreammaster/gthandler/GT_MachineRecipeLoader.java b/src/main/java/com/dreammaster/gthandler/GT_MachineRecipeLoader.java index 5563918c9..b61545d57 100644 --- a/src/main/java/com/dreammaster/gthandler/GT_MachineRecipeLoader.java +++ b/src/main/java/com/dreammaster/gthandler/GT_MachineRecipeLoader.java @@ -36,6 +36,7 @@ import com.dreammaster.gthandler.recipes.PolarizerRecipes; import com.dreammaster.gthandler.recipes.RecipeRemoval; import com.dreammaster.gthandler.recipes.SifterRecipes; +import com.dreammaster.gthandler.recipes.SolarFactoryRecipes; import com.dreammaster.gthandler.recipes.SpaceAssemblerRecipes; import com.dreammaster.gthandler.recipes.VacuumFreezerRecipes; import com.dreammaster.gthandler.recipes.VacuumFurnaceRecipes; @@ -80,6 +81,7 @@ public void run() { new MixerRecipes().run(); new NeutroniumCompressorRecipes().run(); new SifterRecipes().run(); + new SolarFactoryRecipes().run(); new VacuumFreezerRecipes().run(); new WiremillRecipes().run(); new CrackingRecipes().run(); diff --git a/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java index 3045b5197..e7b536805 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java @@ -341,8 +341,7 @@ public void run() { (int) TierEU.RECIPE_UEV); // Solar Factory Controller - GTValues.RA.stdBuilder() - .metadata(RESEARCH_ITEM, ItemList.Cover_SolarPanel.get(1)) + GTValues.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Cover_SolarPanel.get(1)) .metadata(RESEARCH_TIME, 2 * HOURS) .itemInputs( ItemList.Hull_LuV.get(2), @@ -358,9 +357,7 @@ public void run() { new FluidStack(solderIndalloy, 2880), Materials.Lubricant.getFluid(1440), Materials.Electrotine.getMolten(720)) - .duration(60 * SECONDS) - .eut(TierEU.RECIPE_LuV) - .addTo(AssemblyLine); + .duration(60 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(AssemblyLine); if (GalaxySpace.isModLoaded()) { // Dyson Swarm Module diff --git a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java new file mode 100644 index 000000000..ad7e6a0b1 --- /dev/null +++ b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java @@ -0,0 +1,241 @@ +package com.dreammaster.gthandler.recipes; + +import static gregtech.api.enums.Mods.NewHorizonsCoreMod; +import static gregtech.api.enums.Mods.SuperSolarPanels; +import static gregtech.api.recipe.RecipeMaps.solarFactoryRecipes; +import static gregtech.api.util.GTModHandler.getModItem; +import static gregtech.api.util.GTRecipeBuilder.SECONDS; +import static gregtech.api.util.GTRecipeConstants.SOLAR_FACTORY_RECIPE_DATA; + +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fluids.FluidStack; + +import com.dreammaster.gthandler.CustomItemList; + +import gregtech.api.enums.GTValues; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; +import gregtech.api.util.GTOreDictUnificator; +import gregtech.api.util.recipe.SolarFactoryRecipeData; + +// If you want to make a new recipe for Solar Factory, you'll need to make a hidden one and a fake one. +// The fake one should include the wafer you use, the hidden one without it. Hidden recipes must have a metadata value. + +// Recipe metadata values represent the minimum tier and the amount of wafers respectively. +// Metadata is only required on the hidden recipes. + +// If the recipe you are making doesn't use a wafer, just make it without any metadata. +public class SolarFactoryRecipes implements Runnable { + + private final Fluid solderIndalloy; + + public SolarFactoryRecipes() { + solderIndalloy = FluidRegistry.getFluid("molten.indalloy140"); + } + + public void run() { + + if (SuperSolarPanels.isModLoaded()) { + // Fake recipes for NEI + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedAluminiumPlate.get(2), + ItemList.Circuit_Silicon_Wafer2.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 4), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.HV), 2)) + .itemOutputs(ItemList.Cover_SolarPanel_LV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV).fake().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedTitaniumPlate.get(2), + ItemList.Circuit_Silicon_Wafer2.get(4), + ItemList.Circuit_Chip_ULPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 4), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.EV), 2)) + .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)).fluidInputs(Materials.Epoxid.getMolten(576)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_EV).fake().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedTungstenPlate.get(4), + ItemList.Circuit_Silicon_Wafer2.get(4), + ItemList.Circuit_Chip_LPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 8), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.IV), 4), + GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.IndiumGalliumPhosphide), 8)) + .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)).fluidInputs(Materials.Epoxid.getMolten(1152)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_IV).fake().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedTungstenSteelPlate.get(4), + ItemList.Circuit_Silicon_Wafer3.get(4), + ItemList.Circuit_Chip_PIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 8), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.LuV), 4), + GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.SiliconSG), 16)) + .itemOutputs(ItemList.Cover_SolarPanel_EV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(576)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_LuV).fake().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedChromePlate.get(4), + ItemList.Circuit_Silicon_Wafer3.get(8), + ItemList.Circuit_Chip_HPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 10), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 4), + GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 4)) + .itemOutputs(ItemList.Cover_SolarPanel_IV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(1152)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_ZPM).fake().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedChromePlate.get(4), + ItemList.Circuit_Silicon_Wafer4.get(8), + ItemList.Circuit_Chip_UHPIC.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 24), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 2), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 6), + GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 8), + getModItem(SuperSolarPanels.ID, "solarsplitter", 4, 0)) + .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(1728)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_UV).fake().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), + ItemList.Circuit_Silicon_Wafer5.get(8), + ItemList.Circuit_Wafer_QPIC.get(4), + ItemList.Circuit_Chip_NPIC.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 32), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 2), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 4)) + .itemOutputs(ItemList.Cover_SolarPanel_ZPM.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(2304)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_UHV).fake().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), + ItemList.Circuit_Silicon_Wafer5.get(8), + getModItem(NewHorizonsCoreMod.ID, "item.PicoWafer", 8), + ItemList.Circuit_Chip_PPIC.get(8), + ItemList.Circuit_Chip_CrystalSoC2.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUHV, 12), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 2), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 4), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 4)) + .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)).fluidInputs(new FluidStack(solderIndalloy, 1152)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_UEV).fake().addTo(solarFactoryRecipes); + + // Real recipes for the multi, hidden from NEI + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedAluminiumPlate.get(2), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 4), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.HV), 2)) + .itemOutputs(ItemList.Cover_SolarPanel_LV.get(1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)) + .hidden().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedTitaniumPlate.get(2), + ItemList.Circuit_Chip_ULPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 4), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.EV), 2)) + .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)).fluidInputs(Materials.Epoxid.getMolten(576)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_EV) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).hidden() + .addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedTungstenPlate.get(4), + ItemList.Circuit_Chip_LPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 8), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.IV), 4), + GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.IndiumGalliumPhosphide), 8)) + .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(576)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_IV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)) + .hidden().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedTungstenSteelPlate.get(4), + ItemList.Circuit_Chip_PIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 8), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.LuV), 4), + GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.SiliconSG), 16)) + .itemOutputs(ItemList.Cover_SolarPanel_EV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(576)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_LuV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 4)) + .hidden().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedChromePlate.get(4), + ItemList.Circuit_Chip_HPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 10), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 4), + GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 4)) + .itemOutputs(ItemList.Cover_SolarPanel_IV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(1152)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_ZPM).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 8)) + .hidden().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedChromePlate.get(4), + ItemList.Circuit_Chip_UHPIC.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 24), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 2), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 6), + GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 8), + getModItem(SuperSolarPanels.ID, "solarsplitter", 4, 0)) + .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(1728)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_UV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(4, 8)) + .hidden().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), + ItemList.Circuit_Wafer_QPIC.get(4), + ItemList.Circuit_Chip_NPIC.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 32), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 2), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 4)) + .itemOutputs(ItemList.Cover_SolarPanel_ZPM.get(1)) + .fluidInputs(Materials.Polybenzimidazole.getMolten(2304)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_UHV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)) + .hidden().addTo(solarFactoryRecipes); + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), + CustomItemList.PicoWafer.get(8), + ItemList.Circuit_Chip_PPIC.get(8), + ItemList.Circuit_Chip_CrystalSoC2.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUHV, 12), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 2), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 4), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 4)) + .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)).fluidInputs(new FluidStack(solderIndalloy, 1152)) + .duration(10 * SECONDS).eut(TierEU.RECIPE_UEV) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)).hidden() + .addTo(solarFactoryRecipes); + } + } + +} From 08dffd19123a80d78cb87b1179eff73b4efc5d79 Mon Sep 17 00:00:00 2001 From: PureBluez Date: Sun, 29 Dec 2024 20:54:19 -0600 Subject: [PATCH 3/8] Utopia Melodia Lunacia Misfortuna Photosynthesia Ecstasia Philosophiofantasia --- .../recipes/SolarFactoryRecipes.java | 181 +++++------------- 1 file changed, 53 insertions(+), 128 deletions(-) diff --git a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java index ad7e6a0b1..3dce51678 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java @@ -6,11 +6,17 @@ import static gregtech.api.util.GTModHandler.getModItem; import static gregtech.api.util.GTRecipeBuilder.SECONDS; import static gregtech.api.util.GTRecipeConstants.SOLAR_FACTORY_RECIPE_DATA; +import static gregtech.common.tileentities.machines.multi.MTESolarFactory.validWafers; -import net.minecraftforge.fluids.Fluid; +import java.util.ArrayList; +import java.util.Arrays; + +import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; +import org.apache.commons.lang3.tuple.Pair; + import com.dreammaster.gthandler.CustomItemList; import gregtech.api.enums.GTValues; @@ -19,27 +25,15 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; import gregtech.api.util.GTOreDictUnificator; +import gregtech.api.util.GTRecipeBuilder; import gregtech.api.util.recipe.SolarFactoryRecipeData; -// If you want to make a new recipe for Solar Factory, you'll need to make a hidden one and a fake one. -// The fake one should include the wafer you use, the hidden one without it. Hidden recipes must have a metadata value. - // Recipe metadata values represent the minimum tier and the amount of wafers respectively. -// Metadata is only required on the hidden recipes. // If the recipe you are making doesn't use a wafer, just make it without any metadata. public class SolarFactoryRecipes implements Runnable { - private final Fluid solderIndalloy; - - public SolarFactoryRecipes() { - solderIndalloy = FluidRegistry.getFluid("molten.indalloy140"); - } - - public void run() { - - if (SuperSolarPanels.isModLoaded()) { - // Fake recipes for NEI + public GTRecipeBuilder[] SolarFactoryRawRecipes = { GTValues.RA.stdBuilder() .itemInputs( CustomItemList.IrradiantReinforcedAluminiumPlate.get(2), @@ -47,8 +41,9 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 4), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.HV), 2)) .itemOutputs(ItemList.Cover_SolarPanel_LV.get(1)) - .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_HV).fake().addTo(solarFactoryRecipes); + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_HV), GTValues.RA.stdBuilder() .itemInputs( @@ -58,7 +53,8 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 4), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.EV), 2)) .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)).fluidInputs(Materials.Epoxid.getMolten(576)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_EV).fake().addTo(solarFactoryRecipes); + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_EV), GTValues.RA.stdBuilder() .itemInputs( @@ -69,7 +65,8 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.IV), 4), GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.IndiumGalliumPhosphide), 8)) .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)).fluidInputs(Materials.Epoxid.getMolten(1152)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_IV).fake().addTo(solarFactoryRecipes); + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_IV), GTValues.RA.stdBuilder() .itemInputs( @@ -80,8 +77,9 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.LuV), 4), GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.SiliconSG), 16)) .itemOutputs(ItemList.Cover_SolarPanel_EV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(576)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_LuV).fake().addTo(solarFactoryRecipes); + .fluidInputs(Materials.Polybenzimidazole.getMolten(576)) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 4)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_LuV), GTValues.RA.stdBuilder() .itemInputs( @@ -92,8 +90,9 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 4), GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 4)) .itemOutputs(ItemList.Cover_SolarPanel_IV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(1152)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_ZPM).fake().addTo(solarFactoryRecipes); + .fluidInputs(Materials.Polybenzimidazole.getMolten(1152)) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 8)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_ZPM), GTValues.RA.stdBuilder() .itemInputs( @@ -106,8 +105,9 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 8), getModItem(SuperSolarPanels.ID, "solarsplitter", 4, 0)) .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(1728)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_UV).fake().addTo(solarFactoryRecipes); + .fluidInputs(Materials.Polybenzimidazole.getMolten(1728)) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(4, 8)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_UV), GTValues.RA.stdBuilder() .itemInputs( @@ -119,8 +119,9 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 2), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 4)) .itemOutputs(ItemList.Cover_SolarPanel_ZPM.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(2304)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_UHV).fake().addTo(solarFactoryRecipes); + .fluidInputs(Materials.Polybenzimidazole.getMolten(2304)) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_UHV), GTValues.RA.stdBuilder() .itemInputs( @@ -133,109 +134,33 @@ public void run() { GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 2), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 4), GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 4)) - .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)).fluidInputs(new FluidStack(solderIndalloy, 1152)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_UEV).fake().addTo(solarFactoryRecipes); + .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("molten.indalloy140"), 1152)) + .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)).duration(10 * SECONDS) + .eut(TierEU.RECIPE_UEV) }; - // Real recipes for the multi, hidden from NEI - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedAluminiumPlate.get(2), - GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 4), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.HV), 2)) - .itemOutputs(ItemList.Cover_SolarPanel_LV.get(1)) - .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_HV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)) - .hidden().addTo(solarFactoryRecipes); - - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedTitaniumPlate.get(2), - ItemList.Circuit_Chip_ULPIC.get(4), - GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 4), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.EV), 2)) - .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)).fluidInputs(Materials.Epoxid.getMolten(576)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_EV) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).hidden() - .addTo(solarFactoryRecipes); - - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedTungstenPlate.get(4), - ItemList.Circuit_Chip_LPIC.get(4), - GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 8), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.IV), 4), - GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.IndiumGalliumPhosphide), 8)) - .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(576)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_IV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)) - .hidden().addTo(solarFactoryRecipes); - - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedTungstenSteelPlate.get(4), - ItemList.Circuit_Chip_PIC.get(4), - GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 8), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.LuV), 4), - GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.SiliconSG), 16)) - .itemOutputs(ItemList.Cover_SolarPanel_EV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(576)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_LuV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 4)) - .hidden().addTo(solarFactoryRecipes); - - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedChromePlate.get(4), - ItemList.Circuit_Chip_HPIC.get(4), - GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 10), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 4), - GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 4)) - .itemOutputs(ItemList.Cover_SolarPanel_IV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(1152)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_ZPM).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 8)) - .hidden().addTo(solarFactoryRecipes); - - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedChromePlate.get(4), - ItemList.Circuit_Chip_UHPIC.get(8), - GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 24), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 2), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 6), - GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 8), - getModItem(SuperSolarPanels.ID, "solarsplitter", 4, 0)) - .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(1728)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_UV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(4, 8)) - .hidden().addTo(solarFactoryRecipes); - - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), - ItemList.Circuit_Wafer_QPIC.get(4), - ItemList.Circuit_Chip_NPIC.get(8), - GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 32), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 2), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 4)) - .itemOutputs(ItemList.Cover_SolarPanel_ZPM.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(2304)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_UHV).metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)) - .hidden().addTo(solarFactoryRecipes); + public void run() { + // Fake + for (GTRecipeBuilder recipeBuilder : SolarFactoryRawRecipes) { + GTRecipeBuilder tempRecipe = recipeBuilder.copyNoMetadata(); + tempRecipe.fake().addTo(solarFactoryRecipes); + } - GTValues.RA.stdBuilder() - .itemInputs( - CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), - CustomItemList.PicoWafer.get(8), - ItemList.Circuit_Chip_PPIC.get(8), - ItemList.Circuit_Chip_CrystalSoC2.get(8), - GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUHV, 12), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 2), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 4), - GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 4)) - .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)).fluidInputs(new FluidStack(solderIndalloy, 1152)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_UEV) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)).hidden() - .addTo(solarFactoryRecipes); + // Hidden + for (GTRecipeBuilder recipeBuilder : SolarFactoryRawRecipes) { + GTRecipeBuilder tempRecipe = recipeBuilder.copy(); + ItemStack[] tempRecipeInputs = tempRecipe.getItemInputsBasic(); + ArrayList inputs = new ArrayList<>(Arrays.asList(tempRecipeInputs)); + nextRecipe: for (int i = 0; i < tempRecipeInputs.length; i++) { + for (Pair pair : validWafers) { + if (i >= inputs.size()) break nextRecipe; + if (inputs.get(i).isItemEqual(pair.getLeft())) { + inputs.remove(i); + break nextRecipe; + } + } + } + tempRecipe.itemInputs(inputs.toArray()).hidden().addTo(solarFactoryRecipes); } } - } From 3e6bd9aea7da21b222c179f3bc7f89b2129d5d10 Mon Sep 17 00:00:00 2001 From: PureBluez Date: Wed, 1 Jan 2025 19:48:49 -0600 Subject: [PATCH 4/8] Add recursive recipes and majorly nerf non-recursive recipes --- .../recipes/SolarFactoryRecipes.java | 218 ++++++++++++++---- 1 file changed, 167 insertions(+), 51 deletions(-) diff --git a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java index 3dce51678..928688a29 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java @@ -1,11 +1,10 @@ package com.dreammaster.gthandler.recipes; +import static gregtech.api.enums.Mods.AdvancedSolarPanel; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; -import static gregtech.api.enums.Mods.SuperSolarPanels; import static gregtech.api.recipe.RecipeMaps.solarFactoryRecipes; import static gregtech.api.util.GTModHandler.getModItem; import static gregtech.api.util.GTRecipeBuilder.SECONDS; -import static gregtech.api.util.GTRecipeConstants.SOLAR_FACTORY_RECIPE_DATA; import static gregtech.common.tileentities.machines.multi.MTESolarFactory.validWafers; import java.util.ArrayList; @@ -22,8 +21,10 @@ import gregtech.api.enums.GTValues; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.enums.MaterialsKevlar; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; +import gregtech.api.recipe.metadata.SolarFactoryRecipeDataKey; import gregtech.api.util.GTOreDictUnificator; import gregtech.api.util.GTRecipeBuilder; import gregtech.api.util.recipe.SolarFactoryRecipeData; @@ -33,43 +34,47 @@ // If the recipe you are making doesn't use a wafer, just make it without any metadata. public class SolarFactoryRecipes implements Runnable { + SolarFactoryRecipeDataKey data = SolarFactoryRecipeDataKey.INSTANCE; + public GTRecipeBuilder[] SolarFactoryRawRecipes = { + // Recursive recipes GTValues.RA.stdBuilder() .itemInputs( + ItemList.Cover_SolarPanel_8V.get(1), CustomItemList.IrradiantReinforcedAluminiumPlate.get(2), ItemList.Circuit_Silicon_Wafer2.get(4), GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 4), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.HV), 2)) .itemOutputs(ItemList.Cover_SolarPanel_LV.get(1)) - .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(288)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_HV), + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(2 * 144)) + .metadata(data, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS).eut(TierEU.RECIPE_HV), GTValues.RA.stdBuilder() .itemInputs( + ItemList.Cover_SolarPanel_LV.get(1), CustomItemList.IrradiantReinforcedTitaniumPlate.get(2), ItemList.Circuit_Silicon_Wafer2.get(4), ItemList.Circuit_Chip_ULPIC.get(4), GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 4), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.EV), 2)) - .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)).fluidInputs(Materials.Epoxid.getMolten(576)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_EV), + .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)).fluidInputs(Materials.Epoxid.getMolten(4 * 144)) + .metadata(data, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS).eut(TierEU.RECIPE_EV), GTValues.RA.stdBuilder() .itemInputs( + ItemList.Cover_SolarPanel_MV.get(1), CustomItemList.IrradiantReinforcedTungstenPlate.get(4), ItemList.Circuit_Silicon_Wafer2.get(4), ItemList.Circuit_Chip_LPIC.get(4), GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 8), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.IV), 4), GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.IndiumGalliumPhosphide), 8)) - .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)).fluidInputs(Materials.Epoxid.getMolten(1152)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_IV), + .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)).fluidInputs(Materials.Epoxid.getMolten(8 * 144)) + .metadata(data, new SolarFactoryRecipeData(2, 4)).duration(10 * SECONDS).eut(TierEU.RECIPE_IV), GTValues.RA.stdBuilder() .itemInputs( + ItemList.Cover_SolarPanel_HV.get(1), CustomItemList.IrradiantReinforcedTungstenSteelPlate.get(4), ItemList.Circuit_Silicon_Wafer3.get(4), ItemList.Circuit_Chip_PIC.get(4), @@ -77,12 +82,12 @@ public class SolarFactoryRecipes implements Runnable { GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.LuV), 4), GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.SiliconSG), 16)) .itemOutputs(ItemList.Cover_SolarPanel_EV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(576)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 4)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_LuV), + .fluidInputs(Materials.Polybenzimidazole.getMolten(4 * 144)) + .metadata(data, new SolarFactoryRecipeData(3, 4)).duration(10 * SECONDS).eut(TierEU.RECIPE_LuV), GTValues.RA.stdBuilder() .itemInputs( + ItemList.Cover_SolarPanel_EV.get(1), CustomItemList.IrradiantReinforcedChromePlate.get(4), ItemList.Circuit_Silicon_Wafer3.get(8), ItemList.Circuit_Chip_HPIC.get(4), @@ -90,77 +95,188 @@ public class SolarFactoryRecipes implements Runnable { GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 4), GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 4)) .itemOutputs(ItemList.Cover_SolarPanel_IV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(1152)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(3, 8)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_ZPM), + .fluidInputs(Materials.Polybenzimidazole.getMolten(8 * 144)) + .metadata(data, new SolarFactoryRecipeData(3, 8)).duration(10 * SECONDS).eut(TierEU.RECIPE_ZPM), GTValues.RA.stdBuilder() .itemInputs( - CustomItemList.IrradiantReinforcedChromePlate.get(4), + ItemList.Cover_SolarPanel_IV.get(1), + getModItem(AdvancedSolarPanel.ID, "asp_crafting_items", 4, 8), + // ^ Irradiant Reinforced Iridium Plate ItemList.Circuit_Silicon_Wafer4.get(8), ItemList.Circuit_Chip_UHPIC.get(8), GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 24), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 2), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.ZPM), 6), - GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 8), - getModItem(SuperSolarPanels.ID, "solarsplitter", 4, 0)) + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 8), + GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 8)) .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(1728)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(4, 8)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_UV), + .fluidInputs(Materials.Polybenzimidazole.getMolten(12 * 144)) + .metadata(data, new SolarFactoryRecipeData(4, 8)).duration(10 * SECONDS).eut(TierEU.RECIPE_UV), GTValues.RA.stdBuilder() .itemInputs( + ItemList.Cover_SolarPanel_LuV.get(1), CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), ItemList.Circuit_Silicon_Wafer5.get(8), ItemList.Circuit_Wafer_QPIC.get(4), ItemList.Circuit_Chip_NPIC.get(8), GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 32), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 2), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 4)) + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 8)) .itemOutputs(ItemList.Cover_SolarPanel_ZPM.get(1)) - .fluidInputs(Materials.Polybenzimidazole.getMolten(2304)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_UHV), + .fluidInputs(Materials.Polybenzimidazole.getMolten(16 * 144)) + .metadata(data, new SolarFactoryRecipeData(5, 8)).duration(10 * SECONDS).eut(TierEU.RECIPE_UHV), GTValues.RA.stdBuilder() .itemInputs( + ItemList.Cover_SolarPanel_ZPM.get(1), CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), ItemList.Circuit_Silicon_Wafer5.get(8), getModItem(NewHorizonsCoreMod.ID, "item.PicoWafer", 8), ItemList.Circuit_Chip_PPIC.get(8), ItemList.Circuit_Chip_CrystalSoC2.get(8), GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUHV, 12), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 2), - GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 4), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 8), GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 4)) .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)) - .fluidInputs(new FluidStack(FluidRegistry.getFluid("molten.indalloy140"), 1152)) - .metadata(SOLAR_FACTORY_RECIPE_DATA, new SolarFactoryRecipeData(5, 8)).duration(10 * SECONDS) + .fluidInputs(new FluidStack(FluidRegistry.getFluid("molten.indalloy140"), 8 * 144)) + .metadata(data, new SolarFactoryRecipeData(5, 8)).duration(10 * SECONDS).eut(TierEU.RECIPE_UEV), + + // Non-recursive / skipping recipes + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNeutroniumPlate.get(2), + ItemList.Circuit_Silicon_Wafer5.get(2), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 4), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 8)) + .itemOutputs(ItemList.Cover_SolarPanel_LV.get(1)) + .fluidInputs(Materials.VibrantAlloy.getMolten(4 * 144)) + .metadata(data, new SolarFactoryRecipeData(2, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_HV), + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNeutroniumPlate.get(4), + ItemList.Circuit_Silicon_Wafer5.get(4), + ItemList.Circuit_Wafer_QPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 8), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 8)) + .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)) + .fluidInputs(Materials.Barium.getMolten(16 * 144), Materials.MeteoricSteel.getMolten(4 * 144)) + .metadata(data, new SolarFactoryRecipeData(2, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_EV), + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNeutroniumPlate.get(6), + ItemList.Circuit_Silicon_Wafer5.get(6), + ItemList.Circuit_Wafer_QPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 12), + GTOreDictUnificator.get(OrePrefixes.plate.get(Materials.Tritanium), 8), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 16)) + .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)) + .fluidInputs(Materials.Uranium.getMolten(4 * 144), Materials.Sunnarium.getMolten(8 * 144)) + .metadata(data, new SolarFactoryRecipeData(2, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_IV), + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedNeutroniumPlate.get(8), + ItemList.Circuit_Silicon_Wafer5.get(8), + ItemList.Circuit_Wafer_QPIC.get(4), + ItemList.Circuit_Chip_NPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt08, Materials.SuperconductorUV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 16), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 16)) + .itemOutputs(ItemList.Cover_SolarPanel_EV.get(1)) + .fluidInputs( + Materials.Plutonium.getMolten(2 * 144), + Materials.Knightmetal.getMolten(4 * 144), + Materials.Ultimet.getMolten(8 * 144)) + .metadata(data, new SolarFactoryRecipeData(3, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_LuV), + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedBedrockiumPlate.get(2), + ItemList.Circuit_Silicon_Wafer5.get(10), + ItemList.Circuit_Wafer_QPIC.get(4), + ItemList.Circuit_Chip_UHPIC.get(4), + GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUHV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 4), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 32)) + .itemOutputs(ItemList.Cover_SolarPanel_IV.get(1)) + .fluidInputs( + Materials.Chrome.getMolten(8 * 144), + Materials.NaquadahAlloy.getMolten(4 * 144), + Materials.FierySteel.getMolten(2 * 144)) + .metadata(data, new SolarFactoryRecipeData(3, 8, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_ZPM), + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedBedrockiumPlate.get(4), + ItemList.Circuit_Silicon_Wafer5.get(12), + ItemList.Circuit_Chip_UHPIC.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUHV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 8), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.Steeleaf), 1), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 32)) + .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) + .fluidInputs( + new FluidStack(FluidRegistry.getFluid("molten.indalloy140"), 8 * 144), + Materials.FierySteel.getMolten(4 * 144), + Materials.Knightmetal.getMolten(4 * 144)) + .metadata(data, new SolarFactoryRecipeData(4, 8, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_UV), + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedBedrockiumPlate.get(6), + ItemList.Circuit_Silicon_Wafer5.get(14), + ItemList.Circuit_Wafer_QPIC.get(4), + ItemList.Circuit_Chip_NPIC.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUHV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 12), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 64)) + .itemOutputs(ItemList.Cover_SolarPanel_ZPM.get(1)) + .fluidInputs(Materials.Infinity.getMolten(2 * 144), MaterialsKevlar.Kevlar.getMolten(4 * 144)) + .metadata(data, new SolarFactoryRecipeData(5, 8, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_UHV), + + GTValues.RA.stdBuilder() + .itemInputs( + CustomItemList.IrradiantReinforcedBedrockiumPlate.get(8), + ItemList.Circuit_Silicon_Wafer5.get(16), + getModItem(NewHorizonsCoreMod.ID, "item.PicoWafer", 8), + ItemList.Circuit_Chip_PPIC.get(8), + ItemList.Circuit_Chip_CrystalSoC2.get(8), + GTOreDictUnificator.get(OrePrefixes.wireGt08, Materials.SuperconductorUHV, 16), + GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 16), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 64)) + .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)) + .fluidInputs(Materials.Infinity.getMolten(4 * 144), MaterialsKevlar.Kevlar.getMolten(8 * 144)) + .metadata(data, new SolarFactoryRecipeData(5, 8, 3)).duration(10 * SECONDS) .eut(TierEU.RECIPE_UEV) }; public void run() { - // Fake - for (GTRecipeBuilder recipeBuilder : SolarFactoryRawRecipes) { - GTRecipeBuilder tempRecipe = recipeBuilder.copyNoMetadata(); - tempRecipe.fake().addTo(solarFactoryRecipes); - } + if (AdvancedSolarPanel.isModLoaded()) { + // Fake + for (GTRecipeBuilder recipeBuilder : SolarFactoryRawRecipes) { + GTRecipeBuilder tempRecipe = recipeBuilder.copy(); + tempRecipe.fake().addTo(solarFactoryRecipes); + } - // Hidden - for (GTRecipeBuilder recipeBuilder : SolarFactoryRawRecipes) { - GTRecipeBuilder tempRecipe = recipeBuilder.copy(); - ItemStack[] tempRecipeInputs = tempRecipe.getItemInputsBasic(); - ArrayList inputs = new ArrayList<>(Arrays.asList(tempRecipeInputs)); - nextRecipe: for (int i = 0; i < tempRecipeInputs.length; i++) { - for (Pair pair : validWafers) { - if (i >= inputs.size()) break nextRecipe; - if (inputs.get(i).isItemEqual(pair.getLeft())) { - inputs.remove(i); - break nextRecipe; + // Hidden + for (GTRecipeBuilder recipeBuilder : SolarFactoryRawRecipes) { + GTRecipeBuilder tempRecipe = recipeBuilder.copy(); + ItemStack[] tempRecipeInputs = tempRecipe.getItemInputsBasic(); + ArrayList inputs = new ArrayList<>(Arrays.asList(tempRecipeInputs)); + nextRecipe: for (int i = 1; i < tempRecipeInputs.length; i++) { + for (Pair pair : validWafers) { + if (i > inputs.size()) break nextRecipe; + if (inputs.get(i).isItemEqual(pair.getLeft())) { + inputs.remove(i); + break nextRecipe; + } } } + tempRecipe.itemInputs(inputs.toArray()).hidden().addTo(solarFactoryRecipes); } - tempRecipe.itemInputs(inputs.toArray()).hidden().addTo(solarFactoryRecipes); } } } From aefc2d316a6fe5b678a17394e1d1dee9d61e41cf Mon Sep 17 00:00:00 2001 From: PureBluez Date: Wed, 22 Jan 2025 20:40:33 -0600 Subject: [PATCH 5/8] switch controller recipe to be more around HV --- .../dreammaster/gthandler/GT_CraftingRecipeLoader.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java b/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java index 89f4a8fb0..323fbfcf9 100644 --- a/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java +++ b/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java @@ -796,6 +796,14 @@ public void run() { new Object[] { "TCT", "PMP", "TCT", 'M', ItemList.Machine_HV_Brewery, 'P', ItemList.Electric_Pump_HV, 'T', OrePrefixes.plate.get(Materials.WoodSealed), 'C', OrePrefixes.circuit.get(Materials.EV) }); + // Solar Factory + GTModHandler.addCraftingRecipe( + ItemList.SolarFactory.get(1), + bits, + new Object[] { "TTT", "PMP", "CTC", 'M', ItemList.Machine_HV_Assembler, 'P', + ItemList.Cover_SolarPanel_8V, 'T', OrePrefixes.plate.get(Materials.StainlessSteel), 'C', + OrePrefixes.circuit.get(Materials.EV) }); + // Reinforced Wooden Casing GTModHandler.addCraftingRecipe( ItemList.Casing_Reinforced_Wood.get(1), From df69ebcf9bb40131366cd53eff148658c2e77d68 Mon Sep 17 00:00:00 2001 From: PureBluez Date: Thu, 23 Jan 2025 07:34:16 -0600 Subject: [PATCH 6/8] oops --- .../dreammaster/gthandler/recipes/SolarFactoryRecipes.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java index 928688a29..12690fb70 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java @@ -1,7 +1,6 @@ package com.dreammaster.gthandler.recipes; import static gregtech.api.enums.Mods.AdvancedSolarPanel; -import static gregtech.api.enums.Mods.NewHorizonsCoreMod; import static gregtech.api.recipe.RecipeMaps.solarFactoryRecipes; import static gregtech.api.util.GTModHandler.getModItem; import static gregtech.api.util.GTRecipeBuilder.SECONDS; @@ -130,7 +129,7 @@ public class SolarFactoryRecipes implements Runnable { ItemList.Cover_SolarPanel_ZPM.get(1), CustomItemList.IrradiantReinforcedNaquadriaPlate.get(8), ItemList.Circuit_Silicon_Wafer5.get(8), - getModItem(NewHorizonsCoreMod.ID, "item.PicoWafer", 8), + CustomItemList.PicoWafer.get(8), ItemList.Circuit_Chip_PPIC.get(8), ItemList.Circuit_Chip_CrystalSoC2.get(8), GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUHV, 12), @@ -242,7 +241,7 @@ public class SolarFactoryRecipes implements Runnable { .itemInputs( CustomItemList.IrradiantReinforcedBedrockiumPlate.get(8), ItemList.Circuit_Silicon_Wafer5.get(16), - getModItem(NewHorizonsCoreMod.ID, "item.PicoWafer", 8), + CustomItemList.PicoWafer.get(8), ItemList.Circuit_Chip_PPIC.get(8), ItemList.Circuit_Chip_CrystalSoC2.get(8), GTOreDictUnificator.get(OrePrefixes.wireGt08, Materials.SuperconductorUHV, 16), From f79639192c683b57fa015578140ab03110e5cfb2 Mon Sep 17 00:00:00 2001 From: PureBluez Date: Fri, 24 Jan 2025 16:05:50 -0600 Subject: [PATCH 7/8] change nrc UV solar recipe --- .../gthandler/recipes/SolarFactoryRecipes.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java index 12690fb70..dbd009dbd 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java @@ -246,9 +246,13 @@ public class SolarFactoryRecipes implements Runnable { ItemList.Circuit_Chip_CrystalSoC2.get(8), GTOreDictUnificator.get(OrePrefixes.wireGt08, Materials.SuperconductorUHV, 16), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 16), - GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 64)) + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 64), + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.Steeleaf), 2)) .itemOutputs(ItemList.Cover_SolarPanel_UV.get(1)) - .fluidInputs(Materials.Infinity.getMolten(4 * 144), MaterialsKevlar.Kevlar.getMolten(8 * 144)) + .fluidInputs( + Materials.Infinity.getMolten(4 * 144), + MaterialsKevlar.Kevlar.getMolten(8 * 144), + Materials.Knightmetal.getMolten(2 * 144)) .metadata(data, new SolarFactoryRecipeData(5, 8, 3)).duration(10 * SECONDS) .eut(TierEU.RECIPE_UEV) }; From 82118c81b80021b950fa24fa60d69ac5924ca7ba Mon Sep 17 00:00:00 2001 From: PureBluez Date: Sat, 25 Jan 2025 12:49:47 -0600 Subject: [PATCH 8/8] do the things dream said --- .../recipes/SolarFactoryRecipes.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java index dbd009dbd..93f332436 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/SolarFactoryRecipes.java @@ -1,6 +1,7 @@ package com.dreammaster.gthandler.recipes; import static gregtech.api.enums.Mods.AdvancedSolarPanel; +import static gregtech.api.enums.Mods.SuperSolarPanels; import static gregtech.api.recipe.RecipeMaps.solarFactoryRecipes; import static gregtech.api.util.GTModHandler.getModItem; import static gregtech.api.util.GTRecipeBuilder.SECONDS; @@ -106,6 +107,7 @@ public class SolarFactoryRecipes implements Runnable { ItemList.Circuit_Chip_UHPIC.get(8), GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 24), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UV), 8), + getModItem(SuperSolarPanels.ID, "solarsplitter", 2), GTOreDictUnificator.get(OrePrefixes.block.get(Materials.SiliconSG), 8)) .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) .fluidInputs(Materials.Polybenzimidazole.getMolten(12 * 144)) @@ -118,6 +120,7 @@ public class SolarFactoryRecipes implements Runnable { ItemList.Circuit_Silicon_Wafer5.get(8), ItemList.Circuit_Wafer_QPIC.get(4), ItemList.Circuit_Chip_NPIC.get(8), + ItemList.Circuit_Wafer_SoC2.get(2), GTOreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 32), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UHV), 8)) .itemOutputs(ItemList.Cover_SolarPanel_ZPM.get(1)) @@ -149,7 +152,7 @@ public class SolarFactoryRecipes implements Runnable { GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 8)) .itemOutputs(ItemList.Cover_SolarPanel_LV.get(1)) .fluidInputs(Materials.VibrantAlloy.getMolten(4 * 144)) - .metadata(data, new SolarFactoryRecipeData(2, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_HV), + .metadata(data, new SolarFactoryRecipeData(2, 4, 2)).duration(10 * SECONDS).eut(TierEU.RECIPE_HV), GTValues.RA.stdBuilder() .itemInputs( @@ -161,7 +164,7 @@ public class SolarFactoryRecipes implements Runnable { GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 8)) .itemOutputs(ItemList.Cover_SolarPanel_MV.get(1)) .fluidInputs(Materials.Barium.getMolten(16 * 144), Materials.MeteoricSteel.getMolten(4 * 144)) - .metadata(data, new SolarFactoryRecipeData(2, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_EV), + .metadata(data, new SolarFactoryRecipeData(2, 4, 2)).duration(10 * SECONDS).eut(TierEU.RECIPE_EV), GTValues.RA.stdBuilder() .itemInputs( @@ -174,7 +177,7 @@ public class SolarFactoryRecipes implements Runnable { GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 16)) .itemOutputs(ItemList.Cover_SolarPanel_HV.get(1)) .fluidInputs(Materials.Uranium.getMolten(4 * 144), Materials.Sunnarium.getMolten(8 * 144)) - .metadata(data, new SolarFactoryRecipeData(2, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_IV), + .metadata(data, new SolarFactoryRecipeData(2, 4, 2)).duration(10 * SECONDS).eut(TierEU.RECIPE_IV), GTValues.RA.stdBuilder() .itemInputs( @@ -190,7 +193,7 @@ public class SolarFactoryRecipes implements Runnable { Materials.Plutonium.getMolten(2 * 144), Materials.Knightmetal.getMolten(4 * 144), Materials.Ultimet.getMolten(8 * 144)) - .metadata(data, new SolarFactoryRecipeData(3, 4, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_LuV), + .metadata(data, new SolarFactoryRecipeData(3, 4, 2)).duration(10 * SECONDS).eut(TierEU.RECIPE_LuV), GTValues.RA.stdBuilder() .itemInputs( @@ -206,7 +209,7 @@ public class SolarFactoryRecipes implements Runnable { Materials.Chrome.getMolten(8 * 144), Materials.NaquadahAlloy.getMolten(4 * 144), Materials.FierySteel.getMolten(2 * 144)) - .metadata(data, new SolarFactoryRecipeData(3, 8, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_ZPM), + .metadata(data, new SolarFactoryRecipeData(3, 8, 2)).duration(10 * SECONDS).eut(TierEU.RECIPE_ZPM), GTValues.RA.stdBuilder() .itemInputs( @@ -216,13 +219,14 @@ public class SolarFactoryRecipes implements Runnable { GTOreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUHV, 16), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 8), GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.Steeleaf), 1), - GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 32)) + GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 32), + getModItem(SuperSolarPanels.ID, "solarsplitter", 8)) .itemOutputs(ItemList.Cover_SolarPanel_LuV.get(1)) .fluidInputs( new FluidStack(FluidRegistry.getFluid("molten.indalloy140"), 8 * 144), Materials.FierySteel.getMolten(4 * 144), Materials.Knightmetal.getMolten(4 * 144)) - .metadata(data, new SolarFactoryRecipeData(4, 8, 3)).duration(10 * SECONDS).eut(TierEU.RECIPE_UV), + .metadata(data, new SolarFactoryRecipeData(4, 8, 2)).duration(10 * SECONDS).eut(TierEU.RECIPE_UV), GTValues.RA.stdBuilder() .itemInputs( @@ -230,6 +234,7 @@ public class SolarFactoryRecipes implements Runnable { ItemList.Circuit_Silicon_Wafer5.get(14), ItemList.Circuit_Wafer_QPIC.get(4), ItemList.Circuit_Chip_NPIC.get(8), + ItemList.Circuit_Wafer_SoC2.get(16), GTOreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUHV, 16), GTOreDictUnificator.get(OrePrefixes.circuit.get(Materials.UEV), 12), GTOreDictUnificator.get(OrePrefixes.plateSuperdense.get(Materials.SiliconSG), 64)) @@ -257,7 +262,7 @@ public class SolarFactoryRecipes implements Runnable { .eut(TierEU.RECIPE_UEV) }; public void run() { - if (AdvancedSolarPanel.isModLoaded()) { + if (AdvancedSolarPanel.isModLoaded() && SuperSolarPanels.isModLoaded()) { // Fake for (GTRecipeBuilder recipeBuilder : SolarFactoryRawRecipes) { GTRecipeBuilder tempRecipe = recipeBuilder.copy();