diff options
author | Connor-Colenso <52056774+Connor-Colenso@users.noreply.github.com> | 2022-12-18 17:38:54 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-18 18:38:54 +0100 |
commit | 3c852a0143cbfa864da59bdd0b2edab1fa4bf146 (patch) | |
tree | bbdb97091199dccad76f03182a1270969e36f113 /src/main/java/gregtech/api | |
parent | e3e077b34f825d9f09da8fe7191251c1dcd9bbd5 (diff) | |
download | GT5-Unofficial-3c852a0143cbfa864da59bdd0b2edab1fa4bf146.tar.gz GT5-Unofficial-3c852a0143cbfa864da59bdd0b2edab1fa4bf146.tar.bz2 GT5-Unofficial-3c852a0143cbfa864da59bdd0b2edab1fa4bf146.zip |
Turbine efficiency helper (#1562)
* Add value to automatically determine highest possible turbine efficiency.
* spotlessApply (#1563)
Co-authored-by: Connor-Colenso <52056774+Connor-Colenso@users.noreply.github.com>
Co-authored-by: GitHub GTNH Actions <>
Co-authored-by: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r-- | src/main/java/gregtech/api/enums/GT_Values.java | 33 | ||||
-rw-r--r-- | src/main/java/gregtech/api/util/GT_Utility.java | 11 |
2 files changed, 38 insertions, 6 deletions
diff --git a/src/main/java/gregtech/api/enums/GT_Values.java b/src/main/java/gregtech/api/enums/GT_Values.java index a65b79d42d..f7df02e7b3 100644 --- a/src/main/java/gregtech/api/enums/GT_Values.java +++ b/src/main/java/gregtech/api/enums/GT_Values.java @@ -6,10 +6,7 @@ import gregtech.api.interfaces.internal.IGT_Mod; import gregtech.api.interfaces.internal.IGT_RecipeAdder; import gregtech.api.net.IGT_NetworkHandler; import java.math.BigInteger; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Locale; -import java.util.Set; +import java.util.*; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; import net.minecraft.world.World; @@ -188,7 +185,7 @@ public class GT_Values { EnumChatFormatting.DARK_GREEN.toString(), // UV, 8 EnumChatFormatting.DARK_RED.toString(), // UHV, 9 EnumChatFormatting.DARK_PURPLE.toString(), // UEV, 10 - EnumChatFormatting.DARK_BLUE.toString() + EnumChatFormatting.BOLD.toString(), // UIV, 11 + EnumChatFormatting.DARK_BLUE + EnumChatFormatting.BOLD.toString(), // UIV, 11 EnumChatFormatting.RED.toString() + EnumChatFormatting.BOLD.toString() + EnumChatFormatting.UNDERLINE.toString(), // UMV, 12 @@ -406,7 +403,7 @@ public class GT_Values { */ public static boolean debugDriller = false; /** - * Debug parameter for world generation. Tracks chunks added/removed from run queue. + * Debug parameter for world generation. Track chunks added/removed from run queue. */ public static boolean debugWorldGen = false; /** @@ -510,4 +507,28 @@ public class GT_Values { public static final String AuthorBlueWeabo = "Author: " + EnumChatFormatting.BLUE + EnumChatFormatting.BOLD + "Blue" + EnumChatFormatting.AQUA + EnumChatFormatting.BOLD + "Weabo"; + + // 7.5F comes from GT_Tool_Turbine_Large#getBaseDamage() given huge turbines are the most efficient now. + public static double getMaxPlasmaTurbineEfficiencyFromMaterial(Materials material) { + return (5F + (7.5F + material.mToolQuality)) / 10.0; + } + + // Called once in GT_Client on world load, has to be called late so that Materials is populated. + public static void calculateMaxPlasmaTurbineEfficiency() { + + ArrayList<Double> effArray = new ArrayList<>(); + + // Iteration seems to work but need to check turbine as all items appear null. + for (Materials material : Materials.values()) { + effArray.add(getMaxPlasmaTurbineEfficiencyFromMaterial(material)); + } + + maxPlasmaTurbineEfficiency = Collections.max(effArray); + } + + private static double maxPlasmaTurbineEfficiency; + + public static double getMaxPlasmaTurbineEfficiency() { + return maxPlasmaTurbineEfficiency; + } } diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java index da98e97f8e..e24c893063 100644 --- a/src/main/java/gregtech/api/util/GT_Utility.java +++ b/src/main/java/gregtech/api/util/GT_Utility.java @@ -4331,4 +4331,15 @@ public class GT_Utility { @Nullable protected abstract NBTTagCompound nbt(); } + + public static int getPlasmaFuelValueInEUPerLiterFromMaterial(Materials material) { + return getPlasmaFuelValueInEUPerLiterFromFluid(material.getPlasma(1)); + } + + public static int getPlasmaFuelValueInEUPerLiterFromFluid(FluidStack aLiquid) { + if (aLiquid == null) return 0; + GT_Recipe tFuel = GT_Recipe.GT_Recipe_Map.sPlasmaFuels.findFuel(aLiquid); + if (tFuel != null) return tFuel.mSpecialValue; + return 0; + } } |