From 34ae5537683e986c5bf31c6889cd45b050836815 Mon Sep 17 00:00:00 2001 From: Alkalus <3060479+draknyte1@users.noreply.github.com> Date: Tue, 7 Dec 2021 20:00:42 +0000 Subject: More Nuclear Fuel recipe work. --- .../interfaces/internal/IGregtech_RecipeAdder.java | 3 ++ .../gregtech/loaders/recipe/RecipeLoader_LFTR.java | 31 ++++++----- .../loaders/recipe/RecipeLoader_Nuclear.java | 63 +++++++++++----------- .../recipe/RecipeLoader_NuclearFuelProcessing.java | 26 ++++----- .../xmod/gregtech/recipes/GregtechRecipeAdder.java | 9 +++- 5 files changed, 70 insertions(+), 62 deletions(-) (limited to 'src/Java/gtPlusPlus/xmod') diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java index 254655215e..d7bb6324a0 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java @@ -1,6 +1,8 @@ package gtPlusPlus.xmod.gregtech.api.interfaces.internal; +import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; +import gregtech.api.util.GT_Recipe; import gtPlusPlus.core.material.Material; import net.minecraft.item.ItemStack; @@ -308,5 +310,6 @@ public interface IGregtech_RecipeAdder { public boolean addReactorProcessingUnitRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, FluidStack aFluidOutput, int aTime, int aEU); + public boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt); } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java index 3e2f8e061d..819c03756d 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java @@ -5,7 +5,6 @@ import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GasSpargingRecipeMap; import gtPlusPlus.api.objects.data.AutoMap; -import gtPlusPlus.core.item.chemistry.NuclearChem; import gtPlusPlus.core.material.ELEMENT; import gtPlusPlus.core.material.nuclear.FLUORIDES; import gtPlusPlus.core.material.nuclear.NUCLIDE; @@ -54,42 +53,42 @@ public class RecipeLoader_LFTR { //1l/10t= 1000l/2.5hr LiFBeF2ZrF4U235 configureSparging(); - FluidStack Li2BeF4 = NUCLIDE.Li2BeF4.getFluidStack(34); + FluidStack Li2BeF4 = NUCLIDE.Li2BeF4.getFluidStack(36); //LiFBeF2ThF4UF4 - T3 GT_Recipe LFTR1 = new GTPP_Recipe( - true, + false, new ItemStack[] {}, new ItemStack[] {}, null, new int[] {10000, 10000, 5000, 2500}, new FluidStack[] { - NUCLIDE.LiFBeF2ThF4UF4.getFluidStack(17), + NUCLIDE.LiFBeF2ThF4UF4.getFluidStack(18), Li2BeF4 }, new FluidStack[] { - new FluidStack(NuclearChem.Burnt_LiFBeF2ThF4UF4, 17), - NUCLIDE.LiFBeF2ThF4.getFluidStack(34), + NUCLIDE.LiFBeF2UF4FP.getFluidStack(18), + NUCLIDE.LiFBeF2ThF4.getFluidStack(36), FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(10), FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(5) }, - 12000,//time + 9000,//time 0,//cost - 8192//fuel value + 8192*4//fuel value ); //LiFBeF2ZrF4UF4 - T2 GT_Recipe LFTR2 = new GTPP_Recipe( - true, + false, new ItemStack[] {}, new ItemStack[] {}, null, new int[] {10000, 10000, 2500, 1250}, new FluidStack[] { - NUCLIDE.LiFBeF2ZrF4UF4.getFluidStack(17), + NUCLIDE.LiFBeF2ZrF4UF4.getFluidStack(18), Li2BeF4 }, new FluidStack[] { - new FluidStack(NuclearChem.Burnt_LiFBeF2ZrF4UF4, 17), - NUCLIDE.LiFBeF2ThF4.getFluidStack(34), + NUCLIDE.LiFBeF2UF4FP.getFluidStack(12), + NUCLIDE.LiFBeF2ThF4.getFluidStack(24), FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(4), FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(2) }, @@ -100,17 +99,17 @@ public class RecipeLoader_LFTR { //LiFBeF2ZrF4U235 - T1 GT_Recipe LFTR3 = new GTPP_Recipe( - true, + false, new ItemStack[] {}, new ItemStack[] {}, null, new int[] {10000, 10000, 1000, 500}, new FluidStack[] { - NUCLIDE.LiFBeF2ZrF4U235.getFluidStack(17), + NUCLIDE.LiFBeF2ZrF4U235.getFluidStack(18), Li2BeF4 }, new FluidStack[] { - new FluidStack(NuclearChem.Burnt_LiFBeF2ZrF4U235, 17), - NUCLIDE.LiFThF4.getFluidStack(34), + NUCLIDE.LiFBeF2UF4FP.getFluidStack(6), + NUCLIDE.LiFThF4.getFluidStack(12), FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(2), FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(1) }, diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java index 4611382977..330d507115 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java @@ -17,7 +17,6 @@ import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; -import gtPlusPlus.core.util.reflect.AddGregtechRecipe; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -40,6 +39,7 @@ public class RecipeLoader_Nuclear { dehydratorRecipes(); electroMagneticSeperator(); fluidExtractorRecipes(); + fluidHeater(); macerator(); mixerRecipes(); sifter(); @@ -325,6 +325,25 @@ public class RecipeLoader_Nuclear { FluidUtils.getFluidStack("sulfuricacid", 144 * 2), ItemUtils.getItemStackOfAmountFromOreDict("dustTechnetium", 1), 100 * 20); + + // Sodium Hydroxide + GT_Values.RA.addChemicalRecipe( + CI.getNumberedBioCircuit(15), + ItemUtils.getItemStackOfAmountFromOreDict("dustSodiumHydroxide", 1), + FluidUtils.getFluidStack("hydrofluoricacid", 500), + FluidUtils.getWater(1000), + FLUORIDES.SODIUM_FLUORIDE.getDust(1), + 60 * 20); + + if (FluidUtils.doesFluidExist("hydrofluoricacid_gt5u")) { + GT_Values.RA.addChemicalRecipe( + CI.getNumberedBioCircuit(15), + ItemUtils.getItemStackOfAmountFromOreDict("dustSodiumHydroxide", 1), + FluidUtils.getFluidStack("hydrofluoricacid_gt5u", 1000), + FluidUtils.getWater(1000), + FLUORIDES.SODIUM_FLUORIDE.getDust(1), + 60 * 20); + } } @@ -369,37 +388,6 @@ public class RecipeLoader_Nuclear { 75 * 20, // Time in ticks 1000); // EU - // Makes Uranium Tetrafluoride - CORE.RA.addDehydratorRecipe( - new ItemStack[] { - CI.getNumberedAdvancedCircuit(13), - ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 10) - }, - FLUORIDES.URANIUM_TETRAFLUORIDE.getFluidStack(1440), - null, - new ItemStack[] { - FLUORIDES.URANIUM_TETRAFLUORIDE.getDust(10), - CI.emptyCells(10) - }, - new int[] { 10000 }, - 150 * 20, // Time in ticks - 2000); // EU - - // Makes Uranium Hexafluoride - CORE.RA.addDehydratorRecipe( - new ItemStack[] { - CI.getNumberedAdvancedCircuit(12), - ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 10) - }, // Item - FLUORIDES.URANIUM_HEXAFLUORIDE.getFluidStack(1440), - null, // Fluid output (slot 2) - new ItemStack[] { - FLUORIDES.URANIUM_HEXAFLUORIDE.getDust(10), - CI.emptyCells(10) }, // Output - new int[] { 10000 }, - 300 * 20, // Time in ticks - 4000); // EU - // Calcium Hydroxide if ((ItemUtils.checkForInvalidItems(ItemUtils.getItemStackOfAmountFromOreDict("dustQuicklime", 1))) || LoadedMods.IHL) { CORE.RA.addDehydratorRecipe( @@ -692,5 +680,16 @@ public class RecipeLoader_Nuclear { 20 * 30, 500); } + + private static void fluidHeater() { + + CORE.RA.addFluidHeaterRecipe( + FLUORIDES.SODIUM_FLUORIDE.getDust(1), + null, + FLUORIDES.SODIUM_FLUORIDE.getFluidStack(144), + 20 * 30, + 500); + + } } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java index 7315acd7d2..0d1512bd1c 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java @@ -145,18 +145,18 @@ public class RecipeLoader_NuclearFuelProcessing { // Reactor Core step 0 - Process Burnt Salt // Tier 1 Fuel - Gives back FLIBE and breeds U233 - CORE.RA.addReactorProcessingUnitRecipe( - CI.getNumberedAdvancedCircuit(1), - CI.emptyCells(2), - new FluidStack(NuclearChem.Burnt_LiFBeF2ZrF4U235, 4000), - new ItemStack[] { - FLUORIDES.LITHIUM_FLUORIDE.getCell(1), - ELEMENT.getInstance().URANIUM233.getCell(1) - }, - new int[] {10000, 10000}, - NUCLIDE.LiFBeF2.getFluidStack(2000), - 20 * 60 * 60, - MaterialUtils.getVoltageForTier(3)); + /* CORE.RA.addReactorProcessingUnitRecipe( + CI.getNumberedAdvancedCircuit(1), + CI.emptyCells(2), + new FluidStack(NuclearChem.Burnt_LiFBeF2ZrF4U235, 4000), + new ItemStack[] { + FLUORIDES.LITHIUM_FLUORIDE.getCell(1), + ELEMENT.getInstance().URANIUM233.getCell(1) + }, + new int[] {10000, 10000}, + NUCLIDE.LiFBeF2.getFluidStack(2000), + 20 * 60 * 60, + MaterialUtils.getVoltageForTier(3));*/ // LiBeF2UF4FP + F2 = LiFBeF2 & UF6F2FP @@ -164,7 +164,7 @@ public class RecipeLoader_NuclearFuelProcessing { CORE.RA.addReactorProcessingUnitRecipe( CI.getNumberedAdvancedCircuit(1), ELEMENT.getInstance().FLUORINE.getCell(3), - NUCLIDE.LiBeF2UF4FP.getFluidStack(1000), + NUCLIDE.LiFBeF2UF4FP.getFluidStack(1000), new ItemStack[] { NUCLIDE.UF6F2FP.getCell(2) }, diff --git a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java index f31d103cf3..e85371c146 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java @@ -1790,7 +1790,14 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { } - + @Override + public boolean addFluidHeaterRecipe(ItemStack aInput, FluidStack aFluidInput, FluidStack aOutput, int aDuration, int aEUt) { + if ((aInput == null && aFluidInput == null) || (aOutput == null)) { + return false; + } + GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes.addRecipe(true, new ItemStack[]{aInput}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aOutput}, aDuration, aEUt, 0); + return true; + } -- cgit