diff options
author | Draknyte1 <Draknyte1@hotmail.com> | 2016-12-28 19:45:13 +1000 |
---|---|---|
committer | Draknyte1 <Draknyte1@hotmail.com> | 2016-12-28 19:45:13 +1000 |
commit | 6152557fc7d6b0d234eea6968a0cb0fdb976f318 (patch) | |
tree | d1b65bd580773f7e52aab89e3023629e4d5702b6 /src/Java/gtPlusPlus | |
parent | 47637485b2dd6865e22bfffb395a731cc8cbeddb (diff) | |
download | GT5-Unofficial-6152557fc7d6b0d234eea6968a0cb0fdb976f318.tar.gz GT5-Unofficial-6152557fc7d6b0d234eea6968a0cb0fdb976f318.tar.bz2 GT5-Unofficial-6152557fc7d6b0d234eea6968a0cb0fdb976f318.zip |
+ Added the last Fuel salt to NUCLIDE.java.
+ Enabled Fission Fuel Processing recipes.
+ Added recipes for all three nuclear fuels in the Fission Fuel Processor.
Diffstat (limited to 'src/Java/gtPlusPlus')
5 files changed, 106 insertions, 2 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java index 2a6b767295..072a3f428b 100644 --- a/src/Java/gtPlusPlus/core/item/ModItems.java +++ b/src/Java/gtPlusPlus/core/item/ModItems.java @@ -293,6 +293,7 @@ public final class ModItems { //Generate Reactor Fuel Salts MaterialGenerator.generateNuclearMaterial(NUCLIDE.LiFBeF2ZrF4U235); + MaterialGenerator.generateNuclearMaterial(NUCLIDE.LiFBeF2ZrF4UF4); MaterialGenerator.generateNuclearMaterial(NUCLIDE.LiFBeF2ThF4UF4); diff --git a/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java b/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java index 0d087fe246..0fd6d2bd8a 100644 --- a/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java +++ b/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java @@ -37,6 +37,24 @@ public final class NUCLIDE { new MaterialStack(FLUORIDES.URANIUM_TETRAFLUORIDE, 1) }); + public static final Material LiFBeF2ZrF4UF4 = new Material( + "LiFBeF2ZrF4UF4", //Material Name + new short[]{20, 70, 45, 0}, //Material Colour + 650, //Melting Point in C + 940, //Boiling Point in C + 150, //Protons + 150, //Neutrons + false, //Uses Blast furnace? + MaterialUtils.subscript(MaterialUtils.superscript("7")+"LiFBeF2ZrF4UF4"), //Chemical Formula + 5, //Radioactivity Level + //Material Stacks with Percentage of required elements. + new MaterialStack[]{ + new MaterialStack(FLUORIDES.LITHIUM_FLUORIDE, 65), + new MaterialStack(FLUORIDES.BERYLLIUM_FLUORIDE, 28), + new MaterialStack(FLUORIDES.ZIRCONIUM_TETRAFLUORIDE, 5), + new MaterialStack(FLUORIDES.URANIUM_TETRAFLUORIDE, 2) + }); + public static final Material LiFBeF2ZrF4U235 = new Material( "LiFBeF2ZrF4U235", //Material Name new short[]{50, 70, 15, 0}, //Material Colour diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java index 899eff8cf2..4383618cb5 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java @@ -35,6 +35,7 @@ public class RECIPES_GREGTECH { dehydratorRecipes(); blastFurnaceRecipes(); lftrRecipes(); + fissionFuelRecipes(); autoclaveRecipes(); mixerRecipes(); macerationRecipes(); @@ -341,7 +342,7 @@ public class RECIPES_GREGTECH { try { //Fli2BeF4 + Uranium235 = 1x Uranium233 CORE.RA.addLFTRRecipe( - FluidUtils.getFluidStack("molten.LiFBeF2ZrF4U235".toLowerCase(), 144*64), //Fluid input (slot 1) + FluidUtils.getFluidStack("molten.LiFBeF2ZrF4U235".toLowerCase(), 144*32), //Fluid input (slot 1) FluidUtils.getFluidStack("molten.li2bef4", 144*12), //Fluid output (slot 2) FluidUtils.getFluidStack("molten.uraniumhexafluoride", 6*144), //Output Array of Items - Upto 9, 120*60*20, //Time in ticks @@ -351,13 +352,72 @@ public class RECIPES_GREGTECH { //Fli2BeF4 + Uranium233 TetraFluoride = Uranium233 CORE.RA.addLFTRRecipe( FluidUtils.getFluidStack("molten.LiFBeF2ThF4UF4".toLowerCase(), 200), //Fluid input (slot 1) - FluidUtils.getFluidStack("molten.li2bef4", 1000), //Fluid output (slot 2) + FluidUtils.getFluidStack("molten.li2bef4", 500), //Fluid output (slot 2) FluidUtils.getFluidStack("molten.uraniumhexafluoride", 1200), //Output Array of Items - Upto 9, 16000*20, //Time in ticks 4000); //EU }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} } + + private static void fissionFuelRecipes(){ + try { + + String salt_LiFBeF2ThF4UF4 = "LiFBeF2ThF4UF4".toLowerCase(); + String salt_LiFBeF2ZrF4U235 = "LiFBeF2ZrF4U235".toLowerCase(); + String salt_LiFBeF2ZrF4UF4 = "LiFBeF2ZrF4UF4".toLowerCase(); + + FluidStack LithiumFluoride = FluidUtils.getFluidStack("molten.lithiumtetrafluoride", 100); //Re-usable FluidStacks + FluidStack BerylliumFluoride = FluidUtils.getFluidStack("molten.berylliumtetrafluoride", 100); //Re-usable FluidStacks + FluidStack ThoriumFluoride = FluidUtils.getFluidStack("molten.thoriumtetrafluoride", 100); //Re-usable FluidStacks + FluidStack ZirconiumFluoride = FluidUtils.getFluidStack("molten.zirconiumtetrafluoride", 100); //Re-usable FluidStacks + FluidStack UraniumTetraFluoride = FluidUtils.getFluidStack("molten.uraniumtetrafluoride", 100); //Re-usable FluidStacks + FluidStack Uranium235 = FluidUtils.getFluidStack("molten.uranium235", 1000); //Re-usable FluidStacks + + FluidStack LiFBeF2ThF4UF4 = FluidUtils.getFluidStack("molten."+salt_LiFBeF2ThF4UF4, 100); //Re-usable FluidStacks + FluidStack LiFBeF2ZrF4U235 = FluidUtils.getFluidStack("molten."+salt_LiFBeF2ZrF4U235, 100); //Re-usable FluidStacks + FluidStack LiFBeF2ZrF4UF4 = FluidUtils.getFluidStack("molten."+salt_LiFBeF2ZrF4UF4, 100); //Re-usable FluidStacks + + //7LiF - BeF2 - ZrF4 - UF4 - 650C + CORE.RA.addFissionFuel( + FluidUtils.getFluidStack(LithiumFluoride, 6500), //Input A + FluidUtils.getFluidStack(BerylliumFluoride, 2500), //Input B + FluidUtils.getFluidStack(ZirconiumFluoride, 800), //Input C + FluidUtils.getFluidStack(UraniumTetraFluoride, 700), //Input D + null, null, null, null, null, //Extra 5 inputs + FluidUtils.getFluidStack(LiFBeF2ZrF4UF4, 10000), //Output Fluid 1 + null, //Output Fluid 2 + 60*60*20, //Duration + 4740); + + //7LiF - BeF2 - ZrF4 - U235 - 590C + CORE.RA.addFissionFuel( + FluidUtils.getFluidStack(LithiumFluoride, 5500), //Input A + FluidUtils.getFluidStack(BerylliumFluoride, 1500), //Input B + FluidUtils.getFluidStack(ZirconiumFluoride, 600), //Input C + FluidUtils.getFluidStack(Uranium235, 2400), //Input D + null, null, null, null, null, //Extra 5 inputs + FluidUtils.getFluidStack(LiFBeF2ZrF4U235, 10000), //Output Fluid 1 + null, //Output Fluid 2 + 45*60*20, //Duration + 4740); + + //7liF - BeF2 - ThF4 - UF4 - 566C + CORE.RA.addFissionFuel( + FluidUtils.getFluidStack(LithiumFluoride, 6200), //Input A + FluidUtils.getFluidStack(BerylliumFluoride, 2800), //Input B + FluidUtils.getFluidStack(ThoriumFluoride, 700), //Input C + FluidUtils.getFluidStack(UraniumTetraFluoride, 700), //Input D + null, null, null, null, null, //Extra 5 inputs + FluidUtils.getFluidStack(LiFBeF2ThF4UF4, 10000), //Output Fluid 1 + null, //Output Fluid 2 + 60*60*20, //Duration + 4740); + + + + }catch (NullPointerException e){Utils.LOG_INFO("FAILED TO LOAD RECIPES - NULL POINTER SOMEWHERE");} + } private static void assemblerRecipes(){ //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine2.get(1L, new Object[0]), 50, 16); 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 9eaf13dca3..59426aae36 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 @@ -95,5 +95,13 @@ public interface IGregtech_RecipeAdder { public boolean addLFTRRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt); public boolean addLFTRRecipe(ItemStack aInput1, FluidStack aInput2, ItemStack aOutput1, FluidStack aOutput2, int aDuration, int aEUt); public boolean addLFTRRecipe(FluidStack aInput1, FluidStack aInput2, FluidStack aOutput1, int aDuration, int aEUt); + + + public boolean addFissionFuel( + FluidStack aInput1, FluidStack aInput2, FluidStack aInput3, + FluidStack aInput4, FluidStack aInput5, FluidStack aInput6, + FluidStack aInput7, FluidStack aInput8, FluidStack aInput9, + FluidStack aOutput1, FluidStack aOutput2, + int aDuration, int aEUt); } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java index 9fa070a4f8..4c31c51fe6 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java @@ -303,4 +303,21 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return true; } + @Override + public boolean addFissionFuel( + FluidStack aInput1, FluidStack aInput2, FluidStack aInput3, + FluidStack aInput4, FluidStack aInput5, FluidStack aInput6, + FluidStack aInput7, FluidStack aInput8, FluidStack aInput9, + FluidStack aOutput1, FluidStack aOutput2, + int aDuration, int aEUt) { + + if (aInput1 == null || aInput2 == null || aOutput1 == null || aDuration < 1 || aEUt < 1) { + return false; + } + FluidStack inputs[] = {aInput1, aInput2, aInput3, aInput4, aInput5, aInput6, aInput7, aInput8, aInput9}; + FluidStack outputs[] = {aOutput1, aOutput2}; + Recipe_GT.Gregtech_Recipe_Map.sFissionFuelProcessing.addRecipe(null, inputs, outputs, aDuration, aEUt, 0); + return true; + } + } |