aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGlodBlock <1356392126@qq.com>2022-01-25 22:04:51 +0800
committerGlodBlock <1356392126@qq.com>2022-01-25 22:04:51 +0800
commita628cfde78df9f419510aca196a8b8e67164eb16 (patch)
treedb9cc888e2769b6ad5b62e11712243e806c8abc0 /src
parentbcacfedb7fe471a00a430459efe04790f92a5f5b (diff)
downloadGT5-Unofficial-a628cfde78df9f419510aca196a8b8e67164eb16.tar.gz
GT5-Unofficial-a628cfde78df9f419510aca196a8b8e67164eb16.tar.bz2
GT5-Unofficial-a628cfde78df9f419510aca196a8b8e67164eb16.zip
finish the XHE recipe and running system
Diffstat (limited to 'src')
-rw-r--r--src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java13
-rw-r--r--src/main/java/goodgenerator/blocks/tileEntity/ExtremeHeatExchanger.java96
-rw-r--r--src/main/java/goodgenerator/loader/Loaders.java4
-rw-r--r--src/main/java/goodgenerator/loader/RecipeLoader_02.java51
-rw-r--r--src/main/java/goodgenerator/main/GoodGenerator.java1
-rw-r--r--src/main/java/goodgenerator/util/MyRecipeAdder.java74
-rw-r--r--src/main/resources/assets/goodgenerator/lang/en_US.lang14
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.flowing.pngbin7348 -> 0 bytes
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.still.pngbin7348 -> 0 bytes
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.flowing.pngbin0 -> 7252 bytes
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.flowing.png.mcmeta (renamed from src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.flowing.png.mcmeta)0
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.still.pngbin0 -> 7252 bytes
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.still.png.mcmeta (renamed from src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.still.png.mcmeta)0
13 files changed, 230 insertions, 23 deletions
diff --git a/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java b/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java
index 57923a99ad..eb7879200f 100644
--- a/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java
+++ b/src/main/java/goodgenerator/blocks/myFluids/FluidsBuilder.java
@@ -24,6 +24,7 @@ public class FluidsBuilder {
crackedNaquadahAsphalt_Heavily();
combustionPromotor();
coalTar();
+ supercriticalSteam();
}
public static void crackedNaquadahGas_Lightly(){
@@ -186,4 +187,16 @@ public class FluidsBuilder {
GameRegistry.registerBlock(tmp2,"coalTar");
NEI_Config.hide(tmp2);
}
+
+ public static void supercriticalSteam(){
+ Fluid tmp = BaseFluid.BuildFluid("supercriticalSteam");
+ tmp.setGaseous(true)
+ .setTemperature(648)
+ .setUnlocalizedName("supercriticalSteam");
+ BaseFluid tmp2 = new BaseFluid(tmp, Material.water);
+ tmp2.SetTexture("supercriticalSteam");
+ tmp2.setBlockTextureName("supercriticalSteam");
+ GameRegistry.registerBlock(tmp2,"supercriticalSteam");
+ NEI_Config.hide(tmp2);
+ }
}
diff --git a/src/main/java/goodgenerator/blocks/tileEntity/ExtremeHeatExchanger.java b/src/main/java/goodgenerator/blocks/tileEntity/ExtremeHeatExchanger.java
index 02d0cfa17a..13f7919100 100644
--- a/src/main/java/goodgenerator/blocks/tileEntity/ExtremeHeatExchanger.java
+++ b/src/main/java/goodgenerator/blocks/tileEntity/ExtremeHeatExchanger.java
@@ -6,6 +6,7 @@ import com.gtnewhorizon.structurelib.structure.IStructureDefinition;
import com.gtnewhorizon.structurelib.structure.StructureDefinition;
import goodgenerator.loader.Loaders;
import goodgenerator.util.DescTextLocalization;
+import goodgenerator.util.MyRecipeAdder;
import gregtech.api.GregTech_API;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
@@ -14,6 +15,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output;
import gregtech.api.render.TextureFactory;
+import gregtech.api.util.GT_Log;
+import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Utility;
import ic2.core.Ic2Items;
@@ -22,10 +25,13 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
+import net.minecraftforge.fluids.Fluid;
+import net.minecraftforge.fluids.FluidStack;
import org.lwjgl.input.Keyboard;
import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
import static goodgenerator.util.DescTextLocalization.BLUE_PRINT_INFO;
+import static gregtech.api.enums.GT_Values.V;
import static gregtech.api.enums.Textures.BlockIcons.*;
import static gregtech.api.util.GT_StructureUtility.ofHatchAdder;
@@ -33,12 +39,13 @@ public class ExtremeHeatExchanger extends GT_MetaTileEntity_MultiblockBase_EM im
protected IStructureDefinition<ExtremeHeatExchanger> multiDefinition = null;
- public static float penalty_per_config = 0.015f;
+ public static double penalty_per_config = 0.015d;
protected int casingAmount = 0;
protected GT_MetaTileEntity_Hatch_Input mHotFluidHatch;
protected GT_MetaTileEntity_Hatch_Output mCooledFluidHatch;
private boolean transformed = false;
- private int transformed_threshold = 0;
+ private String hotName;
+ private MyRecipeAdder.ExtremeHeatExchangerRecipe tRunningRecipe;
public ExtremeHeatExchanger(String name) {
super(name);
@@ -180,12 +187,17 @@ public class ExtremeHeatExchanger extends GT_MetaTileEntity_MultiblockBase_EM im
@Override
public void loadNBTData(NBTTagCompound aNBT) {
transformed = aNBT.getBoolean("transformed");
+ hotName = aNBT.getString("hotName");
+ if (hotName != null) {
+ tRunningRecipe = MyRecipeAdder.mXHeatExchangerFuelMap.get(new Fluid(hotName));
+ }
super.loadNBTData(aNBT);
}
@Override
public void saveNBTData(NBTTagCompound aNBT) {
aNBT.setBoolean("transformed", transformed);
+ aNBT.setString("hotName", hotName);
super.saveNBTData(aNBT);
}
@@ -203,19 +215,17 @@ public class ExtremeHeatExchanger extends GT_MetaTileEntity_MultiblockBase_EM im
tt.addMachineType("Heat Exchanger/Plasma Heat Exchanger")
.addInfo("Controller block for the Extreme Heat Exchanger.")
.addInfo("Accept Hot fluid like lava, hot coolant or plasma.")
- .addInfo("Output SC Steam/SH Steam/Steam ot other working fluid.")
- .addInfo("Works like the normal Heat Exchanger with lava and hot coolant,")
- .addInfo("but max input/output speed and threshold value is x10.")
+ .addInfo("Output SC Steam/SH Steam/Steam.")
.addInfo("Check NEI for more info.")
.addInfo(BLUE_PRINT_INFO)
.addSeparator()
.addController("Front bottom")
- .addOtherStructurePart("Input Hatch: distilled water or other working fluid", "Hint block with dot 1")
- .addOtherStructurePart("Output Hatch: SC Steam/SH Steam/Steam or other heated working fluid", "Hint block with dot 2")
+ .addOtherStructurePart("Input Hatch: distilled water", "Hint block with dot 1")
+ .addOtherStructurePart("Output Hatch: SC Steam/SH Steam/Steam", "Hint block with dot 2")
.addOtherStructurePart("Input Hatch: Hot fluid or plasma", "Hint block with dot 3")
.addOtherStructurePart("Output Hatch: Cold fluid", "Hint block with dot 4")
.addMaintenanceHatch("Any Casing")
- .addCasingInfo("obust Tungstensteel Machine Casings", 25)
+ .addCasingInfo("Robust Tungstensteel Machine Casings", 25)
.toolTipFinisher("Good Generator");
if (!Keyboard.isKeyDown(Keyboard.KEY_LSHIFT)) {
return tt.getInformation();
@@ -226,11 +236,72 @@ public class ExtremeHeatExchanger extends GT_MetaTileEntity_MultiblockBase_EM im
@Override
public boolean checkRecipe_EM(ItemStack aStack) {
- this.mEfficiencyIncrease = 80;
+ tRunningRecipe = null;
+ if (mHotFluidHatch.getFluid() == null)
+ return true;
+ MyRecipeAdder.ExtremeHeatExchangerRecipe tRecipe = MyRecipeAdder.mXHeatExchangerFuelMap.get(mHotFluidHatch.getFluid().getFluid());
+ if (tRecipe == null)
+ return false;
+ tRunningRecipe = tRecipe;
+ this.hotName = mHotFluidHatch.getFluid().getFluid().getName();
+ int tMaxConsume = tRecipe.getMaxHotFluidConsume();
+ int transformed_threshold = tRecipe.mSpecialValue;
+ int tRealConsume = Math.min(tMaxConsume, mHotFluidHatch.getFluid().amount);
+ double penalty = 0.0d;
+ double efficiency = 1d;
+ int shs_reduction_per_config = 150;
+
+ if (mInventory[1] != null && mInventory[1].getUnlocalizedName().startsWith("gt.integrated_circuit")) {
+ int circuit_config = mInventory[1].getItemDamage();
+ if (circuit_config >= 1 && circuit_config <= 25) {
+ penalty = (circuit_config - 1) * penalty_per_config;
+ transformed_threshold -= (shs_reduction_per_config * (circuit_config - 1));
+ }
+ }
+ efficiency -= penalty;
+
+ if (transformed_threshold <= 0)
+ transformed_threshold = 1;
+
+ transformed = tRealConsume >= transformed_threshold;
+
+ this.mMaxProgresstime = 20;
+ this.mEUt = (int) (tRecipe.getEUt() * efficiency * ((double) tRealConsume / (double) tMaxConsume));
+ mHotFluidHatch.drain(tRealConsume, true);
+ mCooledFluidHatch.fill(new FluidStack(tRecipe.getCooledFluid(), tRealConsume), true);
+ this.mEfficiencyIncrease = 160;
+
return true;
}
@Override
+ public boolean onRunningTick(ItemStack aStack) {
+ if (this.mEUt > 0 && tRunningRecipe != null) {
+ Fluid tReadySteam = transformed ? tRunningRecipe.getHeatedSteam() : tRunningRecipe.getNormalSteam();
+ int waterAmount = (int) (this.mEUt / getUnitSteamPower(tReadySteam.getName())) / 160;
+ if (waterAmount < 0) return false;
+ if (depleteInput(GT_ModHandler.getDistilledWater(waterAmount))) {
+ addOutput(new FluidStack(tReadySteam, waterAmount * 160));
+ }
+ else {
+ GT_Log.exp.println(this.mName+" had no more Distilled water!");
+ mHotFluidHatch.getBaseMetaTileEntity().doExplosion(V[8]);
+ return false;
+ }
+ }
+ return true;
+ }
+
+ public double getUnitSteamPower(String steam) {
+ switch (steam) {
+ case "steam": return 0.5;
+ case "ic2superheatedsteam": return 1;
+ case "supercriticalsteam": return 100;
+ default: return -1;
+ }
+ }
+
+ @Override
public void construct(ItemStack stackSize, boolean hintsOnly) {
structureBuild_EM(mName, 2, 5, 0, hintsOnly, stackSize);
}
@@ -252,6 +323,7 @@ public class ExtremeHeatExchanger extends GT_MetaTileEntity_MultiblockBase_EM im
@Override
public String[] getInfoData() {
+ int tThreshold = tRunningRecipe != null ? tRunningRecipe.mSpecialValue : 0;
return new String[]{
StatCollector.translateToLocal("GT5U.multiblock.Progress") + ": " +
EnumChatFormatting.GREEN + GT_Utility.formatNumbers(mProgresstime / 20) + EnumChatFormatting.RESET + " s / " +
@@ -259,7 +331,11 @@ public class ExtremeHeatExchanger extends GT_MetaTileEntity_MultiblockBase_EM im
StatCollector.translateToLocal("GT5U.multiblock.problems") + ": " +
EnumChatFormatting.RED + (getIdealStatus() - getRepairStatus()) + EnumChatFormatting.RESET + " " +
StatCollector.translateToLocal("GT5U.multiblock.efficiency") + ": " +
- EnumChatFormatting.YELLOW + mEfficiency / 100.0F + EnumChatFormatting.RESET + " %"
+ EnumChatFormatting.YELLOW + mEfficiency / 100.0F + EnumChatFormatting.RESET + " %",
+ StatCollector.translateToLocal("scanner.info.XHE.0") + " " +
+ (transformed ? EnumChatFormatting.RED : EnumChatFormatting.YELLOW) + GT_Utility.formatNumbers(this.mEUt) + EnumChatFormatting.RESET + " EU/t",
+ StatCollector.translateToLocal("scanner.info.XHE.1") + " " +
+ EnumChatFormatting.GREEN + GT_Utility.formatNumbers(tThreshold) + EnumChatFormatting.RESET + " L/s"
};
}
diff --git a/src/main/java/goodgenerator/loader/Loaders.java b/src/main/java/goodgenerator/loader/Loaders.java
index 86e706d891..228bd2d5c2 100644
--- a/src/main/java/goodgenerator/loader/Loaders.java
+++ b/src/main/java/goodgenerator/loader/Loaders.java
@@ -213,6 +213,10 @@ public class Loaders {
postInitLoadRecipes();
}
+ public static void completeLoad(){
+ RecipeLoader_02.FinishLoadRecipe();
+ }
+
public static void initLoadRecipes(){
RecipeLoader.InitLoadRecipe();
RecipeLoader_02.InitLoadRecipe();
diff --git a/src/main/java/goodgenerator/loader/RecipeLoader_02.java b/src/main/java/goodgenerator/loader/RecipeLoader_02.java
index a4c80fcdd5..1f00fce0e3 100644
--- a/src/main/java/goodgenerator/loader/RecipeLoader_02.java
+++ b/src/main/java/goodgenerator/loader/RecipeLoader_02.java
@@ -5,13 +5,12 @@ import goodgenerator.items.MyMaterial;
import goodgenerator.util.CrackRecipeAdder;
import goodgenerator.util.ItemRefer;
import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
+import goodgenerator.util.MyRecipeAdder;
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;
-import gregtech.api.util.GT_Utility;
+import gregtech.api.util.*;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
@@ -887,6 +886,24 @@ public class RecipeLoader_02 {
220,
7680
);
+
+ MyRecipeAdder.instance.addExtremeHeatExchangerRecipe(
+ FluidRegistry.getFluidStack("lava", 20000),
+ FluidRegistry.getFluidStack("ic2pahoehoelava", 20000),
+ FluidRegistry.getFluidStack("ic2distilledwater", 20000),
+ FluidRegistry.getFluidStack("steam", 3200000),
+ FluidRegistry.getFluidStack("ic2superheatedsteam", 1600000),
+ 10000
+ );
+
+ MyRecipeAdder.instance.addExtremeHeatExchangerRecipe(
+ FluidRegistry.getFluidStack("ic2hotcoolant", 16000),
+ FluidRegistry.getFluidStack("ic2coolant", 16000),
+ FluidRegistry.getFluidStack("ic2distilledwater", 20000),
+ FluidRegistry.getFluidStack("ic2superheatedsteam", 3200000),
+ FluidRegistry.getFluidStack("supercriticalsteam", 32000),
+ 8000
+ );
}
public static void InitLoadRecipe() {
@@ -1052,4 +1069,32 @@ public class RecipeLoader_02 {
7680
);
}
+
+ public static void FinishLoadRecipe() {
+ for (GT_Recipe plasmaFuel : GT_Recipe.GT_Recipe_Map.sPlasmaFuels.mRecipeList) {
+ FluidStack tPlasma = GT_Utility.getFluidForFilledItem(plasmaFuel.mInputs[0], true);
+ if (tPlasma == null) {
+ continue;
+ }
+ tPlasma.amount = 100;
+ String tPlasmaName = FluidRegistry.getFluidName(tPlasma);
+ int tUnit = plasmaFuel.mSpecialValue;
+ if (tPlasmaName.split("\\.", 2).length == 2) {
+ String tOutName = tPlasmaName.split("\\.", 2)[1];
+ FluidStack output = FluidRegistry.getFluidStack(tOutName, tPlasma.amount);
+ if (output == null)
+ output = FluidRegistry.getFluidStack("molten." + tOutName, tPlasma.amount);
+ if (output != null) {
+ MyRecipeAdder.instance.addExtremeHeatExchangerRecipe(
+ tPlasma,
+ output,
+ FluidRegistry.getFluidStack("ic2distilledwater", tUnit * 100),
+ FluidRegistry.getFluidStack("ic2superheatedsteam", tUnit * 100),
+ FluidRegistry.getFluidStack("supercriticalsteam", tUnit),
+ 1
+ );
+ }
+ }
+ }
+ }
}
diff --git a/src/main/java/goodgenerator/main/GoodGenerator.java b/src/main/java/goodgenerator/main/GoodGenerator.java
index 1daa7dfedb..b818aa0647 100644
--- a/src/main/java/goodgenerator/main/GoodGenerator.java
+++ b/src/main/java/goodgenerator/main/GoodGenerator.java
@@ -65,6 +65,7 @@ public final class GoodGenerator {
public void onLoadComplete(FMLLoadCompleteEvent event) {
//NaquadahReworkRecipeLoader.SmallRecipeChange();
NaquadahReworkRecipeLoader.Remover();
+ Loaders.completeLoad();
}
public static void crossMod() {
diff --git a/src/main/java/goodgenerator/util/MyRecipeAdder.java b/src/main/java/goodgenerator/util/MyRecipeAdder.java
index 59bce6220c..231a93a27b 100644
--- a/src/main/java/goodgenerator/util/MyRecipeAdder.java
+++ b/src/main/java/goodgenerator/util/MyRecipeAdder.java
@@ -5,10 +5,12 @@ import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import net.minecraft.item.ItemStack;
import net.minecraft.util.StatCollector;
+import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.HashMap;
import java.util.HashSet;
public class MyRecipeAdder {
@@ -113,6 +115,8 @@ public class MyRecipeAdder {
NA.addNARecipe(input1, input2, output1, output2, ticks, maxNKE * 10000 + minNKE);
}
+ public static HashMap<Fluid, ExtremeHeatExchangerRecipe> mXHeatExchangerFuelMap = new HashMap<>();
+
public static class ExtremeHeatExchangerMapper extends GT_Recipe.GT_Recipe_Map {
public ExtremeHeatExchangerMapper(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, boolean aNEIAllowed){
super(aRecipeList, aUnlocalizedName, aLocalName, aNEIName, aNEIGUIPath, aUsualInputCount, aUsualOutputCount, aMinimalInputItems, aMinimalInputFluids, aAmperage, aNEISpecialValuePre, aNEISpecialValueMultiplier, aNEISpecialValuePost, aShowVoltageAmperageInNEI, aNEIAllowed);
@@ -120,7 +124,9 @@ public class MyRecipeAdder {
@Override
public GT_Recipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return addRecipe(new ExtremeHeatExchangerRecipe(aFluidInputs, aFluidOutputs, aSpecialValue));
+ ExtremeHeatExchangerRecipe tRecipe = new ExtremeHeatExchangerRecipe(aFluidInputs, aFluidOutputs, aSpecialValue);
+ mXHeatExchangerFuelMap.put(aFluidInputs[0].getFluid(), tRecipe);
+ return addRecipe(tRecipe);
}
}
@@ -137,12 +143,70 @@ public class MyRecipeAdder {
inputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[0], true), 22, 3));
inputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[1], true), 22, 27));
}
+ return inputStacks;
+ }
+
+ @Override
+ public ArrayList<PositionedStack> getOutputPositionedStacks() {
+ ArrayList<PositionedStack> outputStacks = new ArrayList<>();
if (this.mFluidOutputs != null && this.mFluidOutputs.length == 3) {
- inputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[0], true), 124, 3));
- inputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[1], true), 124, 21));
- inputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[2], true), 124, 44));
+ outputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[0], true), 124, 3));
+ outputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[1], true), 124, 21));
+ outputStacks.add(new PositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[2], true), 124, 44));
}
- return inputStacks;
+ return outputStacks;
+ }
+
+ public int getMaxHotFluidConsume() {
+ if (this.mFluidInputs != null) {
+ return this.mFluidInputs[0].amount;
+ }
+ return 0;
+ }
+
+ public Fluid getNormalSteam() {
+ if (this.mFluidOutputs != null) {
+ return this.mFluidOutputs[0].getFluid();
+ }
+ return null;
+ }
+
+ public Fluid getHeatedSteam() {
+ if (this.mFluidOutputs != null) {
+ return this.mFluidOutputs[1].getFluid();
+ }
+ return null;
+ }
+
+ public Fluid getCooledFluid() {
+ if (this.mFluidOutputs != null) {
+ return this.mFluidOutputs[2].getFluid();
+ }
+ return null;
+ }
+
+ public int getEUt() {
+ if (getNormalSteam() != null) {
+ switch (getNormalSteam().getName()) {
+ case "steam": {
+ int tVal = this.mFluidInputs[1].amount * 4;
+ if (tVal < 0) tVal = -tVal;
+ return tVal;
+ }
+ case "ic2superheatedsteam": {
+ int tVal = this.mFluidInputs[1].amount * 8;
+ if (tVal < 0) tVal = -tVal;
+ return tVal;
+ }
+ case "supercriticalsteam": {
+ int tVal = this.mFluidInputs[1].amount * 800;
+ if (tVal < 0) tVal = -tVal;
+ return tVal;
+ }
+ default: return 0;
+ }
+ }
+ return 0;
}
}
diff --git a/src/main/resources/assets/goodgenerator/lang/en_US.lang b/src/main/resources/assets/goodgenerator/lang/en_US.lang
index 48a93ecfa1..e3e9900a32 100644
--- a/src/main/resources/assets/goodgenerator/lang/en_US.lang
+++ b/src/main/resources/assets/goodgenerator/lang/en_US.lang
@@ -130,6 +130,7 @@ fluid.moderatelyCrackedNaquadahAsphalt=Moderately Cracked Naquadah Asphalt
fluid.heavilyCrackedNaquadahAsphalt=Severely Cracked Naquadah Asphalt
fluid.combustionPromotor=Combustion Promoter
fluid.fluid.coalTar=Coal Tar
+fluid.supercriticalSteam=Supercritical Steam
fluid.Naquadah Based Liquid Fuel MkI (Depleted)=Naquadah Based Liquid Fuel MkI (Depleted)
fluid.Acid Naquadah Emulsion=Acid Naquadah Emulsion
fluid.Antimony Pentafluoride=Antimony Pentafluoride
@@ -196,6 +197,7 @@ tile.moderatelyCrackedNaquadahAsphalt.name=Moderately Cracked Naquadah Asphalt
tile.heavilyCrackedNaquadahAsphalt.name=Severely Cracked Naquadah Asphalt
tile.combustionPromotor.name=Combustion Promoter
tile.coalTar.name=Coal Tar
+tile.supercriticalSteam.name=Supercritical Steam
#Tab Name
itemGroup.Good Generator=Good Generator
@@ -207,6 +209,8 @@ scanner.info.NA=Current Neutron Kinetic Energy:
scanner.info.YOTTank.0=Current Capacity:
scanner.info.YOTTank.1=Fluid Name:
scanner.info.YOTTank.2=Current Used:
+scanner.info.XHE.0=Steam Output is equal to
+scanner.info.XHE.1=Overheated Threshold:
#GUI Info
gui.NeutronSensor.0=Input the value of Neutron Kinetic Energy.
@@ -231,9 +235,9 @@ value.neutron_activator.0=Minimum Neutron Kinetic Energy:
value.neutron_activator.1=Maximum Neutron Kinetic Energy:
value.neutron_activator.2= MeV
value.extreme_heat_exchanger.0=Max Hot Fluid Input:
-value.extreme_heat_exchanger.1=Max Working Fluid Input:
-value.extreme_heat_exchanger.2=Max Heated Working Fluid Output:
-value.extreme_heat_exchanger.3=Max Overheated Working Fluid Output:
+value.extreme_heat_exchanger.1=Max Distilled Water Input:
+value.extreme_heat_exchanger.2=Max Heated Fluid Output:
+value.extreme_heat_exchanger.3=Max Overheated Fluid Output:
value.extreme_heat_exchanger.4=Threshold:
#TecTech Structure Info
@@ -285,8 +289,8 @@ YOTTank.hint.4=1 - Input Hatch/YOTTank Casing
YOTTank.hint.5=2 - Maintenance Hatch/YOTTank Casing
YOTTank.hint.6=3 - Output Hatch/YOTHatch
ExtremeHeatExchanger.hint.0=At least 25x Robust Tungstensteel Machine Casings
-ExtremeHeatExchanger.hint.1=1 - Input hatch for distilled water or other working fluid
-ExtremeHeatExchanger.hint.2=2 - Output hatch for SC Steam/SH Steam/Steam or other heated working fluid
+ExtremeHeatExchanger.hint.1=1 - Input hatch for distilled water
+ExtremeHeatExchanger.hint.2=2 - Output hatch for SC Steam/SH Steam/Steam
ExtremeHeatExchanger.hint.3=3 - Input hatch for hot fluid
ExtremeHeatExchanger.hint.4=4 - Output hatch for cold fluid
ExtremeHeatExchanger.hint.5=Any Casing - Maintenance Hatch
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.flowing.png b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.flowing.png
deleted file mode 100644
index 70269cad5e..0000000000
--- a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.flowing.png
+++ /dev/null
Binary files differ
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.still.png b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.still.png
deleted file mode 100644
index 70269cad5e..0000000000
--- a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.still.png
+++ /dev/null
Binary files differ
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.flowing.png b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.flowing.png
new file mode 100644
index 0000000000..82b938d8ce
--- /dev/null
+++ b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.flowing.png
Binary files differ
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.flowing.png.mcmeta b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.flowing.png.mcmeta
index 83e994c588..83e994c588 100644
--- a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.flowing.png.mcmeta
+++ b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.flowing.png.mcmeta
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.still.png b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.still.png
new file mode 100644
index 0000000000..82b938d8ce
--- /dev/null
+++ b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.still.png
Binary files differ
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.still.png.mcmeta b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.still.png.mcmeta
index 83e994c588..83e994c588 100644
--- a/src/main/resources/assets/goodgenerator/textures/blocks/fluids/ironedFuel.still.png.mcmeta
+++ b/src/main/resources/assets/goodgenerator/textures/blocks/fluids/supercriticalSteam.still.png.mcmeta