aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorNotAPenguin <michiel.vandeginste@gmail.com>2024-09-22 19:47:29 +0200
committerGitHub <noreply@github.com>2024-09-22 17:47:29 +0000
commite14fd93609659e983caa3353c1de4c8e2f034f01 (patch)
tree6bede7106f4666b8f8cdfbb6301b516974de78d5 /src/main/java
parente35cabae267e6f215689fcd668393e4acc79e638 (diff)
downloadGT5-Unofficial-e14fd93609659e983caa3353c1de4c8e2f034f01.tar.gz
GT5-Unofficial-e14fd93609659e983caa3353c1de4c8e2f034f01.tar.bz2
GT5-Unofficial-e14fd93609659e983caa3353c1de4c8e2f034f01.zip
Waterline tweaks (#3256)
Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/gregtech/api/gui/modularui/GTUITextures.java2
-rw-r--r--src/main/java/gregtech/api/recipe/RecipeMaps.java3
-rw-r--r--src/main/java/gregtech/api/recipe/maps/PurificationUnitFlocculatorFrontend.java32
-rw-r--r--src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java51
-rw-r--r--src/main/java/gregtech/api/recipe/maps/PurificationUnitPhAdjustmentFrontend.java16
-rw-r--r--src/main/java/gregtech/api/recipe/maps/PurificationUnitPlasmaHeaterFrontend.java22
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitUVTreatment.java1
7 files changed, 86 insertions, 41 deletions
diff --git a/src/main/java/gregtech/api/gui/modularui/GTUITextures.java b/src/main/java/gregtech/api/gui/modularui/GTUITextures.java
index b8e652dde1..67fc603f3e 100644
--- a/src/main/java/gregtech/api/gui/modularui/GTUITextures.java
+++ b/src/main/java/gregtech/api/gui/modularui/GTUITextures.java
@@ -214,6 +214,8 @@ public class GTUITextures {
public static final UITexture PROGRESSBAR_OZONATION = UITexture.fullImage(GregTech.ID, "gui/progressbar/ozonation");
public static final UITexture PROGRESSBAR_PLASMA_HEATER = UITexture
.fullImage(GregTech.ID, "gui/progressbar/water_plasma_heater");
+ public static final UITexture PROGRESSBAR_UV_TREATMENT = UITexture
+ .fullImage(GregTech.ID, "gui/progressbar/uvtreatment");
public static FallbackableUITexture fallbackableProgressbar(String name, UITexture fallback) {
return new FallbackableUITexture(UITexture.fullImage(GregTech.ID, "gui/progressbar/" + name), fallback);
diff --git a/src/main/java/gregtech/api/recipe/RecipeMaps.java b/src/main/java/gregtech/api/recipe/RecipeMaps.java
index 34d66fd3f0..47060d088b 100644
--- a/src/main/java/gregtech/api/recipe/RecipeMaps.java
+++ b/src/main/java/gregtech/api/recipe/RecipeMaps.java
@@ -1149,6 +1149,7 @@ public final class RecipeMaps {
recipe -> recipe.getMetadataOrDefault(PurificationPlantBaseChanceKey.INSTANCE, 0.0f))
.thenComparing(GTRecipe::compareTo))
.frontend(PurificationUnitOzonationFrontend::new)
+ .neiHandlerInfo(builder -> builder.setMaxRecipesPerPage(1))
.disableOptimize()
.build();
public static final RecipeMap<RecipeMapBackend> purificationFlocculationRecipes = RecipeMapBuilder
@@ -1184,7 +1185,7 @@ public final class RecipeMaps {
.build();
public static final RecipeMap<RecipeMapBackend> purificationUVTreatmentRecipes = RecipeMapBuilder
.of("gt.recipe.purificationplantuvtreatment")
- .maxIO(9, 0, 1, 1)
+ .maxIO(0, 0, 1, 1)
.minInputs(0, 1)
.progressBar(GTUITextures.PROGRESSBAR_ARROW)
.frontend(PurificationUnitLaserFrontend::new)
diff --git a/src/main/java/gregtech/api/recipe/maps/PurificationUnitFlocculatorFrontend.java b/src/main/java/gregtech/api/recipe/maps/PurificationUnitFlocculatorFrontend.java
index d0373d4310..36ba1637a4 100644
--- a/src/main/java/gregtech/api/recipe/maps/PurificationUnitFlocculatorFrontend.java
+++ b/src/main/java/gregtech/api/recipe/maps/PurificationUnitFlocculatorFrontend.java
@@ -78,21 +78,23 @@ public class PurificationUnitFlocculatorFrontend extends PurificationUnitRecipeM
@Override
public void drawNEIOverlays(GTNEIDefaultHandler.CachedDefaultRecipe neiCachedRecipe) {
super.drawNEIOverlays(neiCachedRecipe);
+ // Just to make sure these are only added once, otherwise these keep getting added every display tick
+ if (neiCachedRecipe.mInputs.size() == 1) {
+ // Display flocculation chemical
+ neiCachedRecipe.mInputs.add(
+ new PositionedStack(
+ GTUtility.getFluidDisplayStack(Materials.PolyAluminiumChloride.getFluid(100000L), true),
+ 5,
+ -1,
+ false));
- // Display flocculation chemical
- neiCachedRecipe.mInputs.add(
- new PositionedStack(
- GTUtility.getFluidDisplayStack(Materials.PolyAluminiumChloride.getFluid(100000L), true),
- 5,
- -1,
- false));
-
- // Display waste output
- neiCachedRecipe.mOutputs.add(
- new PositionedStack(
- GTUtility.getFluidDisplayStack(Materials.FlocculationWasteLiquid.getFluid(100000L), true),
- 147,
- 48,
- false));
+ // Display waste output
+ neiCachedRecipe.mOutputs.add(
+ new PositionedStack(
+ GTUtility.getFluidDisplayStack(Materials.FlocculationWasteLiquid.getFluid(100000L), true),
+ 147,
+ 48,
+ false));
+ }
}
}
diff --git a/src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java b/src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java
index 9c90acd8ad..d198cec7fe 100644
--- a/src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java
+++ b/src/main/java/gregtech/api/recipe/maps/PurificationUnitLaserFrontend.java
@@ -4,33 +4,64 @@ import java.util.List;
import net.minecraft.item.ItemStack;
+import org.jetbrains.annotations.NotNull;
+
+import com.google.common.collect.ImmutableList;
+import com.gtnewhorizons.modularui.api.drawable.FallbackableUITexture;
import com.gtnewhorizons.modularui.api.math.Pos2d;
+import com.gtnewhorizons.modularui.api.math.Size;
import codechicken.nei.PositionedStack;
+import gregtech.api.gui.modularui.GTUITextures;
import gregtech.api.recipe.BasicUIPropertiesBuilder;
import gregtech.api.recipe.NEIRecipePropertiesBuilder;
-import gregtech.api.recipe.RecipeMapFrontend;
-import gregtech.common.gui.modularui.UIHelper;
import gregtech.common.tileentities.machines.multi.purification.MTEPurificationUnitUVTreatment;
import gregtech.nei.GTNEIDefaultHandler;
-public class PurificationUnitLaserFrontend extends RecipeMapFrontend {
+public class PurificationUnitLaserFrontend extends PurificationUnitRecipeMapFrontend {
public PurificationUnitLaserFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder,
NEIRecipePropertiesBuilder neiPropertiesBuilder) {
- super(uiPropertiesBuilder, neiPropertiesBuilder);
+ super(
+ 120,
+ uiPropertiesBuilder.logoPos(new Pos2d(147, 102))
+ .progressBarTexture(new FallbackableUITexture(GTUITextures.PROGRESSBAR_UV_TREATMENT)),
+ neiPropertiesBuilder.recipeBackgroundSize(new Size(170, 120)));
+ }
+
+ @Override
+ public @NotNull List<Pos2d> getFluidInputPositions(int fluidInputCount) {
+ return ImmutableList.of(new Pos2d(10, 89));
+ }
+
+ @Override
+ public @NotNull List<Pos2d> getFluidOutputPositions(int fluidOutputCount) {
+ return ImmutableList.of(new Pos2d(147, 89));
}
@Override
public void drawNEIOverlays(GTNEIDefaultHandler.CachedDefaultRecipe neiCachedRecipe) {
final int numLenses = MTEPurificationUnitUVTreatment.LENS_ITEMS.size();
- List<Pos2d> positions = UIHelper.getGridPositions(numLenses, 12, -4, 3, 3);
- // Put in lens items
- for (int i = 0; i < numLenses; ++i) {
- Pos2d position = positions.get(i);
- ItemStack lens = MTEPurificationUnitUVTreatment.LENS_ITEMS.get(i);
- neiCachedRecipe.mInputs.add(new PositionedStack(lens, position.x, position.y, false));
+ List<Pos2d> positions = ImmutableList.of(
+ new Pos2d(62, -6),
+ new Pos2d(40, -1),
+ new Pos2d(32, 20),
+ new Pos2d(52, 27),
+ new Pos2d(75, 29),
+ new Pos2d(98, 27),
+ new Pos2d(118, 20),
+ new Pos2d(110, -1),
+ new Pos2d(88, -6));
+
+ if (neiCachedRecipe.mInputs.size() < numLenses) {
+ // Put in lens items
+ for (int i = 0; i < numLenses; ++i) {
+ Pos2d position = positions.get(i);
+ ItemStack lens = MTEPurificationUnitUVTreatment.LENS_ITEMS.get(i);
+ neiCachedRecipe.mInputs.add(new PositionedStack(lens, position.x, position.y, false));
+ }
}
+
super.drawNEIOverlays(neiCachedRecipe);
}
}
diff --git a/src/main/java/gregtech/api/recipe/maps/PurificationUnitPhAdjustmentFrontend.java b/src/main/java/gregtech/api/recipe/maps/PurificationUnitPhAdjustmentFrontend.java
index e78d2a395a..51cf4dbd54 100644
--- a/src/main/java/gregtech/api/recipe/maps/PurificationUnitPhAdjustmentFrontend.java
+++ b/src/main/java/gregtech/api/recipe/maps/PurificationUnitPhAdjustmentFrontend.java
@@ -67,12 +67,14 @@ public class PurificationUnitPhAdjustmentFrontend extends PurificationUnitRecipe
@Override
public void drawNEIOverlays(GTNEIDefaultHandler.CachedDefaultRecipe neiCachedRecipe) {
- neiCachedRecipe.mInputs.add(new PositionedStack(Materials.SodiumHydroxide.getDust(64), 3, 1, false));
- neiCachedRecipe.mInputs.add(
- new PositionedStack(
- GTUtility.getFluidDisplayStack(Materials.HydrochloricAcid.getFluid(1000L), true),
- 147,
- 1,
- false));
+ if (neiCachedRecipe.mInputs.size() == 1) {
+ neiCachedRecipe.mInputs.add(new PositionedStack(Materials.SodiumHydroxide.getDust(64), 3, 1, false));
+ neiCachedRecipe.mInputs.add(
+ new PositionedStack(
+ GTUtility.getFluidDisplayStack(Materials.HydrochloricAcid.getFluid(1000L), true),
+ 147,
+ 1,
+ false));
+ }
}
}
diff --git a/src/main/java/gregtech/api/recipe/maps/PurificationUnitPlasmaHeaterFrontend.java b/src/main/java/gregtech/api/recipe/maps/PurificationUnitPlasmaHeaterFrontend.java
index a7f35c86a5..5299a17fa5 100644
--- a/src/main/java/gregtech/api/recipe/maps/PurificationUnitPlasmaHeaterFrontend.java
+++ b/src/main/java/gregtech/api/recipe/maps/PurificationUnitPlasmaHeaterFrontend.java
@@ -47,13 +47,19 @@ public class PurificationUnitPlasmaHeaterFrontend extends PurificationUnitRecipe
@Override
public void drawNEIOverlays(GTNEIDefaultHandler.CachedDefaultRecipe neiCachedRecipe) {
- neiCachedRecipe.mInputs.add(
- new PositionedStack(GTUtility.getFluidDisplayStack(Materials.Helium.getPlasma(10L), true), 26, 53, false));
- neiCachedRecipe.mInputs.add(
- new PositionedStack(
- GTUtility.getFluidDisplayStack(Materials.SuperCoolant.getFluid(100L), true),
- 107,
- 52,
- false));
+ if (neiCachedRecipe.mInputs.size() == 1) {
+ neiCachedRecipe.mInputs.add(
+ new PositionedStack(
+ GTUtility.getFluidDisplayStack(Materials.Helium.getPlasma(10L), true),
+ 26,
+ 53,
+ false));
+ neiCachedRecipe.mInputs.add(
+ new PositionedStack(
+ GTUtility.getFluidDisplayStack(Materials.SuperCoolant.getFluid(100L), true),
+ 107,
+ 52,
+ false));
+ }
}
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitUVTreatment.java b/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitUVTreatment.java
index 1ab8122d17..464beb7cc8 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitUVTreatment.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/purification/MTEPurificationUnitUVTreatment.java
@@ -255,6 +255,7 @@ public class MTEPurificationUnitUVTreatment extends MTEPurificationUnitBase<MTEP
.addInfo("Removing a lens too early will fail the recipe.")
.addInfo("Find the order of lenses in the recipe in NEI,")
.addInfo("or use a portable scanner to view the currently requested lens.")
+ .addInfo("The recipe always starts at the Orundum Lens")
.addSeparator()
.addInfo(
EnumChatFormatting.AQUA + ""