From b51bff6772a0bbd547b73a732ff37bfe05dcc4bf Mon Sep 17 00:00:00 2001 From: Runakai1 Date: Fri, 12 Aug 2022 23:29:20 +0200 Subject: [PATCH 1/3] Test Test --- .../gui/GuiBaseFluidPatternTerminalEx.java | 42 +++++++++++++++++++ .../github/client/gui/GuiFCPriority.java | 5 +++ .../gui/container/FCBasePartContainerEx.java | 9 ++++ .../gui/container/FluidPrioritization.java | 12 ++++++ .../parts/PartFluidPatternTerminalEx.java | 8 +++- .../github/nei/recipes/FluidRecipe.java | 22 ++++++++++ 6 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/glodblock/github/client/gui/container/FluidPrioritization.java diff --git a/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java b/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java index b4cb444a..67ef6169 100644 --- a/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java +++ b/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java @@ -10,12 +10,15 @@ import appeng.client.gui.widgets.GuiScrollbar; import appeng.container.slot.AppEngSlot; import com.glodblock.github.FluidCraft; import com.glodblock.github.client.gui.container.FCBasePartContainerEx; +import com.glodblock.github.client.gui.container.FluidPrioritization; import com.glodblock.github.network.CPacketFluidPatternTermBtns; import com.glodblock.github.util.Ae2ReflectClient; import com.glodblock.github.util.ModAndClassUtil; import com.glodblock.github.util.NameConst; import net.minecraft.client.gui.GuiButton; import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.ChatComponentText; import net.minecraft.util.StatCollector; import org.lwjgl.input.Keyboard; import org.lwjgl.input.Mouse; @@ -24,11 +27,15 @@ public class GuiBaseFluidPatternTerminalEx extends GuiFCBaseMonitor { private static final String SUBSITUTION_DISABLE = "0"; private static final String SUBSITUTION_ENABLE = "1"; + private static final String PRIORITY_DISABLE = "0"; + private static final String PRIORITY_ENABLE = "1"; public FCBasePartContainerEx container; private GuiImgButton substitutionsEnabledBtn; private GuiImgButton substitutionsDisabledBtn; + private GuiImgButton fluidPrioritizedEnabledBtn; + private GuiImgButton fluidPrioritizedDisabledBtn; private GuiImgButton encodeBtn; private GuiImgButton invertBtn; private GuiImgButton clearBtn; @@ -63,6 +70,10 @@ public class GuiBaseFluidPatternTerminalEx extends GuiFCBaseMonitor { { FluidCraft.proxy.netHandler.sendToServer( new CPacketFluidPatternTermBtns( "PatternTerminalEx.Substitute", this.substitutionsEnabledBtn == btn ? SUBSITUTION_DISABLE : SUBSITUTION_ENABLE ) ); } + else if( this.fluidPrioritizedEnabledBtn == btn || this.fluidPrioritizedDisabledBtn == btn ) + { + FluidCraft.proxy.netHandler.sendToServer( new CPacketFluidPatternTermBtns( "PatternTerminalEx.Prioritize", this.fluidPrioritizedEnabledBtn == btn ? PRIORITY_DISABLE : PRIORITY_ENABLE ) ); + } else if( this.invertBtn == btn ) { FluidCraft.proxy.netHandler.sendToServer( new CPacketFluidPatternTermBtns( "PatternTerminalEx.Invert", container.inverted ? "0" : "1" ) ); @@ -87,6 +98,16 @@ public class GuiBaseFluidPatternTerminalEx extends GuiFCBaseMonitor { this.substitutionsDisabledBtn.setHalfSize( true ); this.buttonList.add( this.substitutionsDisabledBtn ); + this.fluidPrioritizedEnabledBtn = new GuiImgButton( this.guiLeft + 87, this.guiTop + this.ySize - 143, Settings.ACTIONS, FluidPrioritization.ENABLED ); + this.fluidPrioritizedEnabledBtn.setHalfSize( true ); + this.buttonList.add( this.fluidPrioritizedEnabledBtn ); + MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("ENABLED IMMER")); + + this.fluidPrioritizedDisabledBtn = new GuiImgButton( this.guiLeft + 87, this.guiTop + this.ySize - 143, Settings.ACTIONS, FluidPrioritization.DISABLED ); + this.fluidPrioritizedDisabledBtn.setHalfSize( true ); + this.buttonList.add( this.fluidPrioritizedDisabledBtn ); + MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("DISABLED IMMER")); + invertBtn = new GuiImgButton( this.guiLeft + 87, this.guiTop + this.ySize - 153, Settings.ACTIONS, container.inverted ? PatternSlotConfig.C_4_16 : PatternSlotConfig.C_16_4); invertBtn.setHalfSize( true ); this.buttonList.add( this.invertBtn ); @@ -123,6 +144,18 @@ public class GuiBaseFluidPatternTerminalEx extends GuiFCBaseMonitor { this.substitutionsEnabledBtn.visible = false; this.substitutionsDisabledBtn.visible = true; } + if( this.container.prioritize ) + { + this.fluidPrioritizedEnabledBtn.visible = true; + this.fluidPrioritizedDisabledBtn.visible = false; + // MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("ENABLED")); + } + else + { + this.fluidPrioritizedEnabledBtn.visible = false; + this.fluidPrioritizedDisabledBtn.visible = true; + //MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("DISABLED")); + } super.drawFG( offsetX, offsetY, mouseX, mouseY ); this.fontRendererObj.drawString( StatCollector.translateToLocal(NameConst.GUI_FLUID_PATTERN_TERMINAL_EX), 8, this.ySize - 96 + 2 - Ae2ReflectClient.getReservedSpace(this), 4210752 ); @@ -159,11 +192,20 @@ public class GuiBaseFluidPatternTerminalEx extends GuiFCBaseMonitor { substitutionsEnabledBtn.visible = false; substitutionsDisabledBtn.visible = true; } + if (container.prioritize) { + fluidPrioritizedEnabledBtn.visible = true; + fluidPrioritizedDisabledBtn.visible = false; + } else { + fluidPrioritizedEnabledBtn.visible = false; + fluidPrioritizedDisabledBtn.visible = true; + } final int offset = container.inverted? 18 * -3: 0; substitutionsEnabledBtn.xPosition = this.guiLeft + 97 + offset; substitutionsDisabledBtn.xPosition = this.guiLeft + 97 + offset; + fluidPrioritizedEnabledBtn.xPosition = this.guiLeft + 87 + offset; + fluidPrioritizedDisabledBtn.xPosition = this.guiLeft + 87 + offset; doubleBtn.xPosition = this.guiLeft + 97 + offset; clearBtn.xPosition = this.guiLeft + 87 + offset; invertBtn.xPosition = this.guiLeft + 87 + offset; diff --git a/src/main/java/com/glodblock/github/client/gui/GuiFCPriority.java b/src/main/java/com/glodblock/github/client/gui/GuiFCPriority.java index 92468d59..e3e2597d 100644 --- a/src/main/java/com/glodblock/github/client/gui/GuiFCPriority.java +++ b/src/main/java/com/glodblock/github/client/gui/GuiFCPriority.java @@ -34,6 +34,7 @@ public class GuiFCPriority extends AEBaseGui private GuiButton plus10; private GuiButton plus100; private GuiButton plus1000; + private GuiButton plus10000; private GuiButton minus1; private GuiButton minus10; private GuiButton minus100; @@ -56,16 +57,20 @@ public class GuiFCPriority extends AEBaseGui final int b = AEConfig.instance.priorityByStacksAmounts( 1 ); final int c = AEConfig.instance.priorityByStacksAmounts( 2 ); final int d = AEConfig.instance.priorityByStacksAmounts( 3 ); + final int e = AEConfig.instance.priorityByStacksAmounts( 4 ); this.buttonList.add( this.plus1 = new GuiButton( 0, this.guiLeft + 20, this.guiTop + 32, 22, 20, "+" + a ) ); this.buttonList.add( this.plus10 = new GuiButton( 0, this.guiLeft + 48, this.guiTop + 32, 28, 20, "+" + b ) ); this.buttonList.add( this.plus100 = new GuiButton( 0, this.guiLeft + 82, this.guiTop + 32, 32, 20, "+" + c ) ); this.buttonList.add( this.plus1000 = new GuiButton( 0, this.guiLeft + 120, this.guiTop + 32, 38, 20, "+" + d ) ); + this.buttonList.add( this.plus10000 = new GuiButton( 0, this.guiLeft + 140, this.guiTop + 32, 42, 20, "+" + e ) ); + this.buttonList.add( this.minus1 = new GuiButton( 0, this.guiLeft + 20, this.guiTop + 69, 22, 20, "-" + a ) ); this.buttonList.add( this.minus10 = new GuiButton( 0, this.guiLeft + 48, this.guiTop + 69, 28, 20, "-" + b ) ); this.buttonList.add( this.minus100 = new GuiButton( 0, this.guiLeft + 82, this.guiTop + 69, 32, 20, "-" + c ) ); this.buttonList.add( this.minus1000 = new GuiButton( 0, this.guiLeft + 120, this.guiTop + 69, 38, 20, "-" + d ) ); + this.buttonList.add( this.plus10000 = new GuiButton( 0, this.guiLeft + 140, this.guiTop + 32, 42, 20, "+" + e ) ); ItemStack myIcon = null; final Object target = ( (AEBaseContainer) this.inventorySlots ).getTarget(); diff --git a/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java b/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java index bed2ce96..87071843 100644 --- a/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java +++ b/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java @@ -66,6 +66,8 @@ public class FCBasePartContainerEx extends FCBaseMonitorContain implements IAEAp public boolean inverted; @GuiSync( 96 + (17-9) + 17 ) public int activePage = 0; + @GuiSync( 96 + (17-9) + 13 ) + public boolean prioritize = false; public FCBasePartContainerEx(final InventoryPlayer ip, final ITerminalHost monitorable ) { @@ -205,6 +207,11 @@ public class FCBasePartContainerEx extends FCBaseMonitorContain implements IAEAp encodedValue.setTag( "out", tagOut ); encodedValue.setBoolean( "substitute", this.isSubstitute() ); + encodedValue.setTag( "in", tagIn ); + encodedValue.setTag( "out", tagOut ); + encodedValue.setBoolean( "piroritize", this.isPrioritize() ); + + output.setTagCompound( encodedValue ); } @@ -383,6 +390,8 @@ public class FCBasePartContainerEx extends FCBaseMonitorContain implements IAEAp return this.substitute; } + private boolean isPrioritize() { return this.prioritize; } + static boolean canDoubleStacks(SlotFake[] slots) { List enabledSlots = Arrays.stream(slots).filter(SlotFake::isEnabled).collect(Collectors.toList()); diff --git a/src/main/java/com/glodblock/github/client/gui/container/FluidPrioritization.java b/src/main/java/com/glodblock/github/client/gui/container/FluidPrioritization.java new file mode 100644 index 00000000..985f1671 --- /dev/null +++ b/src/main/java/com/glodblock/github/client/gui/container/FluidPrioritization.java @@ -0,0 +1,12 @@ +package com.glodblock.github.client.gui.container; + + +import akka.actor.Status; + +import java.lang.reflect.Type; + +public enum FluidPrioritization { + ENABLED, + DISABLED; + +} diff --git a/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java b/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java index 31e79fad..b6ef4b02 100644 --- a/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java +++ b/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java @@ -38,6 +38,7 @@ public class PartFluidPatternTerminalEx extends FCBasePart { private final AppEngInternalInventory pattern = new AppEngInternalInventory( this, 2 ); private boolean substitute = false; + private boolean priorization = false; private boolean inverted = false; private int activePage = 0; @@ -84,6 +85,7 @@ public class PartFluidPatternTerminalEx extends FCBasePart { this.crafting.readFromNBT( data, "craftingGrid" ); this.setSubstitution( data.getBoolean( "substitute" ) ); + this.setPrioritization( data.getBoolean( "priorization") ); this.setInverted( data.getBoolean( "inverted" ) ); this.setActivePage( data.getInteger( "activePage" ) ); } @@ -95,7 +97,7 @@ public class PartFluidPatternTerminalEx extends FCBasePart { this.pattern.writeToNBT( data, "pattern" ); this.output.writeToNBT( data, "outputList" ); this.crafting.writeToNBT( data, "craftingGrid" ); - + data.setBoolean("priorization", this.priorization); data.setBoolean( "substitute", this.substitute ); data.setBoolean( "inverted", this.inverted ); data.setInteger( "activePage", this.activePage ); @@ -208,6 +210,10 @@ public class PartFluidPatternTerminalEx extends FCBasePart { { this.substitute = canSubstitute; } + public void setPrioritization( boolean canPrioritize ) + { + this.priorization = canPrioritize; + } public void onChangeCrafting(IAEItemStack[] newCrafting, IAEItemStack[] newOutput) { IInventory crafting = this.getInventoryByName("crafting"); diff --git a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java index b33a3b0f..2c3556c1 100644 --- a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java +++ b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java @@ -3,14 +3,22 @@ package com.glodblock.github.nei.recipes; import codechicken.nei.PositionedStack; import codechicken.nei.recipe.IRecipeHandler; import codechicken.nei.recipe.TemplateRecipeHandler; +import com.glodblock.github.client.gui.container.FluidPrioritization; import com.glodblock.github.nei.object.IRecipeExtractor; import com.glodblock.github.nei.object.IRecipeExtractorLegacy; import com.glodblock.github.nei.object.OrderStack; +import ibxm.Player; +import net.minecraft.client.gui.Gui; +import net.minecraft.network.play.client.C01PacketChatMessage; +import net.minecraft.server.MinecraftServer; +import net.minecraftforge.server.command.ForgeCommand; +import tv.twitch.chat.Chat; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; +import net.minecraft.util.ChatComponentText; public final class FluidRecipe { @@ -31,6 +39,20 @@ public final class FluidRecipe { IRecipeExtractor extractor = IdentifierMap.get(tRecipe.getOverlayIdentifier()); if (extractor == null) return new ArrayList<>(); List tmp = new ArrayList<>(tRecipe.getIngredientStacks(index)); + FluidPrioritization fluid = FluidPrioritization.ENABLED; + switch(fluid) { + case ENABLED: + MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("hi")); + + for (int i = 0; i < tmp.size(); i++) { + if(tmp.get(i).toString().contains("GregTech_FluidDisplay")) { + MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText(String.valueOf(tmp.size()))); + PositionedStack Stack = tmp.get(i); + tmp.remove(Stack); + tmp.add(0, Stack); + } + } + } return extractor.getInputIngredients(tmp, recipe, index); } From 4ec705dd748b9fe2b9dee92d01fdee133bb565eb Mon Sep 17 00:00:00 2001 From: Alexandre Tardif Date: Fri, 12 Aug 2022 18:41:48 -0400 Subject: [PATCH 2/3] Button works! --- .../client/gui/GuiBaseFluidPatternTerminalEx.java | 10 +++++----- .../client/gui/container/FCBasePartContainerEx.java | 1 + .../common/parts/PartFluidPatternTerminalEx.java | 11 ++++++++--- .../FluidPatternTerminalRecipeTransferHandler.java | 8 +++++++- .../com/glodblock/github/nei/recipes/FluidRecipe.java | 8 ++------ .../github/network/CPacketFluidPatternTermBtns.java | 3 +++ 6 files changed, 26 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java b/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java index 67ef6169..593cf0ce 100644 --- a/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java +++ b/src/main/java/com/glodblock/github/client/gui/GuiBaseFluidPatternTerminalEx.java @@ -72,7 +72,7 @@ public class GuiBaseFluidPatternTerminalEx extends GuiFCBaseMonitor { } else if( this.fluidPrioritizedEnabledBtn == btn || this.fluidPrioritizedDisabledBtn == btn ) { - FluidCraft.proxy.netHandler.sendToServer( new CPacketFluidPatternTermBtns( "PatternTerminalEx.Prioritize", this.fluidPrioritizedEnabledBtn == btn ? PRIORITY_DISABLE : PRIORITY_ENABLE ) ); + FluidCraft.proxy.netHandler.sendToServer( new CPacketFluidPatternTermBtns( "PatternTerminalEx.Prioritize", container.prioritize ? PRIORITY_DISABLE : PRIORITY_ENABLE ) ); } else if( this.invertBtn == btn ) { @@ -146,14 +146,14 @@ public class GuiBaseFluidPatternTerminalEx extends GuiFCBaseMonitor { } if( this.container.prioritize ) { - this.fluidPrioritizedEnabledBtn.visible = true; - this.fluidPrioritizedDisabledBtn.visible = false; + this.fluidPrioritizedEnabledBtn.visible = false; + this.fluidPrioritizedDisabledBtn.visible = true; // MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("ENABLED")); } else { - this.fluidPrioritizedEnabledBtn.visible = false; - this.fluidPrioritizedDisabledBtn.visible = true; + this.fluidPrioritizedEnabledBtn.visible = true; + this.fluidPrioritizedDisabledBtn.visible = false; //MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("DISABLED")); } diff --git a/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java b/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java index 87071843..f395263b 100644 --- a/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java +++ b/src/main/java/com/glodblock/github/client/gui/container/FCBasePartContainerEx.java @@ -310,6 +310,7 @@ public class FCBasePartContainerEx extends FCBaseMonitorContain implements IAEAp if( Platform.isServer() ) { this.substitute = this.patternTerminal.isSubstitution(); + this.prioritize = this.patternTerminal.isPrioritize(); if (inverted != patternTerminal.isInverted() || activePage != patternTerminal.getActivePage()) { inverted = patternTerminal.isInverted(); activePage = patternTerminal.getActivePage(); diff --git a/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java b/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java index b6ef4b02..fdff9119 100644 --- a/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java +++ b/src/main/java/com/glodblock/github/common/parts/PartFluidPatternTerminalEx.java @@ -38,7 +38,7 @@ public class PartFluidPatternTerminalEx extends FCBasePart { private final AppEngInternalInventory pattern = new AppEngInternalInventory( this, 2 ); private boolean substitute = false; - private boolean priorization = false; + private boolean prioritize = false; private boolean inverted = false; private int activePage = 0; @@ -97,7 +97,7 @@ public class PartFluidPatternTerminalEx extends FCBasePart { this.pattern.writeToNBT( data, "pattern" ); this.output.writeToNBT( data, "outputList" ); this.crafting.writeToNBT( data, "craftingGrid" ); - data.setBoolean("priorization", this.priorization); + data.setBoolean("priorization", this.prioritize); data.setBoolean( "substitute", this.substitute ); data.setBoolean( "inverted", this.inverted ); data.setInteger( "activePage", this.activePage ); @@ -206,13 +206,18 @@ public class PartFluidPatternTerminalEx extends FCBasePart { return this.substitute; } + public boolean isPrioritize() + { + return this.prioritize; + } + public void setSubstitution( boolean canSubstitute ) { this.substitute = canSubstitute; } public void setPrioritization( boolean canPrioritize ) { - this.priorization = canPrioritize; + this.prioritize = canPrioritize; } public void onChangeCrafting(IAEItemStack[] newCrafting, IAEItemStack[] newOutput) { diff --git a/src/main/java/com/glodblock/github/nei/FluidPatternTerminalRecipeTransferHandler.java b/src/main/java/com/glodblock/github/nei/FluidPatternTerminalRecipeTransferHandler.java index 2464d90f..b337ff11 100644 --- a/src/main/java/com/glodblock/github/nei/FluidPatternTerminalRecipeTransferHandler.java +++ b/src/main/java/com/glodblock/github/nei/FluidPatternTerminalRecipeTransferHandler.java @@ -4,8 +4,10 @@ import codechicken.nei.api.IOverlayHandler; import codechicken.nei.recipe.IRecipeHandler; import codechicken.nei.recipe.TemplateRecipeHandler; import com.glodblock.github.FluidCraft; +import com.glodblock.github.client.gui.GuiBaseFluidPatternTerminalEx; import com.glodblock.github.client.gui.GuiFluidPatternTerminal; import com.glodblock.github.client.gui.GuiFluidPatternTerminalEx; +import com.glodblock.github.client.gui.container.FluidPrioritization; import com.glodblock.github.nei.object.OrderStack; import com.glodblock.github.nei.recipes.FluidRecipe; import com.glodblock.github.network.CPacketTransferRecipe; @@ -30,7 +32,11 @@ public class FluidPatternTerminalRecipeTransferHandler implements IOverlayHandle @Override public void overlayRecipe(GuiContainer firstGui, IRecipeHandler recipe, int recipeIndex, boolean shift) { if (isCorrectGui(firstGui)) { - List> in = FluidRecipe.getPackageInputs(recipe, recipeIndex); + boolean priority = false; + if (firstGui instanceof GuiBaseFluidPatternTerminalEx) { + priority = ((GuiBaseFluidPatternTerminalEx)firstGui).container.prioritize; + } + List> in = FluidRecipe.getPackageInputs(recipe, recipeIndex, priority); List> out = FluidRecipe.getPackageOutputs(recipe, recipeIndex, !notUseOther(recipe)); boolean craft = shouldCraft(recipe); FluidCraft.proxy.netHandler.sendToServer(new CPacketTransferRecipe(in, out, craft)); diff --git a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java index 2c3556c1..27f59232 100644 --- a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java +++ b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java @@ -32,18 +32,14 @@ public final class FluidRecipe { } } - public static List> getPackageInputs(IRecipeHandler recipe, int index) { + public static List> getPackageInputs(IRecipeHandler recipe, int index, boolean priority) { TemplateRecipeHandler tRecipe = (TemplateRecipeHandler) recipe; if (tRecipe == null || !IdentifierMap.containsKey(tRecipe.getOverlayIdentifier())) return new ArrayList<>(); if (tRecipe.getOverlayIdentifier() == null) return getPackageInputsLegacy(recipe, index); IRecipeExtractor extractor = IdentifierMap.get(tRecipe.getOverlayIdentifier()); if (extractor == null) return new ArrayList<>(); List tmp = new ArrayList<>(tRecipe.getIngredientStacks(index)); - FluidPrioritization fluid = FluidPrioritization.ENABLED; - switch(fluid) { - case ENABLED: - MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText("hi")); - + if (priority) { for (int i = 0; i < tmp.size(); i++) { if(tmp.get(i).toString().contains("GregTech_FluidDisplay")) { MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText(String.valueOf(tmp.size()))); diff --git a/src/main/java/com/glodblock/github/network/CPacketFluidPatternTermBtns.java b/src/main/java/com/glodblock/github/network/CPacketFluidPatternTermBtns.java index f30ae254..f7953e67 100644 --- a/src/main/java/com/glodblock/github/network/CPacketFluidPatternTermBtns.java +++ b/src/main/java/com/glodblock/github/network/CPacketFluidPatternTermBtns.java @@ -106,6 +106,9 @@ public class CPacketFluidPatternTermBtns implements IMessage { case "PatternTerminalEx.ActivePage": cpt.getPatternTerminal().setActivePage(Integer.parseInt(Value)); break; + case "PatternTerminalEx.Prioritize": + cpt.getPatternTerminal().setPrioritization(Value.equals("1")); + break; } } else if(Name.equals( "Terminal.Cpu" ) && c instanceof ContainerFluidCraftConfirm) { final ContainerFluidCraftConfirm qk = (ContainerFluidCraftConfirm) c; From ae7de51dbf4a360849608bb50c4fa3a3ebad6c32 Mon Sep 17 00:00:00 2001 From: Runakai1 Date: Sat, 13 Aug 2022 11:56:51 +0200 Subject: [PATCH 3/3] Changed way to see if item is a fluid display --- .../java/com/glodblock/github/nei/recipes/FluidRecipe.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java index 27f59232..9b8f6a11 100644 --- a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java +++ b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java @@ -7,10 +7,12 @@ import com.glodblock.github.client.gui.container.FluidPrioritization; import com.glodblock.github.nei.object.IRecipeExtractor; import com.glodblock.github.nei.object.IRecipeExtractorLegacy; import com.glodblock.github.nei.object.OrderStack; +import gregtech.common.items.GT_FluidDisplayItem; import ibxm.Player; import net.minecraft.client.gui.Gui; import net.minecraft.network.play.client.C01PacketChatMessage; import net.minecraft.server.MinecraftServer; +import net.minecraftforge.fluids.Fluid; import net.minecraftforge.server.command.ForgeCommand; import tv.twitch.chat.Chat; @@ -41,7 +43,7 @@ public final class FluidRecipe { List tmp = new ArrayList<>(tRecipe.getIngredientStacks(index)); if (priority) { for (int i = 0; i < tmp.size(); i++) { - if(tmp.get(i).toString().contains("GregTech_FluidDisplay")) { + if(tmp.get(i).item.getItem() instanceof GT_FluidDisplayItem) { MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText(String.valueOf(tmp.size()))); PositionedStack Stack = tmp.get(i); tmp.remove(Stack);