aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2023-12-04 08:11:34 +0900
committerGitHub <noreply@github.com>2023-12-04 00:11:34 +0100
commit981df39ed10c780e38d91503de42dcd46c2e47e4 (patch)
tree13591ba87d0eb3bff575a405a3cd25360d3dd961 /src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java
parentc8fc878cd693b454d500f1cae611a363b59914ea (diff)
downloadGT5-Unofficial-981df39ed10c780e38d91503de42dcd46c2e47e4.tar.gz
GT5-Unofficial-981df39ed10c780e38d91503de42dcd46c2e47e4.tar.bz2
GT5-Unofficial-981df39ed10c780e38d91503de42dcd46c2e47e4.zip
Migrate to new RecipeMap (#219)
* Migrate GG recipemaps * Migrate the rest * Split classes, renames, more adapt to GT changes * Update GT to adapt to MaceratorBackend removal * update gradle+deps+bs --------- Co-authored-by: Martin Robertz <dream-master@gmx.net> Co-authored-by: BlueWeabo <ilia.iliev2005@gmail.com>
Diffstat (limited to 'src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java')
-rw-r--r--src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java58
1 files changed, 58 insertions, 0 deletions
diff --git a/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java
new file mode 100644
index 0000000000..51078a3a95
--- /dev/null
+++ b/src/main/java/goodgenerator/api/recipe/ExtremeHeatExchangerFrontend.java
@@ -0,0 +1,58 @@
+package goodgenerator.api.recipe;
+
+import java.util.Arrays;
+import java.util.List;
+
+import javax.annotation.ParametersAreNonnullByDefault;
+
+import net.minecraft.util.StatCollector;
+import net.minecraftforge.fluids.FluidStack;
+
+import com.gtnewhorizons.modularui.api.math.Pos2d;
+
+import gregtech.api.recipe.BasicUIPropertiesBuilder;
+import gregtech.api.recipe.NEIRecipePropertiesBuilder;
+import gregtech.api.recipe.RecipeMapFrontend;
+import gregtech.api.util.GT_Utility;
+import gregtech.api.util.MethodsReturnNonnullByDefault;
+import gregtech.nei.RecipeDisplayInfo;
+import gregtech.nei.formatter.INEISpecialInfoFormatter;
+
+@ParametersAreNonnullByDefault
+@MethodsReturnNonnullByDefault
+public class ExtremeHeatExchangerFrontend extends RecipeMapFrontend {
+
+ public ExtremeHeatExchangerFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder,
+ NEIRecipePropertiesBuilder neiPropertiesBuilder) {
+ super(uiPropertiesBuilder, neiPropertiesBuilder.neiSpecialInfoFormatter(new EHESpecialValueFormatter()));
+ }
+
+ @Override
+ public List<Pos2d> getFluidInputPositions(int fluidInputCount) {
+ return Arrays.asList(new Pos2d(26, 13), new Pos2d(26, 37));
+ }
+
+ @Override
+ public List<Pos2d> getFluidOutputPositions(int fluidOutputCount) {
+ return Arrays.asList(new Pos2d(128, 13), new Pos2d(128, 31), new Pos2d(128, 54));
+ }
+
+ private static class EHESpecialValueFormatter implements INEISpecialInfoFormatter {
+
+ @Override
+ public List<String> format(RecipeDisplayInfo recipeInfo) {
+ FluidStack[] Inputs = recipeInfo.recipe.mFluidInputs;
+ FluidStack[] Outputs = recipeInfo.recipe.mFluidOutputs;
+ int threshold = recipeInfo.recipe.mSpecialValue;
+ return Arrays.asList(
+ StatCollector.translateToLocal("value.extreme_heat_exchanger.0") + " "
+ + GT_Utility.formatNumbers(Inputs[0].amount)
+ + " L/s",
+ StatCollector.translateToLocal("value.extreme_heat_exchanger.1"),
+ GT_Utility.formatNumbers(Outputs[0].amount / 160) + " L/s",
+ StatCollector.translateToLocal("value.extreme_heat_exchanger.2"),
+ GT_Utility.formatNumbers(Outputs[1].amount / 160) + " L/s",
+ StatCollector.translateToLocal("value.extreme_heat_exchanger.4") + " " + threshold + " L/s");
+ }
+ }
+}