diff options
author | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2021-12-07 14:37:22 +0000 |
---|---|---|
committer | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2021-12-07 14:37:22 +0000 |
commit | 43e67b5f97543c2a1ea51b89ed745d0773f94751 (patch) | |
tree | 989d74129ab372f798f2a899d38e353b4480b8a5 /src/Java/gtPlusPlus/core/material | |
parent | a00d9f9245db7dc0c425044c0aeff84d15092dfd (diff) | |
download | GT5-Unofficial-43e67b5f97543c2a1ea51b89ed745d0773f94751.tar.gz GT5-Unofficial-43e67b5f97543c2a1ea51b89ed745d0773f94751.tar.bz2 GT5-Unofficial-43e67b5f97543c2a1ea51b89ed745d0773f94751.zip |
Added more nuclear processing recipes.
Removed lots of useless nuclear generated items.
More NEI improvements.
Made Dehydrator and FFPP recipe handling more lenient.
Diffstat (limited to 'src/Java/gtPlusPlus/core/material')
-rw-r--r-- | src/Java/gtPlusPlus/core/material/Material.java | 27 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/material/MaterialGenerator.java | 45 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/material/ORES.java | 9 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java | 65 |
4 files changed, 126 insertions, 20 deletions
diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java index 404c5c7918..cc7e21656b 100644 --- a/src/Java/gtPlusPlus/core/material/Material.java +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -49,7 +49,7 @@ public class Material { private MaterialState materialState; private TextureSet textureSet; - private Fluid vMoltenFluid; + private Fluid mFluid; private Fluid vPlasma; private boolean vGenerateCells; @@ -478,7 +478,7 @@ public class Material { final Materials isValid = Materials.get(this.getLocalizedName()); FluidStack aTest = FluidUtils.getWildcardFluidStack(localizedName, 1); if (aTest != null){ - this.vMoltenFluid = aTest.getFluid(); + this.mFluid = aTest.getFluid(); } else { if (isValid == null || isValid == Materials._NULL){ @@ -487,7 +487,7 @@ public class Material { else { FluidStack aTest2 = FluidUtils.getWildcardFluidStack(localizedName, 1); if (aTest2 != null){ - this.vMoltenFluid = aTest2.getFluid(); + this.mFluid = aTest2.getFluid(); } else { queueFluidGeneration(); @@ -497,7 +497,7 @@ public class Material { this.vPlasma = this.generatePlasma(); } else { - this.vMoltenFluid = null; + this.mFluid = null; this.vPlasma = null; } String ratio = ""; @@ -1104,7 +1104,7 @@ public class Material { public final static void generateQueuedFluids() { for (Material m : mMaterialMap) { if (m.isFluidQueued) { - m.vMoltenFluid = m.generateFluid(); + m.mFluid = m.generateFluid(); } } } @@ -1249,18 +1249,21 @@ public class Material { } + public Fluid getFluid() { + return mFluid; + } - final public FluidStack getFluid(final int fluidAmount) { - if (this.vMoltenFluid == null){ + final public FluidStack getFluidStack(final int fluidAmount) { + if (this.mFluid == null){ return null; } - final FluidStack moltenFluid = new FluidStack(this.vMoltenFluid, fluidAmount); + final FluidStack moltenFluid = new FluidStack(this.mFluid, fluidAmount); return moltenFluid; } final public boolean setFluid(Fluid aFluid) { - if (this.vMoltenFluid == null){ - this.vMoltenFluid = aFluid; + if (this.mFluid == null){ + this.mFluid = aFluid; return true; } return false; @@ -1353,8 +1356,8 @@ public class Material { } private static boolean registerComponentForMaterial(Material componentMaterial, FluidStack aStack) { - if (componentMaterial != null && aStack != null && componentMaterial.vMoltenFluid == null) { - componentMaterial.vMoltenFluid = aStack.getFluid(); + if (componentMaterial != null && aStack != null && componentMaterial.mFluid == null) { + componentMaterial.mFluid = aStack.getFluid(); return true; } return false; diff --git a/src/Java/gtPlusPlus/core/material/MaterialGenerator.java b/src/Java/gtPlusPlus/core/material/MaterialGenerator.java index 68026d1cac..4a3af94f6d 100644 --- a/src/Java/gtPlusPlus/core/material/MaterialGenerator.java +++ b/src/Java/gtPlusPlus/core/material/MaterialGenerator.java @@ -29,7 +29,10 @@ import gtPlusPlus.core.item.base.rods.BaseItemRod; import gtPlusPlus.core.item.base.rods.BaseItemRodLong; import gtPlusPlus.core.item.base.rotors.BaseItemRotor; import gtPlusPlus.core.item.base.screws.BaseItemScrew; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.material.nuclear.FLUORIDES; import gtPlusPlus.core.material.state.MaterialState; +import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; @@ -262,13 +265,47 @@ public class MaterialGenerator { generateNuclearMaterial(matInfo, true); } + + public static void generateNuclearDusts(final Material matInfo){ + generateNuclearDusts(matInfo, true); + } + + public static void generateNuclearDusts(final Material matInfo, boolean generateDehydratorRecipe){ + generateNuclearMaterial(matInfo, false, true, false, false); + if (generateDehydratorRecipe && matInfo.getFluid() != null && matInfo.getDust(0) != null) { + CORE.RA.addDehydratorRecipe( + new ItemStack[] { + + }, + matInfo.getFluidStack(144), + null, + new ItemStack[] { + matInfo.getDust(1), + }, + new int[] { 10000 }, + 10*(matInfo.vVoltageMultiplier/5), // Time in ticks + matInfo.vVoltageMultiplier); // EU + } + } + public static void generateNuclearMaterial(final Material matInfo, final boolean generatePlates){ + generateNuclearMaterial(matInfo, true, true, true, generatePlates); + } + + public static void generateNuclearMaterial(final Material matInfo, final boolean generateBlock, + final boolean generateDusts, final boolean generateIngot, final boolean generatePlates){ try { - tempBlock = new BlockBaseModular(matInfo,BlockTypes.STANDARD); - temp = new BaseItemDust(matInfo); - temp = new BaseItemIngot(matInfo); - temp = new BaseItemNugget(matInfo); + if (generateBlock) { + tempBlock = new BlockBaseModular(matInfo,BlockTypes.STANDARD); + } + if (generateDusts) { + temp = new BaseItemDust(matInfo); + } + if (generateIngot) { + temp = new BaseItemIngot(matInfo); + temp = new BaseItemNugget(matInfo); + } if (generatePlates) { temp = new BaseItemPlate(matInfo); diff --git a/src/Java/gtPlusPlus/core/material/ORES.java b/src/Java/gtPlusPlus/core/material/ORES.java index c2556b60f1..363708859f 100644 --- a/src/Java/gtPlusPlus/core/material/ORES.java +++ b/src/Java/gtPlusPlus/core/material/ORES.java @@ -263,10 +263,11 @@ public final class ORES { -1, -1, //Radiation new MaterialStack[]{ - new MaterialStack(ELEMENT.getInstance().YTTRIUM, 1), - new MaterialStack(ELEMENT.getInstance().YTTERBIUM, 1), - new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 1), - new MaterialStack(ELEMENT.getInstance().OXYGEN, 4) + new MaterialStack(ELEMENT.getInstance().YTTRIUM, 2), + new MaterialStack(ELEMENT.getInstance().YTTERBIUM, 2), + new MaterialStack(ELEMENT.getInstance().EUROPIUM, 1), + new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 2), + new MaterialStack(ELEMENT.getInstance().OXYGEN, 8) }); public static final Material YTTRIALITE = new Material( diff --git a/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java b/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java index 9e59758f73..8fe99f16e7 100644 --- a/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java +++ b/src/Java/gtPlusPlus/core/material/nuclear/NUCLIDE.java @@ -10,6 +10,24 @@ import gtPlusPlus.core.util.data.StringUtils; public final class NUCLIDE { + public static final Material Li2BeF4 = new Material( + "Lithium Tetrafluoroberyllate", //Material Name + MaterialState.LIQUID, //State + TextureSets.NUCLEAR.get(), + null, //Material Colour + 566, //Melting Point in C + 870, //Boiling Point in C + -1, //Protons + -1, //Neutrons + false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"Li2BeF4"), //Chemical Formula + 4, //Radioactivity Level + //Material Stacks with Percentage of required elements. + new MaterialStack[]{ + new MaterialStack(FLUORIDES.LITHIUM_FLUORIDE, 2), + new MaterialStack(FLUORIDES.BERYLLIUM_FLUORIDE, 1) + }); + public static final Material LiFBeF2ThF4UF4 = new Material( "LiFBeF2ThF4UF4", //Material Name MaterialState.LIQUID, //State @@ -70,6 +88,44 @@ public final class NUCLIDE { new MaterialStack(ELEMENT.getInstance().URANIUM235, 14) }); + // Misc + public static final Material BurntLftrFuel_MK1 = new Material( + "Burnt Reactor Fuel I", //Material Name + MaterialState.PURE_LIQUID, //State + null, //Material Colour + -1, //Melting Point in C + -1, //Boiling Point in C + -1, //Protons + -1, //Neutrons + false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"LiBeF2UF4FP"), //Chemical Formula + //Material Stacks with Percentage of required elements. + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().LITHIUM, 1), + new MaterialStack(FLUORIDES.BERYLLIUM_FLUORIDE, 1), + new MaterialStack(FLUORIDES.URANIUM_TETRAFLUORIDE, 1), + new MaterialStack(ELEMENT.getInstance().PROTACTINIUM, 1) + }); + + public static final Material BurntLftrFuel_MK2 = new Material( + "Burnt Reactor Fuel II", //Material Name + MaterialState.PURE_LIQUID, //State + null, //Material Colour + -1, //Melting Point in C + -1, //Boiling Point in C + -1, //Protons + -1, //Neutrons + false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"LiBeF2UF4FP"), //Chemical Formula + //Material Stacks with Percentage of required elements. + new MaterialStack[]{ + new MaterialStack(ELEMENT.getInstance().LITHIUM, 1), + new MaterialStack(FLUORIDES.BERYLLIUM_FLUORIDE, 1), + new MaterialStack(FLUORIDES.URANIUM_TETRAFLUORIDE, 1), + new MaterialStack(ELEMENT.getInstance().PROTACTINIUM, 1) + }); + + // LFTR Core Fluids public static final Material LiBeF2UF4FP = new Material( @@ -81,6 +137,7 @@ public final class NUCLIDE { -1, //Protons -1, //Neutrons false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"LiBeF2UF4FP"), //Chemical Formula //Material Stacks with Percentage of required elements. new MaterialStack[]{ new MaterialStack(ELEMENT.getInstance().LITHIUM, 1), @@ -98,6 +155,7 @@ public final class NUCLIDE { -1, //Protons -1, //Neutrons false, //Uses Blast furnace? + StringUtils.subscript("UF6F2FP"), //Chemical Formula //Material Stacks with Percentage of required elements. new MaterialStack[]{ new MaterialStack(FLUORIDES.URANIUM_HEXAFLUORIDE, 1), @@ -114,6 +172,7 @@ public final class NUCLIDE { -1, //Protons -1, //Neutrons false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"LiFBeF2"), //Chemical Formula //Material Stacks with Percentage of required elements. new MaterialStack[]{ new MaterialStack(FLUORIDES.LITHIUM_FLUORIDE, 1), @@ -129,6 +188,7 @@ public final class NUCLIDE { -1, //Protons -1, //Neutrons false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"LiFBeF2UF4"), //Chemical Formula //Material Stacks with Percentage of required elements. new MaterialStack[]{ new MaterialStack(LiFBeF2, 1), @@ -142,6 +202,7 @@ public final class NUCLIDE { // LFTR Blanket Fluids + // Tier 1 Fuel blanket output public static final Material LiFThF4 = new Material( "LiFThF4", //Material Name MaterialState.PURE_LIQUID, //State @@ -151,12 +212,14 @@ public final class NUCLIDE { -1, //Protons -1, //Neutrons false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"LiFThF4"), //Chemical Formula //Material Stacks with Percentage of required elements. new MaterialStack[]{ new MaterialStack(FLUORIDES.LITHIUM_FLUORIDE, 1), new MaterialStack(FLUORIDES.THORIUM_TETRAFLUORIDE, 1) }); + // Tier 2 Fuel blanket output public static final Material LiFBeF2ThF4 = new Material( "LiFBeF2ThF4", //Material Name MaterialState.PURE_LIQUID, //State @@ -166,6 +229,7 @@ public final class NUCLIDE { -1, //Protons -1, //Neutrons false, //Uses Blast furnace? + StringUtils.subscript(StringUtils.superscript("7")+"LiFBeF2ThF4"), //Chemical Formula //Material Stacks with Percentage of required elements. new MaterialStack[]{ new MaterialStack(FLUORIDES.LITHIUM_FLUORIDE, 1), @@ -182,6 +246,7 @@ public final class NUCLIDE { -1, //Protons -1, //Neutrons false, //Uses Blast furnace? + StringUtils.subscript("UF6F2"), //Chemical Formula //Material Stacks with Percentage of required elements. new MaterialStack[]{ new MaterialStack(FLUORIDES.URANIUM_HEXAFLUORIDE, 1), |