diff options
Diffstat (limited to 'src/main/java/common/recipeLoaders')
-rw-r--r-- | src/main/java/common/recipeLoaders/AlloySmelter.java | 32 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/Assembler.java | 246 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/AssemblyLine.java | 205 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/ChemicalReactor.java | 28 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/Crafting.java | 75 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/FormingPress.java | 28 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/Mixer.java | 44 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java | 136 | ||||
-rw-r--r-- | src/main/java/common/recipeLoaders/Unpackager.java | 146 |
9 files changed, 940 insertions, 0 deletions
diff --git a/src/main/java/common/recipeLoaders/AlloySmelter.java b/src/main/java/common/recipeLoaders/AlloySmelter.java new file mode 100644 index 0000000000..86af24d4a4 --- /dev/null +++ b/src/main/java/common/recipeLoaders/AlloySmelter.java @@ -0,0 +1,32 @@ +package common.recipeLoaders; + +import static gregtech.api.enums.Mods.BartWorks; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + +import kekztech.Items; + +import common.items.MetaItem_CraftingComponent; + +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.TierEU; + +public class AlloySmelter implements Runnable { + + @Override + public void run() { + if (BartWorks.isModLoaded()) { + final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); + + // YSZ Cermic Plate + GT_Values.RA.stdBuilder() + .itemInputs( + craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 3), + ItemList.Shape_Mold_Plate.get(0)) + .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 1)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sAlloySmelterRecipes); + } + } +} diff --git a/src/main/java/common/recipeLoaders/Assembler.java b/src/main/java/common/recipeLoaders/Assembler.java new file mode 100644 index 0000000000..01001038bd --- /dev/null +++ b/src/main/java/common/recipeLoaders/Assembler.java @@ -0,0 +1,246 @@ +package common.recipeLoaders; + +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + +import kekztech.Items; + +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidRegistry; + +import common.Blocks; +import common.TileEntities; +import common.items.ErrorItem; +import common.items.MetaItem_CraftingComponent; + +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; + +public class Assembler implements Runnable { + + @Override + public void run() { + // TFFT Casing + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.DarkSteel, 3), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderPearl, 3)) + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1)) + .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(144)).noFluidOutputs().duration(5 * SECONDS) + .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // TFFT Multi Hatch + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Hull_HV.get(1), + ItemList.Cover_FluidStorageMonitor.get(1), + ItemList.Field_Generator_LV.get(4), + GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Polytetrafluoroethylene, 25)) + .itemOutputs(TileEntities.tfftHatch.getStackForm(1)).fluidInputs(Materials.Plastic.getMolten(432)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // TFFTStorageField1 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CrudeSteel, 1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrudeSteel, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Steel, 3), + ItemList.FluidRegulator_LV.get(1)) + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 1)).fluidInputs(Materials.Glass.getMolten(144)) + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // TFFTStorageField2 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + ItemList.Casing_Tank_1.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnergeticSilver, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Plastic, 3), + ItemList.FluidRegulator_MV.get(1)) + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 2)).fluidInputs(Materials.Plastic.getMolten(288)) + .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // TFFTStorageField3 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + ItemList.Casing_Tank_3.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VividAlloy, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.StainlessSteel, 3), + ItemList.Field_Generator_LV.get(1), + ItemList.FluidRegulator_HV.get(1)) + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 3)).fluidInputs(Materials.Plastic.getMolten(432)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // TFFTStorageField4 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + ItemList.Casing_Tank_5.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Enderium, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Polytetrafluoroethylene, 3), + ItemList.Field_Generator_MV.get(2), + ItemList.FluidRegulator_EV.get(1)) + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 4)).fluidInputs(Materials.Epoxid.getMolten(864)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + // TFFTStorageField5 + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + ItemList.Casing_Tank_7.get(1), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Enderium, 3), + ItemList.Field_Generator_HV.get(4), + ItemList.FluidRegulator_IV.get(1)) + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 5)).fluidInputs(Materials.Epoxid.getMolten(1152)) + .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + // LSC Casing + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tantalum, 4), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 2), + GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 2), + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lapis, 1)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0)).noFluidInputs().noFluidOutputs() + .duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // EV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), + GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W), + GT_Utility.getIntegratedCircuit(7)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7)).noFluidInputs().noFluidOutputs() + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // IV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), + ItemList.Energy_LapotronicOrb.get(1L), + GT_Utility.getIntegratedCircuit(1)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1)).noFluidInputs().noFluidOutputs() + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + // LuV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Energy_LapotronicOrb2.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2)).noFluidInputs().noFluidOutputs() + .duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + // ZPM Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Energy_Module.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3)).noFluidInputs().noFluidOutputs() + .duration(1 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes); + // UV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.Energy_Cluster.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4)).noFluidInputs().noFluidOutputs() + .duration(2 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + // UHV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.ZPM3.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5)).noFluidInputs().noFluidOutputs() + .duration(5 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + // UEV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.ZPM4.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8)).noFluidInputs().noFluidOutputs() + .duration(10 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + // UIV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.ZPM5.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TranscendentMetal, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9)).noFluidInputs().noFluidOutputs() + .duration(10 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UEV).addTo(sAssemblerRecipes); + // UMV Capacitor alt recipe + + GT_Values.RA.stdBuilder() + .itemInputs( + ItemList.ZPM6.get(1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.SpaceTime, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10)).noFluidInputs().noFluidOutputs() + .duration(10 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UIV).addTo(sAssemblerRecipes); + + final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); + + // YSZ Unit + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 4), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Yttrium, 1), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), + ItemList.Electric_Motor_HV.get(1L)) + .itemOutputs(new ItemStack(Blocks.yszUnit, 1)).fluidInputs(Materials.Hydrogen.getGas(4000)) + .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + // GDC Unit + + GT_Values.RA.stdBuilder().itemInputs( + GT_Utility.getIntegratedCircuit(6), + craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 8), + GT_OreDictUnificator + .get(OrePrefixes.frameGt, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1), + GT_OreDictUnificator + .get(OrePrefixes.rotor, Materials.Desh, new ItemStack(ErrorItem.getInstance(), 1), 1), + ItemList.Electric_Motor_IV.get(1L)).itemOutputs(new ItemStack(Blocks.gdcUnit, 1)) + .fluidInputs(Materials.Hydrogen.getGas(16000)).noFluidOutputs().duration(2 * MINUTES) + .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + // Hex Tiles + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.getIntegratedCircuit(6), + GT_OreDictUnificator.get(OrePrefixes.stone, Materials.Concrete, 1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.DarkSteel, 2)) + .itemOutputs(new ItemStack(Blocks.largeHexPlate, 2)) + .fluidInputs(FluidRegistry.getFluidStack("molten.plastic", 36)).noFluidOutputs().duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + + } +} diff --git a/src/main/java/common/recipeLoaders/AssemblyLine.java b/src/main/java/common/recipeLoaders/AssemblyLine.java new file mode 100644 index 0000000000..6c56d2ccb4 --- /dev/null +++ b/src/main/java/common/recipeLoaders/AssemblyLine.java @@ -0,0 +1,205 @@ +package common.recipeLoaders; + +import static gregtech.api.enums.Mods.Avaritia; +import static gregtech.api.enums.Mods.EnderIO; +import static gregtech.api.enums.Mods.EternalSingularity; +import static gregtech.api.enums.Mods.GTPlusPlus; +import static gregtech.api.enums.Mods.GoodGenerator; +import static gregtech.api.enums.Mods.NewHorizonsCoreMod; +import static gregtech.api.enums.Mods.UniversalSingularities; +import static gregtech.api.util.GT_RecipeBuilder.HOURS; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeConstants.AssemblyLine; +import static gregtech.api.util.GT_RecipeConstants.RESEARCH_ITEM; +import static gregtech.api.util.GT_RecipeConstants.RESEARCH_TIME; + +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fluids.FluidStack; + +import common.Blocks; + +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 AssemblyLine implements Runnable { + + @Override + public void run() { + final Fluid radoxPoly = FluidRegistry.getFluid("molten.radoxpoly") != null + ? FluidRegistry.getFluid("molten.radoxpoly") + : FluidRegistry.getFluid("molten.polybenzimidazole"); + + final Fluid solderIndalloy = FluidRegistry.getFluid("molten.indalloy140") != null + ? FluidRegistry.getFluid("molten.indalloy140") + : FluidRegistry.getFluid("molten.solderingalloy"); + + // TFFTStorageField6 + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 5)) + .metadata(RESEARCH_TIME, 1 * HOURS + 6 * MINUTES + 40 * SECONDS) + .itemInputs( + ItemList.Casing_Tank_7.get(4), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.CrystallinePinkSlime, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Naquadah, 3), + GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.ChromeBars", 6), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Quantium, 6), + ItemList.Field_Generator_EV.get(8), + ItemList.FluidRegulator_LuV.get(1), + GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.EngineeringProcessorFluidEmeraldCore", 4)) + .fluidInputs(Materials.Enderium.getMolten(1440), Materials.Polybenzimidazole.getMolten(1584)) + .noFluidOutputs().itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 6)).eut(TierEU.RECIPE_LuV) + .duration(30 * SECONDS).addTo(AssemblyLine); + + // TFFTStorageField7 + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 6)) + .metadata(RESEARCH_TIME, 1 * HOURS + 6 * MINUTES + 40 * SECONDS) + .itemInputs( + ItemList.Casing_Tank_10.get(16), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.MelodicAlloy, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.NetherStar, 3), + GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.OsmiumBars", 6), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.MysteriousCrystal, 6), + ItemList.Field_Generator_IV.get(16), + ItemList.Field_Generator_LuV.get(4), + ItemList.FluidRegulator_UV.get(1), + GT_ModHandler + .getModItem(NewHorizonsCoreMod.ID, "item.EngineeringProcessorFluidEmeraldCore", 16)) + .fluidInputs(Materials.CrystallineAlloy.getMolten(2880), Materials.Polybenzimidazole.getMolten(2016)) + .noFluidOutputs().itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 7)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_UV).addTo(AssemblyLine); + + // TFFTStorageField8 + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 7)) + .metadata(RESEARCH_TIME, 2 * HOURS + 40 * MINUTES) + .itemInputs( + ItemList.Quantum_Tank_IV.get(1), + GT_ModHandler.getModItem(Avaritia.ID, "Neutronium_Compressor", 1), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 6), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.DraconiumAwakened, 3), + GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.NeutroniumBars", 6), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.InfinityCatalyst, 6), + ItemList.Field_Generator_ZPM.get(16), + ItemList.Field_Generator_UV.get(4), + GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 2), + GT_ModHandler + .getModItem(UniversalSingularities.ID, "universal.tinkersConstruct.singularity", 1, 4)) + .fluidInputs(Materials.CrystallinePinkSlime.getMolten(4320), new FluidStack(radoxPoly, 2880)) + .noFluidOutputs().itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 8)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_UEV).addTo(AssemblyLine); + + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 8)) + .metadata(RESEARCH_TIME, 2 * HOURS + 13 * MINUTES + 20 * SECONDS) + .itemInputs( + ItemList.Quantum_Tank_IV.get(4), + GT_ModHandler.getModItem(Avaritia.ID, "Neutronium_Compressor", 2), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 6), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Infinity, 3), + ItemList.EnergisedTesseract.get(1), + GT_ModHandler.getModItem(GTPlusPlus.ID, "itemRotorHypogen", 6), + ItemList.Field_Generator_UHV.get(16), + ItemList.Field_Generator_UEV.get(4), + GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 3), + GT_ModHandler + .getModItem(UniversalSingularities.ID, "universal.tinkersConstruct.singularity", 1, 4)) + .fluidInputs(Materials.MelodicAlloy.getMolten(5760), new FluidStack(radoxPoly, 3456)).noFluidOutputs() + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 9)).duration(30 * SECONDS).eut(TierEU.RECIPE_UMV) + .addTo(AssemblyLine); + + // TFFTStorageField10 + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 9)) + .metadata(RESEARCH_TIME, 2 * HOURS + 46 * MINUTES + 40 * SECONDS) + .itemInputs( + ItemList.Quantum_Tank_IV.get(16), + GT_ModHandler.getModItem(Avaritia.ID, "Neutronium_Compressor", 4), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 6), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 6), + GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.SpaceTime, 3), + ItemList.EnergisedTesseract.get(6), + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.SpaceTime, 6), + ItemList.Field_Generator_UEV.get(16), + ItemList.Field_Generator_UIV.get(4), + GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 4), + GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 4), + GT_ModHandler.getModItem(EnderIO.ID, "itemBasicCapacitor", 64, 6), + GT_ModHandler.getModItem(EternalSingularity.ID, "eternal_singularity", 1)) + .fluidInputs(Materials.StellarAlloy.getMolten(7200), new FluidStack(radoxPoly, 4608)).noFluidOutputs() + .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 10)).duration(30 * SECONDS) + .eut(TierEU.RECIPE_UXV).addTo(AssemblyLine); + + // LuV Capacitor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24), + ItemList.Circuit_Board_Elite.get(1), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.NaquadahAlloy, 64), + new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 }, + ItemList.Circuit_Parts_Crystal_Chip_Master.get(36), + ItemList.Circuit_Parts_Crystal_Chip_Master.get(36), + ItemList.Circuit_Chip_HPIC.get(64), + ItemList.Circuit_Parts_DiodeASMD.get(8), + ItemList.Circuit_Parts_CapacitorASMD.get(8), + ItemList.Circuit_Parts_ResistorASMD.get(8), + ItemList.Circuit_Parts_TransistorASMD.get(8), + GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 64)) + .fluidInputs(new FluidStack(solderIndalloy, 720)).noFluidOutputs() + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2)).duration(50 * SECONDS).eut(80_000) + .addTo(AssemblyLine); + + // ZPM Capacitor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Europium, 16L), + 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.Circuit_Parts_DiodeASMD.get(8), + GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 32)) + .fluidInputs( + new FluidStack(solderIndalloy, 2880), + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000)) + .noFluidOutputs().itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3)) + .duration(1 * MINUTES + 40 * SECONDS).eut(100_000).addTo(AssemblyLine); + + // UV Capacitor + GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3)) + .metadata(RESEARCH_TIME, 4 * HOURS) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Americium, 32L), + 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(8L), + 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)) + .fluidInputs( + new FluidStack(solderIndalloy, 2880), + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000)) + .noFluidOutputs().itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4)).eut(200_000) + .duration(1 * MINUTES + 40 * SECONDS).addTo(AssemblyLine); + } +} diff --git a/src/main/java/common/recipeLoaders/ChemicalReactor.java b/src/main/java/common/recipeLoaders/ChemicalReactor.java new file mode 100644 index 0000000000..8d8a4a61b7 --- /dev/null +++ b/src/main/java/common/recipeLoaders/ChemicalReactor.java @@ -0,0 +1,28 @@ +package common.recipeLoaders; + +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; + +import kekztech.Items; + +import common.items.MetaItem_CraftingComponent; + +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; +import gregtech.api.util.GT_Utility; + +public class ChemicalReactor implements Runnable { + + @Override + public void run() { + final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); + + // Ceria Dust + GT_Values.RA.stdBuilder().itemInputs(Materials.Cerium.getDust(2), GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 2)) + .fluidInputs(Materials.Oxygen.getGas(3000)).noFluidOutputs().duration(20 * SECONDS) + .eut(TierEU.RECIPE_LV).addTo(UniversalChemical); + + } +} diff --git a/src/main/java/common/recipeLoaders/Crafting.java b/src/main/java/common/recipeLoaders/Crafting.java new file mode 100644 index 0000000000..b481605204 --- /dev/null +++ b/src/main/java/common/recipeLoaders/Crafting.java @@ -0,0 +1,75 @@ +package common.recipeLoaders; + +import net.minecraft.item.ItemStack; + +import util.Util; + +import common.Blocks; +import common.TileEntities; + +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; + +public class Crafting implements Runnable { + + @Override + public void run() { + // TFFT Controller + GT_ModHandler.addCraftingRecipe( + TileEntities.tfft.getStackForm(1), + new Object[] { "ESE", "FTF", "CVC", 'E', + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.EnderEye, 1), 'S', + ItemList.Cover_Screen.get(1), 'F', ItemList.Field_Generator_LV.get(1), 'T', + new ItemStack(Blocks.tfftStorageField, 1), 'C', "circuitData", 'V', + GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.VibrantAlloy, 1), }); + + // SOFC Controller mk1 + final Object[] mk1_recipe = { "CCC", "PHP", "FBL", 'C', OrePrefixes.circuit.get(Materials.Advanced), 'P', + ItemList.Electric_Pump_HV.get(1L), 'H', ItemList.Hull_HV.get(1L), 'F', + GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.StainlessSteel, 1), 'B', + GT_OreDictUnificator.get(OrePrefixes.cableGt02, Materials.Gold, 1), 'L', + GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 1) }; + GT_ModHandler.addCraftingRecipe(TileEntities.sofc1.getStackForm(1), mk1_recipe); + + // SOFC Controller mk2 + final Object[] mk2_recipe = { "CCC", "PHP", "FBL", 'C', OrePrefixes.circuit.get(Materials.Master), 'P', + ItemList.Electric_Pump_IV.get(1L), 'H', ItemList.Hull_IV.get(1L), 'F', + GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Ultimate, 1), 'B', + Util.getStackofAmountFromOreDict("wireGt04SuperconductorEV", 1), 'L', + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Ultimate, 1) }; + GT_ModHandler.addCraftingRecipe(TileEntities.sofc2.getStackForm(1), mk2_recipe); + + // LSC Controller + final Object[] lsc_recipe = { "LPL", "CBC", "LPL", 'L', ItemList.IC2_LapotronCrystal.getWildcard(1L), 'P', + ItemList.Circuit_Chip_PIC.get(1L), 'C', OrePrefixes.circuit.get(Materials.Master), 'B', + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), }; + GT_ModHandler.addCraftingRecipe(TileEntities.lsc.getStackForm(1), lsc_recipe); + + // LSC casing + final Object[] lcBase_recipe = { "WBW", "RLR", "WBW", 'W', OrePrefixes.plate.get(Materials.Tantalum), 'B', + OrePrefixes.frameGt.get(Materials.TungstenSteel), 'R', + OrePrefixes.stickLong.get(Materials.TungstenSteel), 'L', OrePrefixes.block.get(Materials.Lapis) }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), lcBase_recipe); + + // Empty Capacitor + final Object[] lcEmpty_recipe = { "SLS", "L L", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L', + OrePrefixes.plate.get(Materials.Lapis) }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), lcEmpty_recipe); + + // EV Capacitor + final Object[] lcEV_recipe = { "SLS", "LCL", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L', + OrePrefixes.plate.get(Materials.Lapis), 'C', + GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W) }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), lcEV_recipe); + + // IV Capacitor + final Object[] lcIV_recipe = { "SLS", "LOL", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L', + OrePrefixes.plate.get(Materials.Lapis), 'O', ItemList.Energy_LapotronicOrb.get(1L) }; + GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), lcIV_recipe); + + } +} diff --git a/src/main/java/common/recipeLoaders/FormingPress.java b/src/main/java/common/recipeLoaders/FormingPress.java new file mode 100644 index 0000000000..b53a68da27 --- /dev/null +++ b/src/main/java/common/recipeLoaders/FormingPress.java @@ -0,0 +1,28 @@ +package common.recipeLoaders; + +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + +import kekztech.Items; + +import common.items.MetaItem_CraftingComponent; + +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.TierEU; + +public class FormingPress implements Runnable { + + @Override + public void run() { + final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); + + // YSZ Ceramic Plate + GT_Values.RA.stdBuilder() + .itemInputs( + craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10), + ItemList.Shape_Mold_Plate.get(0)) + .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 1)) + .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sPressRecipes); + } +} diff --git a/src/main/java/common/recipeLoaders/Mixer.java b/src/main/java/common/recipeLoaders/Mixer.java new file mode 100644 index 0000000000..a3a9d6d3e6 --- /dev/null +++ b/src/main/java/common/recipeLoaders/Mixer.java @@ -0,0 +1,44 @@ +package common.recipeLoaders; + +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + +import kekztech.Items; + +import net.minecraft.item.ItemStack; + +import common.items.ErrorItem; +import common.items.MetaItem_CraftingComponent; + +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; + +public class Mixer implements Runnable { + + @Override + public void run() { + final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance(); + + // YSZ Ceramic Dust + GT_Values.RA.stdBuilder() + .itemInputs( + Items.YttriaDust.getOreDictedItemStack(1), + Items.ZirconiaDust.getOreDictedItemStack(5), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 6)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(96).addTo(sMixerRecipes); + + // GDC Ceramic Dust + GT_Values.RA.stdBuilder().itemInputs( + GT_OreDictUnificator + .get(OrePrefixes.dust, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1), + craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 9), + GT_Utility.getIntegratedCircuit(6)) + .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10)) + .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMixerRecipes); + } +} diff --git a/src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java b/src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java new file mode 100644 index 0000000000..ce8c68fd15 --- /dev/null +++ b/src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java @@ -0,0 +1,136 @@ +package common.recipeLoaders; + +import static gregtech.api.enums.Mods.GTPlusPlus; +import static gregtech.api.enums.Mods.NewHorizonsCoreMod; + +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fluids.FluidStack; + +import com.github.technus.tectech.recipe.TT_recipeAdder; +import common.Blocks; + +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 ResearchableAssemblyLine implements Runnable { + + @Override + public void run() { + final Fluid solderUEV = FluidRegistry.getFluid("molten.mutatedlivingsolder") != null + ? FluidRegistry.getFluid("molten.mutatedlivingsolder") + : FluidRegistry.getFluid("molten.solderingalloy"); + + // Extremely Ultimate Capacitor (UEV) + TT_recipeAdder.addResearchableAssemblylineRecipe( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5), + 1200000, + 128, + 8000000, + 16, + new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.InfinityCatalyst, 32L), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.InfinityCatalyst, 32L), + new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 }, ItemList.ZPM3.get(8L), + ItemList.Field_Generator_UEV.get(4), ItemList.Circuit_Wafer_PPIC.get(64), + ItemList.Circuit_Wafer_PPIC.get(64), ItemList.Circuit_Wafer_SoC2.get(64), + ItemList.Circuit_Parts_DiodeXSMD.get(64), + GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUEV, 64) }, + new FluidStack[] { new FluidStack(solderUEV, 9216), Materials.Quantium.getMolten(18432), + Materials.Naquadria.getMolten(18432), Materials.SuperCoolant.getFluid(64000) }, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8), + 250 * 20, + (int) TierEU.RECIPE_UEV); + + if (GTPlusPlus.isModLoaded()) { + // Insanely Ultimate Capacitor (UIV) + TT_recipeAdder.addResearchableAssemblylineRecipe( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8), + 24_000_000, + 1_280, + 32_000_000, + 32, + new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TranscendentMetal, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24), + GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleHypogen", 32), + GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleHypogen", 32), + new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 }, ItemList.ZPM4.get(8L), + ItemList.Field_Generator_UIV.get(4), ItemList.Circuit_Wafer_QPIC.get(64), + ItemList.Circuit_Wafer_QPIC.get(64), + GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.RawPicoWafer", 64), + ItemList.Circuit_Parts_DiodeXSMD.get(64), ItemList.Circuit_Parts_InductorXSMD.get(32), + GT_OreDictUnificator.get(OrePrefixes.wireGt08, Materials.SuperconductorUIV, 64) }, + new FluidStack[] { new FluidStack(solderUEV, 18_432), + new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 18432), + Materials.Quantium.getMolten(18_432), Materials.SuperCoolant.getFluid(128_000) }, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9), + 300 * 20, + (int) TierEU.RECIPE_UIV); + + // Mega Ultimate Capacitor (UMV) + TT_recipeAdder.addResearchableAssemblylineRecipe( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9), + 480_000_000, + 12_288, + 128_000_000, + 64, + new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.SpaceTime, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24), + GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleDragonblood", 32), + GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleDragonblood", 32), + new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 }, ItemList.ZPM5.get(8L), + ItemList.Field_Generator_UMV.get(4), ItemList.Circuit_Wafer_QPIC.get(64), + ItemList.Circuit_Wafer_QPIC.get(64), + GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.PicoWafer", 64), + ItemList.Circuit_Parts_DiodeXSMD.get(64), ItemList.Circuit_Parts_InductorXSMD.get(64), + GT_OreDictUnificator.get(OrePrefixes.wireGt16, Materials.SuperconductorUMV, 64) }, + new FluidStack[] { new FluidStack(solderUEV, 36_864), + new FluidStack(FluidRegistry.getFluid("molten.astraltitanium"), 36_864), + new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 36_864), + Materials.SuperCoolant.getFluid(256_000) }, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10), + 350 * 20, + (int) TierEU.RECIPE_UMV); + } + + // Ultimate Capacitor (UHV) + TT_recipeAdder.addResearchableAssemblylineRecipe( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4), + 12000, + 16, + 300000, + 3, + new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium, 4), + GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium, 32L), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium, 32L), + new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 }, + new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 }, ItemList.ZPM2.get(8L), + ItemList.Field_Generator_UHV.get(4), ItemList.Circuit_Wafer_UHPIC.get(64), + ItemList.Circuit_Wafer_UHPIC.get(64), ItemList.Circuit_Wafer_SoC2.get(32), + ItemList.Circuit_Parts_DiodeASMD.get(64), + GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUHV, 64) }, + new FluidStack[] { new FluidStack(solderUEV, 4608), Materials.Naquadria.getMolten(9216), + new FluidStack(FluidRegistry.getFluid("ic2coolant"), 32000) }, + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5), + 4000, + 1600000); + } +} diff --git a/src/main/java/common/recipeLoaders/Unpackager.java b/src/main/java/common/recipeLoaders/Unpackager.java new file mode 100644 index 0000000000..ed39cd1e01 --- /dev/null +++ b/src/main/java/common/recipeLoaders/Unpackager.java @@ -0,0 +1,146 @@ +package common.recipeLoaders; + +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + +import net.minecraft.item.ItemStack; + +import common.Blocks; + +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 Unpackager implements Runnable { + + @Override + public void run() { + + // TFFT Recycling + { + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.tfftStorageField, 1, 1), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CrudeSteel, 1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrudeSteel, 6)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 2), ItemList.Casing_Tank_1.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnergeticSilver, 6)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 3), ItemList.Casing_Tank_3.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VividAlloy, 6)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 4), ItemList.Casing_Tank_5.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Enderium, 6)).noFluidInputs() + .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 5), ItemList.Casing_Tank_7.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 6)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 6), ItemList.Casing_Tank_7.get(4)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.CrystallinePinkSlime, 6)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 7), ItemList.Casing_Tank_10.get(16)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.MelodicAlloy, 6)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 8), ItemList.Quantum_Tank_IV.get(1)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 12)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 9), ItemList.Quantum_Tank_IV.get(4)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 12)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 10), ItemList.Quantum_Tank_IV.get(16)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 12)) + .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV) + .addTo(sUnboxinatorRecipes); + + } + + // Capacitor recycling + { + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), + GT_ModHandler.getIC2Item("lapotronCrystal", 1L, 26)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6)).noFluidInputs().noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), + ItemList.Energy_LapotronicOrb.get(1L)) + .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6)).noFluidInputs().noFluidOutputs() + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2), + ItemList.Energy_LapotronicOrb2.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24)).noFluidInputs() + .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3), ItemList.Energy_Module.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24)) + .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4), ItemList.Energy_Cluster.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24)).noFluidInputs() + .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5), ItemList.ZPM3.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24)) + .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8), ItemList.ZPM4.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24)).noFluidInputs() + .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9), ItemList.ZPM5.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24)) + .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV) + .addTo(sUnboxinatorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10), ItemList.ZPM6.get(1L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24)).noFluidInputs() + .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes); + + } + } +} |