From b43c7791be2b3ea41fd09e7ca720ca93919bc236 Mon Sep 17 00:00:00 2001 From: zwry-stf Date: Sat, 20 Dec 2025 15:56:33 +0100 Subject: [PATCH] Update UI-Utils to Minecraft 1.21.10 --- gradle.properties | 8 +++--- src/main/java/com/ui_utils/MainClient.java | 9 ++++--- .../ui_utils/mixin/BookEditScreenMixin.java | 7 +++--- .../com/ui_utils/mixin/BookScreenMixin.java | 7 +++--- .../ui_utils/mixin/HandledScreenMixin.java | 25 ++++++++++--------- .../java/com/ui_utils/mixin/ScreenMixin.java | 9 ++++--- 6 files changed, 36 insertions(+), 29 deletions(-) diff --git a/gradle.properties b/gradle.properties index f0c9177..9a383db 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,12 +4,12 @@ org.gradle.parallel=true # Fabric Properties # check these on https://fabricmc.net/develop -minecraft_version=1.21.7 -yarn_mappings=1.21.7+build.6 -loader_version=0.16.14 +minecraft_version=1.21.10 +yarn_mappings=1.21.10+build.3 +loader_version=0.18.3 # Fabric API -fabric_version=0.128.2+1.21.7 +fabric_version=0.138.4+1.21.10 # Mod Properties mod_version = 2.4.0 diff --git a/src/main/java/com/ui_utils/MainClient.java b/src/main/java/com/ui_utils/MainClient.java index 6e50a03..6eede1b 100644 --- a/src/main/java/com/ui_utils/MainClient.java +++ b/src/main/java/com/ui_utils/MainClient.java @@ -14,6 +14,7 @@ import net.minecraft.client.gui.DrawContext; import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.gui.widget.ButtonWidget; +import net.minecraft.client.input.SystemKeycodes; import net.minecraft.client.option.KeyBinding; import net.minecraft.client.util.InputUtil; import net.minecraft.network.packet.Packet; @@ -24,6 +25,7 @@ import net.minecraft.screen.sync.ItemStackHash; import net.minecraft.text.Text; import net.minecraft.text.TextCodecs; +import net.minecraft.util.Identifier; import org.jetbrains.annotations.NotNull; import org.lwjgl.glfw.GLFW; import org.slf4j.Logger; @@ -49,7 +51,8 @@ public void onInitializeClient() { UpdateUtils.checkForUpdates(); // register "restore screen" key - restoreScreenKey = KeyBindingHelper.registerKeyBinding(new KeyBinding("Restore Screen", InputUtil.Type.KEYSYM, GLFW.GLFW_KEY_V, "UI Utils")); + restoreScreenKey = KeyBindingHelper.registerKeyBinding(new KeyBinding("Restore Screen", InputUtil.Type.KEYSYM, GLFW.GLFW_KEY_V, + KeyBinding.Category.create(Identifier.of("ui_utils", "ui-utils")))); // register event for END_CLIENT_TICK ClientTickEvents.END_CLIENT_TICK.register((client) -> { @@ -63,7 +66,7 @@ public void onInitializeClient() { }); // set java.awt.headless to false if os is not mac (allows for JFrame guis to be used) - if (!MinecraftClient.IS_SYSTEM_MAC) { + if (!SystemKeycodes.IS_MAC_OS) { System.setProperty("java.awt.headless", "false"); monospace = new Font(Font.MONOSPACED, Font.PLAIN, 10); darkWhite = new Color(220, 220, 220); @@ -441,7 +444,7 @@ public static void createWidgets(MinecraftClient mc, Screen screen) { frame.add(buttonClickButton); frame.setVisible(true); }).width(115).position(5, 185).build(); - fabricatePacketButton.active = !MinecraftClient.IS_SYSTEM_MAC; + fabricatePacketButton.active = !SystemKeycodes.IS_MAC_OS; screen.addDrawableChild(fabricatePacketButton); screen.addDrawableChild(ButtonWidget.builder(Text.of("Copy GUI Title JSON"), (button) -> { diff --git a/src/main/java/com/ui_utils/mixin/BookEditScreenMixin.java b/src/main/java/com/ui_utils/mixin/BookEditScreenMixin.java index 1a78367..62ba553 100644 --- a/src/main/java/com/ui_utils/mixin/BookEditScreenMixin.java +++ b/src/main/java/com/ui_utils/mixin/BookEditScreenMixin.java @@ -4,6 +4,7 @@ import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.gui.screen.ingame.BookEditScreen; import net.minecraft.client.gui.widget.TextFieldWidget; +import net.minecraft.client.input.KeyInput; import net.minecraft.text.Text; import org.lwjgl.glfw.GLFW; import org.spongepowered.asm.mixin.Mixin; @@ -32,8 +33,8 @@ public void init(CallbackInfo ci) { // create chat box TextFieldWidget addressField = new TextFieldWidget(textRenderer, 5, 245, 160, 20, Text.of("Chat ...")) { @Override - public boolean keyPressed(int keyCode, int scanCode, int modifiers) { - if (keyCode == GLFW.GLFW_KEY_ENTER) { + public boolean keyPressed(KeyInput input) { + if (input.getKeycode() == GLFW.GLFW_KEY_ENTER) { if (this.getText().equals("^toggleuiutils")) { SharedVariables.enabled = !SharedVariables.enabled; if (mc.player != null) { @@ -54,7 +55,7 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { this.setText(""); } - return super.keyPressed(keyCode, scanCode, modifiers); + return super.keyPressed(input); } }; addressField.setText(""); diff --git a/src/main/java/com/ui_utils/mixin/BookScreenMixin.java b/src/main/java/com/ui_utils/mixin/BookScreenMixin.java index 87b9a19..cf8a17a 100644 --- a/src/main/java/com/ui_utils/mixin/BookScreenMixin.java +++ b/src/main/java/com/ui_utils/mixin/BookScreenMixin.java @@ -4,6 +4,7 @@ import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.gui.screen.ingame.BookScreen; import net.minecraft.client.gui.widget.TextFieldWidget; +import net.minecraft.client.input.KeyInput; import net.minecraft.text.Text; import org.lwjgl.glfw.GLFW; import org.spongepowered.asm.mixin.Mixin; @@ -32,8 +33,8 @@ public void init(CallbackInfo ci) { // create chat box TextFieldWidget addressField = new TextFieldWidget(textRenderer, 5, 245, 160, 20, Text.of("Chat ...")) { @Override - public boolean keyPressed(int keyCode, int scanCode, int modifiers) { - if (keyCode == GLFW.GLFW_KEY_ENTER) { + public boolean keyPressed(KeyInput input) { + if (input.getKeycode() == GLFW.GLFW_KEY_ENTER) { if (this.getText().equals("^toggleuiutils")) { SharedVariables.enabled = !SharedVariables.enabled; if (mc.player != null) { @@ -54,7 +55,7 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { this.setText(""); } - return super.keyPressed(keyCode, scanCode, modifiers); + return super.keyPressed(input); } }; addressField.setText(""); diff --git a/src/main/java/com/ui_utils/mixin/HandledScreenMixin.java b/src/main/java/com/ui_utils/mixin/HandledScreenMixin.java index 7d8a900..9fdbb48 100644 --- a/src/main/java/com/ui_utils/mixin/HandledScreenMixin.java +++ b/src/main/java/com/ui_utils/mixin/HandledScreenMixin.java @@ -5,6 +5,7 @@ import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.gui.screen.ingame.HandledScreen; import net.minecraft.client.gui.widget.TextFieldWidget; +import net.minecraft.client.input.KeyInput; import net.minecraft.screen.slot.Slot; import net.minecraft.screen.slot.SlotActionType; import net.minecraft.text.Text; @@ -29,7 +30,7 @@ private HandledScreenMixin() { } @Shadow - protected abstract boolean handleHotbarKeyPressed(int keyCode, int scanCode); + protected abstract boolean handleHotbarKeyPressed(KeyInput input); @Shadow protected abstract void onMouseClick(Slot slot, int slotId, int button, SlotActionType actionType); @Shadow @@ -51,8 +52,8 @@ public void init(CallbackInfo ci) { // create chat box this.addressField = new TextFieldWidget(this.textRenderer, 5, 245, 160, 20, Text.of("Chat ...")) { @Override - public boolean keyPressed(int keyCode, int scanCode, int modifiers) { - if (keyCode == GLFW.GLFW_KEY_ENTER) { + public boolean keyPressed(KeyInput input) { + if (input.getKeycode() == GLFW.GLFW_KEY_ENTER) { if (this.getText().equals("^toggleuiutils")) { SharedVariables.enabled = !SharedVariables.enabled; if (mc.player != null) { @@ -68,13 +69,13 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { } else { mc.getNetworkHandler().sendChatMessage(this.getText()); } - } else { + } else { MainClient.LOGGER.warn("Minecraft network handler (mc.getNetworkHandler()) was null while trying to send chat message from UI Utils."); } this.setText(""); } - return super.keyPressed(keyCode, scanCode, modifiers); + return super.keyPressed(input); } }; this.addressField.setText(""); @@ -85,21 +86,21 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { } @Inject(at = @At("HEAD"), method = "keyPressed", cancellable = true) - public void keyPressed(int keyCode, int scanCode, int modifiers, CallbackInfoReturnable cir) { + public void keyPressed(KeyInput input, CallbackInfoReturnable cir) { cir.cancel(); - if (super.keyPressed(keyCode, scanCode, modifiers)) { + if (super.keyPressed(input)) { cir.setReturnValue(true); - } else if (MainClient.mc.options.inventoryKey.matchesKey(keyCode, scanCode) && (this.addressField == null || !this.addressField.isSelected())) { + } else if (MainClient.mc.options.inventoryKey.matchesKey(input) && (this.addressField == null || !this.addressField.isSelected())) { // Crashes if address field does not exist (because of ui utils disabled, this is a temporary fix.) this.close(); cir.setReturnValue(true); } else { - this.handleHotbarKeyPressed(keyCode, scanCode); + this.handleHotbarKeyPressed(input); if (this.focusedSlot != null && this.focusedSlot.hasStack()) { - if (mc.options.pickItemKey.matchesKey(keyCode, scanCode)) { + if (mc.options.pickItemKey.matchesKey(input)) { this.onMouseClick(this.focusedSlot, this.focusedSlot.id, 0, SlotActionType.CLONE); - } else if (mc.options.dropKey.matchesKey(keyCode, scanCode)) { - this.onMouseClick(this.focusedSlot, this.focusedSlot.id, hasControlDown() ? 1 : 0, SlotActionType.THROW); + } else if (mc.options.dropKey.matchesKey(input)) { + this.onMouseClick(this.focusedSlot, this.focusedSlot.id, input.hasCtrl() ? 1 : 0, SlotActionType.THROW); } } diff --git a/src/main/java/com/ui_utils/mixin/ScreenMixin.java b/src/main/java/com/ui_utils/mixin/ScreenMixin.java index 69439f2..dfc55e6 100644 --- a/src/main/java/com/ui_utils/mixin/ScreenMixin.java +++ b/src/main/java/com/ui_utils/mixin/ScreenMixin.java @@ -9,6 +9,7 @@ import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.gui.screen.ingame.LecternScreen; import net.minecraft.client.gui.widget.TextFieldWidget; +import net.minecraft.client.input.KeyInput; import net.minecraft.text.Text; import org.lwjgl.glfw.GLFW; import org.spongepowered.asm.mixin.Mixin; @@ -51,8 +52,8 @@ public void init(MinecraftClient client, int width, int height, CallbackInfo ci) // create chat box this.addressField = new TextFieldWidget(textRenderer, 5, 245, 160, 20, Text.of("Chat ...")) { @Override - public boolean keyPressed(int keyCode, int scanCode, int modifiers) { - if (keyCode == GLFW.GLFW_KEY_ENTER) { + public boolean keyPressed(KeyInput input) { + if (input.getKeycode() == GLFW.GLFW_KEY_ENTER) { if (this.getText().equals("^toggleuiutils")) { SharedVariables.enabled = !SharedVariables.enabled; if (mc.player != null) { @@ -73,7 +74,7 @@ public boolean keyPressed(int keyCode, int scanCode, int modifiers) { this.setText(""); } - return super.keyPressed(keyCode, scanCode, modifiers); + return super.keyPressed(input); } }; this.addressField.setText(""); @@ -92,4 +93,4 @@ public void render(DrawContext context, int mouseX, int mouseY, float delta, Cal MainClient.createText(mc, context, ((ScreenAccessor) this).getTextRenderer()); } } -} +} \ No newline at end of file