diff options
| author | Raven Szewczyk <git@eigenraven.me> | 2024-05-25 15:39:05 +0100 |
|---|---|---|
| committer | Raven Szewczyk <git@eigenraven.me> | 2024-05-25 15:39:05 +0100 |
| commit | db88561e8e21fb8b067bf5bf1a1753697d36ed29 (patch) | |
| tree | 7a928f7502c46571b41dfa647151c253064cd5fb /src/main/java/com/elisis/gtnhlanth/loader | |
| parent | 9069e2aa47be7e6fb6ab1a2a29c5887ec2bfb2d7 (diff) | |
| download | GT5-Unofficial-db88561e8e21fb8b067bf5bf1a1753697d36ed29.tar.gz GT5-Unofficial-db88561e8e21fb8b067bf5bf1a1753697d36ed29.tar.bz2 GT5-Unofficial-db88561e8e21fb8b067bf5bf1a1753697d36ed29.zip | |
Merge Lanthanides sources
Diffstat (limited to 'src/main/java/com/elisis/gtnhlanth/loader')
4 files changed, 4424 insertions, 0 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java b/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java new file mode 100644 index 0000000000..a0480b62dd --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/loader/BotRecipes.java @@ -0,0 +1,267 @@ +package com.elisis.gtnhlanth.loader; + +import static com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool.*; +import static gregtech.api.enums.OrePrefixes.*; +import static gregtech.api.recipe.RecipeMaps.chemicalReactorRecipes; +import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; + +import java.util.HashSet; + +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; + +import com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool; +import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; + +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Utility; +import ic2.core.Ic2Items; + +/* + * Originally authored by botn365 under the MIT License. See BotdustriesLICENSE + */ + +public class BotRecipes { + + public static void addGTRecipe() { + ItemStack C1 = GT_Utility.getIntegratedCircuit(1); + ItemStack C2 = GT_Utility.getIntegratedCircuit(2); + ItemStack C24 = GT_Utility.getIntegratedCircuit(24); + + // CaCO3 + 2HCl = H2O + CO2 + CaCl2 + GT_Values.RA.addChemicalRecipe( + Materials.Calcite.getDust(5), + Materials.Empty.getCells(1), + Materials.HydrochloricAcid.getFluid(2000), + Materials.Water.getFluid(1000), + Materials.CarbonDioxide.getCells(1), + WerkstoffLoader.CalciumChloride.get(dust, 3), + 80, + 120); + + // tungsten chain + FluidStack sodiumTungsten = SodiumTungstate.getFluidOrGas(1000); + ItemStack scheelite = Materials.Scheelite.getDust(6); + + // Li2WO4 + 2Na = Na2WO4 + 2Li + GT_Values.RA.addAutoclaveRecipe( + Materials.Tungstate.getDust(7), + Materials.Sodium.getDust(2), + Materials.Water.getFluid(4000), + sodiumTungsten, + Materials.Lithium.getDust(2), + 10000, + 100, + 1920, + false); + + // MnWO4 + 2Na = Na2WO4 + Mn + GT_Values.RA.addAutoclaveRecipe( + WerkstoffLoader.Huebnerit.get(dust, 6), + Materials.Sodium.getDust(2), + Materials.Water.getFluid(4000), + sodiumTungsten, + Materials.Manganese.getDust(1), + 10000, + 100, + 1920, + false); + + // FeWO4 + 2Na = Na2WO4 + Fe + GT_Values.RA.addAutoclaveRecipe( + WerkstoffLoader.Ferberite.get(dust, 6), + Materials.Sodium.getDust(2), + Materials.Water.getFluid(4000), + sodiumTungsten, + Materials.Iron.getDust(1), + 10000, + 100, + 1920, + false); + + // CaCl2 + Na2WO4 = 2NaCl + CaWO4 + ItemStack Ca2Cl = WerkstoffLoader.CalciumChloride.get(dust, 3); + GT_Values.RA + .addChemicalRecipe(Ca2Cl, null, sodiumTungsten, null, scheelite, Materials.Salt.getDust(4), 100, 480); + + ItemStack H2WO4 = TungsticAcid.get(dust, 7); + // CaWO4 + 2HCl = H2WO4 + CaCl2 + GT_Values.RA.addChemicalRecipe( + scheelite, + null, + Materials.HydrochloricAcid.getFluid(2000), + null, + H2WO4, + Ca2Cl, + 50, + 1920); + + ItemStack WO3 = TungstenTrioxide.get(dust, 4); + // H2WO4 = WO3 + H2O + GT_Values.RA.addBlastRecipe(H2WO4, null, null, null, WO3, null, 200, 480, 1200); + + // WO3 + 6H = W + 3H2O + GT_Values.RA.addBlastRecipe( + WO3, + C2, + Materials.Hydrogen.getGas(6000), + GT_ModHandler.getSteam(3000), + Materials.Tungsten.getDust(1), + null, + 100, + 1920, + 1000); + + WO3.stackSize = 8; + // 2WO3 + 3C = 2W + 3CO2 + GT_Values.RA.addBlastRecipe( + WO3, + Materials.Carbon.getDust(3), + null, + Materials.CarbonDioxide.getGas(3000), + GT_OreDictUnificator.get(ingotHot, Materials.Tungsten, 2L), + null, + 8000, + 1920, + 3000); + + // rocket fuels + // LMP103S + // 2Cl + CO = COCl2 + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.CarbonMonoxide.getCells(1), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Phosgene.get(cell, 1)) + .fluidInputs(Materials.Chlorine.getGas(2000)) + .duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV) + .addTo(chemicalReactorRecipes); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(12)) + .itemOutputs(Phosgene.get(cell, 1), Materials.Empty.getCells(1)) + .fluidInputs(Materials.CarbonMonoxide.getGas(1000)) + .duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV) + .addTo(chemicalReactorRecipes); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.CarbonMonoxide.getCells(1), Materials.Chlorine.getCells(2)) + .itemOutputs(Phosgene.get(cell, 1), Materials.Empty.getCells(2)) + .duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV) + .addTo(chemicalReactorRecipes); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs(Materials.Empty.getCells(2)) + .fluidInputs(Materials.CarbonMonoxide.getGas(1000)) + .fluidOutputs(BotWerkstoffMaterialPool.Phosgene.getFluidOrGas(1000)) + .duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV) + .addTo(UniversalChemical); + + // H3PO4 = P + H2O + GT_Values.RA.addDistilleryRecipe( + C2, + Materials.PhosphoricAcid.getFluid(1000), + Materials.Water.getFluid(500), + Materials.Phosphorus.getDust(1), + 20, + 480, + false); + + ItemStack cells = Ic2Items.cell.copy(); + cells.stackSize = 1; + // NH4Cl = HCl + NH3 + GT_Values.RA.addDistilleryRecipe( + cells, + WerkstoffLoader.AmmoniumChloride.getFluidOrGas(1000), + Materials.HydrochloricAcid.getFluid(1000), + Materials.Ammonia.getCells(1), + 50, + 120, + false); + + // N2H4O3 + NaOH = NaNO3 + NH3 + H2O + GT_Values.RA.addChemicalRecipeForBasicMachineOnly( + AmmoniumNitrate.get(dust, 9), + Materials.SodiumHydroxide.getDust(3), + null, + Materials.Ammonia.getGas(1000), + WerkstoffLoader.SodiumNitrate.get(dust, 5), + null, + 100, + 480); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { AmmoniumNitrate.get(dust, 9), Materials.SodiumHydroxide.getDust(3), C2 }, + null, + new FluidStack[] { Materials.Ammonia.getGas(1000), Materials.Water.getFluid(1000) }, + new ItemStack[] { WerkstoffLoader.SodiumNitrate.get(dust, 5) }, + 100, + 480); + + // N2H4O3 + NaOH + H =H2SO4= NH3 + HNO3 + Na + H2O + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { C24, AmmoniumNitrate.get(dust, 9), Materials.SodiumHydroxide.getDust(3) }, + new FluidStack[] { Materials.SulfuricAcid.getFluid(1000), Materials.Hydrogen.getGas(1000) }, + new FluidStack[] { Materials.Ammonia.getGas(1000), Materials.NitricAcid.getFluid(1000), + Materials.DilutedSulfuricAcid.getFluid(1000) }, + new ItemStack[] { Materials.Sodium.getDust(1) }, + 300, + 480); + + // Monomethylhydrazine + cells.stackSize = 1; + // C7H8 + CH4O = C8H10 + H2O + GT_Values.RA.addCrackingRecipe( + 1, + Materials.Toluene.getFluid(1000), + Materials.Methanol.getFluid(1000), + OXylene.getFluidOrGas(1000), + 600, + 4096); + + // 2HNO3 + C3H8 = 2CH3NO2 + 2H2O + C + GT_Values.RA.addCrackingRecipe( + 2, + Materials.Propane.getGas(1000), + Materials.NitricAcid.getFluid(2000), + Nitromethane.getFluidOrGas(2000), + 300, + 1920); + } + + public static void removeRecipes() { + BotRecipes.removeTungstenElectro(); + } + + public static void removeTungstenElectro() { + HashSet<GT_Recipe> toDel = new HashSet<>(); + ItemStack[] toRemove = { Materials.Scheelite.getDust(1), Materials.Tungstate.getDust(1), + WerkstoffLoader.Ferberite.get(dust, 1), WerkstoffLoader.Huebnerit.get(dust, 1) }; + for (GT_Recipe tRecipe : electrolyzerRecipes.getAllRecipes()) { + if (tRecipe.mFakeRecipe) continue; + for (int i = 0; i < tRecipe.mInputs.length; i++) { + ItemStack tItem = tRecipe.mInputs[i]; + if (item == null || !GT_Utility.isStackValid(tItem)) continue; + for (ItemStack tStack : toRemove) { + if (GT_Utility.areStacksEqual(tItem, tStack)) { + toDel.add(tRecipe); + continue; + } + } + } + } + electrolyzerRecipes.getBackend() + .removeRecipes(toDel); + electrolyzerRecipes.getBackend() + .reInit(); + } +} diff --git a/src/main/java/com/elisis/gtnhlanth/loader/MetaTileEntity_Loader.java b/src/main/java/com/elisis/gtnhlanth/loader/MetaTileEntity_Loader.java new file mode 100644 index 0000000000..e24034c663 --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/loader/MetaTileEntity_Loader.java @@ -0,0 +1,4 @@ +package com.elisis.gtnhlanth.loader; + +public class MetaTileEntity_Loader { +} diff --git a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java new file mode 100644 index 0000000000..d5c7d63f8d --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java @@ -0,0 +1,3744 @@ +package com.elisis.gtnhlanth.loader; + +import static com.elisis.gtnhlanth.api.recipe.LanthanidesRecipeMaps.digesterRecipes; +import static com.elisis.gtnhlanth.api.recipe.LanthanidesRecipeMaps.dissolutionTankRecipes; +import static com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool.*; +import static gregtech.api.recipe.RecipeMaps.autoclaveRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeNonCellRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.chemicalBathRecipes; +import static gregtech.api.recipe.RecipeMaps.distillationTowerRecipes; +import static gregtech.api.recipe.RecipeMaps.electrolyzerNonCellRecipes; +import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.hammerRecipes; +import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerNonCellRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; +import static gregtech.api.recipe.RecipeMaps.multiblockChemicalReactorRecipes; +import static gregtech.api.recipe.RecipeMaps.oreWasherRecipes; +import static gregtech.api.recipe.RecipeMaps.sifterRecipes; +import static gregtech.api.recipe.RecipeMaps.thermalCentrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.vacuumFreezerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.common.items.GT_MetaGenerated_Item_01.registerCauldronCleaningFor; +import static gtPlusPlus.api.recipe.GTPPRecipeMaps.chemicalDehydratorRecipes; +import static gtPlusPlus.api.recipe.GTPPRecipeMaps.simpleWasherRecipes; +import static gtPlusPlus.api.recipe.GTPPRecipeMaps.vacuumFurnaceRecipes; + +import java.lang.reflect.Constructor; +import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.util.HashSet; + +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.CraftingManager; +import net.minecraft.item.crafting.IRecipe; +import net.minecraft.item.crafting.ShapedRecipes; +import net.minecraft.item.crafting.ShapelessRecipes; +import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.oredict.OreDictionary; +import net.minecraftforge.oredict.ShapedOreRecipe; +import net.minecraftforge.oredict.ShapelessOreRecipe; + +import org.apache.commons.lang3.reflect.FieldUtils; + +import com.elisis.gtnhlanth.Tags; +import com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool; +import com.elisis.gtnhlanth.common.register.LanthItemList; +import com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool; +import com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement.PlatinumSludgeOverHaul; +import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; + +import cpw.mods.fml.common.Loader; +import cpw.mods.fml.common.registry.GameRegistry; +import goodgenerator.items.MyMaterial; +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_Log; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Utility; + +public class RecipeLoader { + + private static final Materials[] BLACKLIST = null; + + public static void loadGeneral() { + + /* ZIRCONIUM */ + // ZrCl4 + // ZrO2 + 4HCl = ZrCl4 + 2H2O + GT_Values.RA.addChemicalRecipe( + GT_Utility.getIntegratedCircuit(1), + WerkstoffMaterialPool.Zirconia.get(OrePrefixes.dust, 3), + Materials.HydrochloricAcid.getFluid(4000), + Materials.Water.getFluid(2000), + WerkstoffMaterialPool.ZirconiumTetrachloride.get(OrePrefixes.dust, 5), + 300); + + // ZrCl4-H2O + GT_Values.RA.addChemicalRecipe( + GT_Utility.getIntegratedCircuit(1), + WerkstoffMaterialPool.ZirconiumTetrachloride.get(OrePrefixes.dust, 5), + Materials.Water.getFluid(1000), + WerkstoffMaterialPool.ZirconiumTetrachlorideSolution.getFluidOrGas(1000), + null, + 200); + + // Zr + // ZrCl4·H2O + 2Mg = Zr + 2MgCl2 + GT_Values.RA.addBlastRecipe( + GT_Utility.getIntegratedCircuit(2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2), + WerkstoffMaterialPool.ZirconiumTetrachlorideSolution.getFluidOrGas(1000), + null, // No fluid output + WerkstoffMaterialPool.Zirconium.get(OrePrefixes.ingotHot, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesiumchloride, 6), + 600, + 1920, + 4500); + + /* HAFNIUM */ + // HfCl4 + // HfO2 + 4HCl = HfCl4 + 2H2O + GT_Values.RA.addChemicalRecipe( + GT_Utility.getIntegratedCircuit(1), + WerkstoffMaterialPool.Hafnia.get(OrePrefixes.dust, 3), + Materials.HydrochloricAcid.getFluid(4000), + Materials.Water.getFluid(2000), + WerkstoffMaterialPool.HafniumTetrachloride.get(OrePrefixes.dust, 5), + 300); + + // HfCl4-H2O + GT_Values.RA.addChemicalRecipe( + GT_Utility.getIntegratedCircuit(1), + WerkstoffMaterialPool.HafniumTetrachloride.get(OrePrefixes.dust, 5), + Materials.Water.getFluid(1000), + WerkstoffMaterialPool.HafniumTetrachlorideSolution.getFluidOrGas(1000), + null, + 200); + + // LP-Hf + // HfCl4 + 2Mg = ??Hf?? + 2MgCl2 + GT_Values.RA.addBlastRecipe( + GT_Utility.getIntegratedCircuit(2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2), + WerkstoffMaterialPool.HafniumTetrachlorideSolution.getFluidOrGas(1000), + null, // No fluid output + WerkstoffMaterialPool.LowPurityHafnium.get(OrePrefixes.dust, 1), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesiumchloride, 6), + 600, + 1920, + 2700); + + // HfI4 + // ??Hf?? + 4I = HfI4 + GT_Values.RA.addChemicalRecipe( + GT_Utility.getIntegratedCircuit(1), + WerkstoffMaterialPool.LowPurityHafnium.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.Iodine.getFluidOrGas(4000), + null, + WerkstoffMaterialPool.HafniumIodide.get(OrePrefixes.dust, 5), + 300); + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.LowPurityHafnium.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.Iodine.get(OrePrefixes.dust, 4), + null, + null, + WerkstoffMaterialPool.HafniumIodide.get(OrePrefixes.dust, 5), + 300); + + // Hf + // HfI4 = Hf + 4I + GT_Values.RA.addBlastRecipe( + GT_Utility.getIntegratedCircuit(12), + WerkstoffMaterialPool.HafniumIodide.get(OrePrefixes.dust, 5), + null, + WerkstoffMaterialPool.Iodine.getFluidOrGas(4000), + WerkstoffMaterialPool.Hafnium.get(OrePrefixes.ingotHot, 1), + WerkstoffMaterialPool.HafniumRunoff.get(OrePrefixes.dustTiny, 1), + 600, + 1920, + 3400); + + // Hf * 9 + GT_Values.RA.addBlastRecipe( + GT_Utility.getIntegratedCircuit(13), + WerkstoffMaterialPool.HafniumIodide.get(OrePrefixes.dust, 45), + null, + WerkstoffMaterialPool.Iodine.getFluidOrGas(36000), + WerkstoffMaterialPool.Hafnium.get(OrePrefixes.ingotHot, 9), + WerkstoffMaterialPool.HafniumRunoff.get(OrePrefixes.dust, 1), + 5400, + 1920, + 3400); + + // Zirconia-Hafnia + // ??HfZr?? = HfO2 + ZrO2 + GT_Values.RA.addCentrifugeRecipe( + WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dust, 1), + null, + null, + null, + WerkstoffMaterialPool.Hafnia.get(OrePrefixes.dust, 3), + WerkstoffMaterialPool.Zirconia.get(OrePrefixes.dust, 3), + null, + null, + null, + null, + new int[] { 10000, 10000 }, + 600, + 1920); + + // Ammonium Nitrate + // HNO3 + NH3 = NH4NO3 + GT_Values.RA.addChemicalRecipeForBasicMachineOnly( + GT_Utility.getIntegratedCircuit(12), + Materials.NitricAcid.getCells(1), + Materials.Ammonia.getGas(1000), + WerkstoffMaterialPool.AmmoniumNitrate.getFluidOrGas(1000), + Materials.Empty.getCells(1), + null, + 30, + 400); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { GT_Utility.getIntegratedCircuit(12) }, + new FluidStack[] { Materials.NitricAcid.getFluid(1000), Materials.Ammonia.getGas(1000) }, + new FluidStack[] { WerkstoffMaterialPool.AmmoniumNitrate.getFluidOrGas(1000) }, + new ItemStack[] {}, + 30, + 400); + + // IODINE-START + // SeaweedAsh + GT_ModHandler.addSmeltingRecipe( + GT_ModHandler.getModItem("harvestcraft", "seaweedItem", 1), + WerkstoffMaterialPool.SeaweedAsh.get(OrePrefixes.dustSmall, 1)); + + // SeaweedConcentrate + GT_Values.RA.addMixerRecipe( + WerkstoffMaterialPool.SeaweedAsh.get(OrePrefixes.dust, 2), + null, + null, + null, + Materials.DilutedSulfuricAcid.getFluid(1200), + WerkstoffMaterialPool.SeaweedConcentrate.getFluidOrGas(1200), + Materials.Calcite.getDust(1), + 600, + 240); + + // SeaweedConcentrate * 4 + GT_Values.RA.addMixerRecipe( + WerkstoffMaterialPool.SeaweedAsh.get(OrePrefixes.dust, 4), + null, + null, + null, + Materials.DilutedSulfuricAcid.getFluid(2400), + WerkstoffMaterialPool.SeaweedConcentrate.getFluidOrGas(2400), + Materials.Calcite.getDust(2), + 1200, + 240); + + // Iodine + GT_Values.RA.addCentrifugeRecipe( + Materials.Benzene.getCells(1), + null, + WerkstoffMaterialPool.SeaweedConcentrate.getFluidOrGas(2000), + WerkstoffMaterialPool.SeaweedByproducts.getFluidOrGas(200), + Materials.Empty.getCells(1), + WerkstoffMaterialPool.Iodine.get(OrePrefixes.dust, 1), + null, + null, + null, + null, + new int[] { 10000, 10000 }, + 760, + 480); + + // IODINE-END + + // 2MnO2 + 2KOH + KClO3 = 2KMnO4 + H2O + KCl + GT_Values.RA.addBlastRecipe( + Materials.Pyrolusite.getDust(6), + GT_ModHandler.getModItem("dreamcraft", "item.PotassiumHydroxideDust", 6), + WerkstoffMaterialPool.PotassiumChlorate.get(OrePrefixes.dust, 5), + null, + null, + Materials.Water.getFluid(1000), + WerkstoffMaterialPool.PotassiumPermanganate.get(OrePrefixes.dust, 12), + Materials.RockSalt.getDust(2), + null, + null, + 150, + 480, + 1200); + + // Mn + 2O = MnO2 + GT_Values.RA.addChemicalRecipe( + Materials.Manganese.getDust(1), + GT_Utility.getIntegratedCircuit(1), + Materials.Oxygen.getGas(2000), + null, + Materials.Pyrolusite.getDust(3), + 40, + 30); + + // 6KOH + 6Cl = KClO3 + 5KCl + 3H2O + GT_Values.RA.addChemicalRecipe( + GT_ModHandler.getModItem("dreamcraft", "item.PotassiumHydroxideDust", 18), + GT_Utility.getIntegratedCircuit(3), + Materials.Chlorine.getGas(6000), + Materials.Water.getFluid(3000), + Materials.RockSalt.getDust(10), + WerkstoffMaterialPool.PotassiumChlorate.get(OrePrefixes.dust, 5), + 40, + 30); + + /* + * //Fluorosilicic Acid GT_Values.RA.addChemicalRecipe( GT_Utility.getIntegratedCircuit(1), + * Materials.SiliconDioxide.getDust(1), Materials.HydrofluoricAcid.getFluid(6000), + * WerkstoffMaterialPool.FluorosilicicAcid.getFluidOrGas(1000), null, 300, 600 ); + */ + // Sodium Fluorosilicate + // 2NaCl + H2SiF6 = 2HCl + Na2SiF6 + GT_Values.RA.addChemicalRecipe( + Materials.Empty.getCells(2), + Materials.Salt.getDust(4), + WerkstoffLoader.HexafluorosilicicAcid.getFluidOrGas(1000), + WerkstoffMaterialPool.SodiumFluorosilicate.getFluidOrGas(1000), + Materials.HydrochloricAcid.getCells(2), + 600, + 450); + } + + public static void loadLanthanideRecipes() { + // Methanol + // CH4O + CO + 3O =V2O5= H2C2O4 + H2O + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { MyMaterial.vanadiumPentoxide.get(OrePrefixes.dustTiny, 1) }, + new FluidStack[] { Materials.Methanol.getFluid(1000), Materials.CarbonMonoxide.getGas(1000), + Materials.Oxygen.getGas(3000) }, + new FluidStack[] { MyMaterial.oxalate.getFluidOrGas(1000), Materials.Water.getFluid(1000) }, + null, + 450, + 240); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { GT_Utility.getIntegratedCircuit(9), + MyMaterial.vanadiumPentoxide.get(OrePrefixes.dust, 1) }, + new FluidStack[] { Materials.Methanol.getFluid(9000), Materials.CarbonMonoxide.getGas(9000), + Materials.Oxygen.getGas(27000) }, + new FluidStack[] { MyMaterial.oxalate.getFluidOrGas(9000), Materials.Water.getFluid(9000) }, + null, + 4050, + 240); + + // Ethanol + // C2H6O + 5O =V2O5= H2C2O4 + 2H2O + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { MyMaterial.vanadiumPentoxide.get(OrePrefixes.dustTiny, 1) }, + new FluidStack[] { Materials.Ethanol.getFluid(1000), Materials.Oxygen.getGas(5000) }, + new FluidStack[] { MyMaterial.oxalate.getFluidOrGas(1000), Materials.Water.getFluid(2000) }, + null, + 450, + 240); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { GT_Utility.getIntegratedCircuit(9), + MyMaterial.vanadiumPentoxide.get(OrePrefixes.dust, 1) }, + new FluidStack[] { Materials.Ethanol.getFluid(9000), Materials.Oxygen.getGas(45000) }, + new FluidStack[] { MyMaterial.oxalate.getFluidOrGas(9000), Materials.Water.getFluid(18000) }, + null, + 4050, + 240); + + // GT_Values.RA.addChemicalRecipe( + // GT_Utility.getIntegratedCircuit(2), + // WerkstoffMaterialPool.CeriumDioxide + // + // ) + + // Cerium Oxalate + // 2CeCl3 + 3H2C2O4 = 6HCl + Ce2(C2O4)3 + GT_Values.RA.addChemicalRecipe( + GT_Utility.getIntegratedCircuit(1), + WerkstoffMaterialPool.CeriumChloride.get(OrePrefixes.dust, 8), + MyMaterial.oxalate.getFluidOrGas(3000), + Materials.HydrochloricAcid.getFluid(6000), + WerkstoffMaterialPool.CeriumOxalate.get(OrePrefixes.dust, 5), + null, + 300, + 450); + + // Cerium + // Ce2O3 = 2Ce + 3O + GT_Values.RA.addElectrolyzerRecipe( + WerkstoffMaterialPool.CeriumIIIOxide.get(OrePrefixes.dust, 5), + null, + null, + Materials.Oxygen.getFluid(3000), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cerium, 2), + null, + null, + null, + null, + null, + new int[] { 10000 }, + 150, + 120); + + // CHAIN BEGIN + // MONAZITE + GT_Values.RA.stdBuilder() + .fluidInputs(Materials.NitricAcid.getFluid(700)) + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Monazite, 2)) + .fluidOutputs(WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(400)) + .itemOutputs(Materials.SiliconDioxide.getDust(1)) + .eut(1920) + .duration(400) + .specialValue(800) + .addTo(digesterRecipes); + + GT_Values.RA.stdBuilder() + .fluidInputs( + Materials.Water.getFluid(10000), + WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(1000)) + .itemInputs(GT_Utility.getIntegratedCircuit(1), Materials.Saltpeter.getDust(1)) + .fluidOutputs(WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(11000)) + .itemOutputs( + WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dustTiny, 4), + WerkstoffLoader.Thorianit.get(OrePrefixes.dust, 1), + Materials.Monazite.getDustTiny(2)) + .eut(480) + .duration(900) + .specialValue(10) + .noOptimize() + .addTo(dissolutionTankRecipes); + + GT_Values.RA.stdBuilder() + .fluidInputs( + Materials.Water.getFluid(90000), + WerkstoffMaterialPool.MuddyRareEarthMonaziteSolution.getFluidOrGas(9000)) + .itemInputs(GT_Utility.getIntegratedCircuit(9), Materials.Saltpeter.getDust(9)) + .fluidOutputs(WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(99000)) + .itemOutputs( + WerkstoffMaterialPool.HafniaZirconiaBlend.get(OrePrefixes.dust, 4), + WerkstoffLoader.Thorianit.get(OrePrefixes.dust, 9), + Materials.Monazite.getDust(2)) + .eut(480) + .duration(8100) + .specialValue(10) + .noOptimize() + .addTo(dissolutionTankRecipes); + + sifterRecipes.addRecipe( + false, + null, + new ItemStack[] { WerkstoffMaterialPool.MonaziteSulfate.get(OrePrefixes.dust, 1), + Materials.SiliconDioxide.getDust(1), Materials.Rutile.getDust(1), + WerkstoffLoader.RedZircon.get(OrePrefixes.dust, 1), Materials.Ilmenite.getDust(1) }, + null, + new int[] { 9000, 7500, 2000, 500, 2000 }, + new FluidStack[] { WerkstoffMaterialPool.DilutedRareEarthMonaziteMud.getFluidOrGas(1000) }, + null, + 400, + 240, + 0); + + GT_Values.RA.addMixerRecipe( + WerkstoffMaterialPool.MonaziteSulfate.get(OrePrefixes.dust, 1), + null, + null, + null, + null, + null, + Materials.Water.getFluid(6000), + WerkstoffMaterialPool.DilutedMonaziteSulfate.getFluidOrGas(7000), + null, + 480, + 400); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { GT_Utility.getIntegratedCircuit(13) }, + new FluidStack[] { WerkstoffMaterialPool.DilutedMonaziteSulfate.getFluidOrGas(1000), + WerkstoffMaterialPool.AmmoniumNitrate.getFluidOrGas(200) }, + null, + new ItemStack[] { WerkstoffMaterialPool.AcidicMonazitePowder.get(OrePrefixes.dustTiny, 3), }, + 480, + 480); + + GT_Values.RA.addMultiblockChemicalRecipe( + new ItemStack[] { GT_Utility.getIntegratedCircuit(14) }, + new FluidStack[] { WerkstoffMaterialPool.DilutedMonaziteSulfate.getFluidOrGas(9000), + WerkstoffMaterialPool.AmmoniumNitrate.getFluidOrGas(1800) }, + null, + new ItemStack[] { WerkstoffMaterialPool.AcidicMonazitePowder.get(OrePrefixes.dust, 3), }, + 4320, + 480); + + GT_Values.RA.addSifterRecipe( + WerkstoffMaterialPool.AcidicMonazitePowder.get(OrePrefixes.dust, 1), + new ItemStack[] { WerkstoffMaterialPool.MonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.ThoriumPhosphateCake.get(OrePrefixes.dust, 1) }, + new int[] { 9000, 7000 }, + 600, + 256); + + GT_Values.RA.addBlastRecipe( + WerkstoffMaterialPool.ThoriumPhosphateCake.get(OrePrefixes.dust, 1), + null, + null, + null, + WerkstoffMaterialPool.ThoriumPhosphateConcentrate.get(OrePrefixes.dust, 1), + null, + 300, + 128, + 1500); + + GT_Values.RA.addThermalCentrifugeRecipe( + WerkstoffMaterialPool.ThoriumPhosphateConcentrate.get(OrePrefixes.dust), + Materials.Thorium.getDust(1), + Materials.Phosphate.getDust(1), + null, + new int[] { 10000, 10000 }, + 200, + 480); + + GT_Values.RA.addChemicalBathRecipe( + WerkstoffMaterialPool.MonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.AmmoniumNitrate.getFluidOrGas(320), + WerkstoffMaterialPool.NeutralizedMonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), + null, + null, + new int[] { 10000 }, + 120, + 240); + + GT_Values.RA.addSifterRecipe( + WerkstoffMaterialPool.NeutralizedMonaziteRareEarthFiltrate.get(OrePrefixes.dust, 1), + new ItemStack[] { WerkstoffMaterialPool.MonaziteRareEarthHydroxideConcentrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.UraniumFiltrate.get(OrePrefixes.dust, 1), + WerkstoffMaterialPool.UraniumFiltrate.get(OrePrefixes.dust, 1) }, + new int[] { 9000, 5000, 4000 }, + 800, + 480); + + GT_Values.RA.addChemicalBathRecipe( + WerkstoffMaterialPool.UraniumFiltrate.get(OrePrefixes.dust, 1), + Materials.HydrofluoricAcid.getFluid(100), + WerkstoffMaterialPool.NeutralizedUraniumFiltrate.get(OrePrefixes.dust, 1), + null, + null, + new int[] { 10000 }, + 360, + 120); + + GT_Values.RA.addSifterRecipe( + WerkstoffMaterialPool.NeutralizedUraniumFiltrate.get(OrePrefixes.dust, 1), + new ItemStack[] { Materials.Uranium.getDust(1), Materials.Uranium.getDust(1), Materials.Uranium.getDust(1), + Materials.Uranium235.getDust(1), Materials.Uranium235.getDust(1), }, + new int[] { 4500, 4000, 3000, 3000, 2000 }, + 1000, + 30); + + GT_Values.RA.addBlastRecipe( + WerkstoffMaterialPool.MonaziteRareEarthHydroxideConcentrate.get(OrePrefixes.dust, 1), + null, + null, + null, + WerkstoffMaterialPool.DriedMonaziteRareEarthConcentrate.get(OrePrefixes.dust, 1), + null, + 300, + 120, + 1200); + + GT_Values.RA.addChemicalRecipe( + WerkstoffMaterialPool.DriedMonaziteRareEarthConcentrate.get(OrePrefixes.dust, 1), + null, + Materials.NitricAcid.getFluid(500), + WerkstoffMaterialPool.NitratedRareEarthMonaziteConcentrate.getFluidOrGas(1000), + null, + 500, + 480); + + GT_Values.RA.addMixerRecipe( + Materials.Water.getCells(1), + null, + null, + null, + WerkstoffMaterialPool.NitratedRareEarthMonaziteConcentrate.getFluidOrGas(1000), + WerkstoffMaterialPool.NitricLeachedMonaziteMixture.getFluidOrGas(1000), + Materials.Empty.getCells(1), + 200, + 120); + + GT_Values.RA.addMixerRecipe( + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 3), + null, + null, + null, + WerkstoffMaterialPool.NitratedRareEarthMonaziteConcentrate.getFluidOrGas(1000), + WerkstoffMaterialPool.NitricLeachedMonaziteMixture.getFluidOrGas(2000), + null, + 220, + 120); + + sifterRecipes.addRecipe( + false, + null, + new ItemStack[] { WerkstoffMaterialPool.CeriumDioxide.get(OrePrefixes.dust, 1) }, + null, + new int[] { 1111 }, |
