Fix universal terminal mode switch in baubles slot (#378)

This commit is contained in:
Kogepan229 authored and GitHub committed 2025-12-16 18:14:23 +01:00
1 parent ac4bfc9411
commit f24e014bd7
2 files changed
+19 -6

No files matched your search

@@ -7,10 +7,12 @@ import static com.glodblock.github.inventory.item.WirelessMagnet.modeKey;
import java.util.List;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import com.glodblock.github.FluidCraft;
import com.glodblock.github.client.gui.GuiFCImgButton;
import com.glodblock.github.common.item.ItemWirelessUltraTerminal;
import com.glodblock.github.inventory.item.WirelessMagnet;
import com.glodblock.github.network.CPacketFluidPatternTermBtns;
import com.glodblock.github.network.CPacketSwitchGuis;
@@ -24,6 +26,8 @@ public class UltraTerminalButtons implements ICustomButtonDataObject {
public static String restockItems = "restock";
private ItemStack terminal;
private GuiFCImgButton CraftingTerminal;
private GuiFCImgButton PatternTerminal;
private GuiFCImgButton InterfaceTerminal;
@@ -45,6 +49,10 @@ public class UltraTerminalButtons implements ICustomButtonDataObject {
private int offset;
public UltraTerminalButtons(ItemStack terminal) {
this.terminal = terminal;
}
public void initCustomButtons(int guiLeft, int guiTop, int xSize, int ySize, int xOffset, int yOffset,
List<GuiButton> buttonList) {
this.offset = yOffset;
@@ -93,16 +101,21 @@ public class UltraTerminalButtons implements ICustomButtonDataObject {
@Override
public boolean actionPerformedCustomButtons(final GuiButton btn) {
if (btn instanceof GuiFCImgButton) {
UltraTerminalModes mode = null;
if (btn == this.CraftingTerminal) {
FluidCraft.proxy.netHandler.sendToServer(new CPacketSwitchGuis(UltraTerminalModes.CRAFTING, true));
mode = UltraTerminalModes.CRAFTING;
} else if (btn == this.PatternTerminal) {
FluidCraft.proxy.netHandler.sendToServer(new CPacketSwitchGuis(UltraTerminalModes.PATTERN, true));
mode = UltraTerminalModes.PATTERN;
} else if (btn == this.InterfaceTerminal) {
FluidCraft.proxy.netHandler.sendToServer(new CPacketSwitchGuis(UltraTerminalModes.INTERFACE, true));
mode = UltraTerminalModes.INTERFACE;
} else if (btn == this.LevelTerminal) {
FluidCraft.proxy.netHandler.sendToServer(new CPacketSwitchGuis(UltraTerminalModes.LEVEL, true));
mode = UltraTerminalModes.LEVEL;
} else if (btn == this.PatternTerminalEx) {
FluidCraft.proxy.netHandler.sendToServer(new CPacketSwitchGuis(UltraTerminalModes.PATTERN_EX, true));
mode = UltraTerminalModes.PATTERN_EX;
}
if (mode != null) {
ItemWirelessUltraTerminal.setMode(this.terminal, mode);
FluidCraft.proxy.netHandler.sendToServer(new CPacketSwitchGuis(mode, true));
}
if (btn == this.magnetOff || btn == this.magnetME || btn == this.magnetInv) {
@@ -226,6 +226,6 @@ public class ItemWirelessUltraTerminal extends ItemBaseWirelessTerminal
@Override
public ICustomButtonDataObject getCustomDataObject(ICustomButtonProvider provider) {
return new UltraTerminalButtons();
return new UltraTerminalButtons(((IGuiItemObject) provider).getItemStack());
}
}