From 16ed63e799b0d7123a9a5ba2dee9fd3d459adbaf Mon Sep 17 00:00:00 2001 From: GaLi <3096147684@qq.com> Date: Mon, 11 Aug 2025 09:00:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BD=BB=E5=BA=95=E5=AE=8C=E6=88=90=E6=A0=B7?= =?UTF-8?q?=E6=9D=BF=E5=80=8D=E5=A2=9E=E5=8A=9F=E8=83=BD(=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0x10=E6=8C=89=E9=92=AE)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle.properties | 2 +- .../mixin/GuiExPatternProviderMixin.java | 53 +++++++++++++++++++ 2 files changed, 54 insertions(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 013d721..3298483 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ org.gradle.jvmargs=-Xmx1G loom.platform = forge # Mod properties -mod_version = 1.0.0 +mod_version = 1.0.1 maven_group = com.extendedae_plus archives_name = extendedae_plus diff --git a/src/main/java/com/extendedae_plus/mixin/GuiExPatternProviderMixin.java b/src/main/java/com/extendedae_plus/mixin/GuiExPatternProviderMixin.java index bef6c36..161faa5 100644 --- a/src/main/java/com/extendedae_plus/mixin/GuiExPatternProviderMixin.java +++ b/src/main/java/com/extendedae_plus/mixin/GuiExPatternProviderMixin.java @@ -94,6 +94,12 @@ public abstract class GuiExPatternProviderMixin extends PatternProviderScreen { + try { + net.minecraft.client.Minecraft minecraft = net.minecraft.client.Minecraft.getInstance(); + if (minecraft.level != null && minecraft.player != null) { + net.minecraft.server.level.ServerPlayer serverPlayer = minecraft.getSingleplayerServer() + .getPlayerList().getPlayer(minecraft.player.getUUID()); + if (serverPlayer != null) { + executePatternScalingOnServer(serverPlayer, "MULTIPLY", 10.0); + } else { + System.out.println("ExtendedAE Plus: 无法获取服务器端玩家实例"); + } + } else { + System.out.println("ExtendedAE Plus: 单机服务器未启动或玩家为null"); + } + } catch (Exception e) { + System.out.println("ExtendedAE Plus: 执行样板x10倍增时发生错误:" + e.getMessage()); + e.printStackTrace(); + } + }, NewIcon.MULTIPLY10); + + // /10 按钮 - 单机模式直接调用服务器端逻辑 + this.divideBy10Button = new ActionEPPButton((b) -> { + try { + net.minecraft.client.Minecraft minecraft = net.minecraft.client.Minecraft.getInstance(); + if (minecraft.level != null && minecraft.player != null) { + net.minecraft.server.level.ServerPlayer serverPlayer = minecraft.getSingleplayerServer() + .getPlayerList().getPlayer(minecraft.player.getUUID()); + if (serverPlayer != null) { + executePatternScalingOnServer(serverPlayer, "DIVIDE", 10.0); + } else { + System.out.println("ExtendedAE Plus: 无法获取服务器端玩家实例"); + } + } else { + System.out.println("ExtendedAE Plus: 单机服务器未启动或玩家为null"); + } + } catch (Exception e) { + System.out.println("ExtendedAE Plus: 执行样板/10时发生错误:" + e.getMessage()); + e.printStackTrace(); + } + }, NewIcon.DIVIDE10); + + this.addToLeftToolbar(this.x10Button); + this.addToLeftToolbar(this.divideBy10Button); } /**