aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/gregtech/api/gui/modularui/GTUITextures.java2
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/MTEHatchCraftingInputME.java22
-rw-r--r--src/main/resources/assets/gregtech/textures/gui/overlay_button/pattern_optimize.pngbin0 -> 249 bytes
3 files changed, 22 insertions, 2 deletions
diff --git a/src/main/java/gregtech/api/gui/modularui/GTUITextures.java b/src/main/java/gregtech/api/gui/modularui/GTUITextures.java
index 125e1640b0..b8e652dde1 100644
--- a/src/main/java/gregtech/api/gui/modularui/GTUITextures.java
+++ b/src/main/java/gregtech/api/gui/modularui/GTUITextures.java
@@ -405,6 +405,8 @@ public class GTUITextures {
.fullImage(GregTech.ID, "gui/overlay_button/retract_pipes");
public static final UITexture OVERLAY_BUTTON_HOURGLASS = UITexture
.fullImage(GregTech.ID, "gui/overlay_button/hourglass");
+ public static final UITexture OVERLAY_BUTTON_PATTERN_OPTIMIZE = UITexture
+ .fullImage(GregTech.ID, "gui/overlay_button/pattern_optimize");
public static final UITexture OVERLAY_BUTTON_LIQUIDMODE = UITexture
.fullImage(GregTech.ID, "gui/overlay_button/LiquidMode");
diff --git a/src/main/java/gregtech/common/tileentities/machines/MTEHatchCraftingInputME.java b/src/main/java/gregtech/common/tileentities/machines/MTEHatchCraftingInputME.java
index e5dfd72c68..b6adf65440 100644
--- a/src/main/java/gregtech/common/tileentities/machines/MTEHatchCraftingInputME.java
+++ b/src/main/java/gregtech/common/tileentities/machines/MTEHatchCraftingInputME.java
@@ -47,6 +47,7 @@ import com.gtnewhorizons.modularui.api.math.Size;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
import com.gtnewhorizons.modularui.common.widget.ButtonWidget;
+import com.gtnewhorizons.modularui.common.widget.CycleButtonWidget;
import com.gtnewhorizons.modularui.common.widget.SlotGroup;
import com.gtnewhorizons.modularui.common.widget.SlotWidget;
@@ -333,6 +334,7 @@ public class MTEHatchCraftingInputME extends MTEHatchInputBus
private String customName = null;
private boolean supportFluids;
private boolean additionalConnection = false;
+ private boolean disablePatternOptimization = false;
public MTEHatchCraftingInputME(int aID, String aName, String aNameRegional, boolean supportFluids) {
super(
@@ -502,6 +504,11 @@ public class MTEHatchCraftingInputME extends MTEHatchInputBus
}
@Override
+ public boolean allowsPatternOptimization() {
+ return !disablePatternOptimization;
+ }
+
+ @Override
public void gridChanged() {
needPatternSync = true;
}
@@ -534,6 +541,7 @@ public class MTEHatchCraftingInputME extends MTEHatchInputBus
aNBT.setTag("internalInventory", internalInventoryNBT);
if (customName != null) aNBT.setString("customName", customName);
aNBT.setBoolean("additionalConnection", additionalConnection);
+ aNBT.setBoolean("disablePatternOptimization", disablePatternOptimization);
getProxy().writeToNBT(aNBT);
}
@@ -584,6 +592,7 @@ public class MTEHatchCraftingInputME extends MTEHatchInputBus
if (aNBT.hasKey("customName")) customName = aNBT.getString("customName");
additionalConnection = aNBT.getBoolean("additionalConnection");
+ disablePatternOptimization = aNBT.getBoolean("disablePatternOptimization");
getProxy().readFromNBT(aNBT);
}
@@ -717,7 +726,7 @@ public class MTEHatchCraftingInputME extends MTEHatchInputBus
.setBackground(GTUITextures.BUTTON_STANDARD, GTUITextures.OVERLAY_BUTTON_PLUS_LARGE)
.addTooltips(ImmutableList.of("Place manual items"))
.setSize(16, 16)
- .setPos(170, 45))
+ .setPos(170, 46))
.widget(new ButtonWidget().setOnClick((clickData, widget) -> {
if (clickData.mouseButton == 0) {
refundAll();
@@ -727,7 +736,16 @@ public class MTEHatchCraftingInputME extends MTEHatchInputBus
.setBackground(GTUITextures.BUTTON_STANDARD, GTUITextures.OVERLAY_BUTTON_EXPORT)
.addTooltips(ImmutableList.of("Return all internally stored items back to AE"))
.setSize(16, 16)
- .setPos(170, 28));
+ .setPos(170, 28))
+ .widget(
+ new CycleButtonWidget()
+ .setToggle(() -> disablePatternOptimization, val -> disablePatternOptimization = val)
+ .setStaticTexture(GTUITextures.OVERLAY_BUTTON_PATTERN_OPTIMIZE)
+ .setVariableBackground(GTUITextures.BUTTON_STANDARD_TOGGLE)
+ .addTooltip(0, "Pattern Optimization:\n§7Allowed")
+ .addTooltip(1, "Pattern Optimization:\n§7Disabled")
+ .setPos(170, 10)
+ .setSize(16, 16));
}
@Override
diff --git a/src/main/resources/assets/gregtech/textures/gui/overlay_button/pattern_optimize.png b/src/main/resources/assets/gregtech/textures/gui/overlay_button/pattern_optimize.png
new file mode 100644
index 0000000000..c4602c72e4
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/gui/overlay_button/pattern_optimize.png
Binary files differ