From e13b035b10cf3b31dba73b399766aebd4249fb11 Mon Sep 17 00:00:00 2001 From: ChomeNS <95471003+chomens@users.noreply.github.com> Date: Tue, 12 Aug 2025 08:32:30 +0700 Subject: [PATCH] feat: use ChangeGameModeC2SPacket for gamemode self care --- .../java/land/chipmunk/chipmunkmod/modules/SelfCare.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/land/chipmunk/chipmunkmod/modules/SelfCare.java b/src/main/java/land/chipmunk/chipmunkmod/modules/SelfCare.java index b45d023..57078cc 100644 --- a/src/main/java/land/chipmunk/chipmunkmod/modules/SelfCare.java +++ b/src/main/java/land/chipmunk/chipmunkmod/modules/SelfCare.java @@ -6,7 +6,9 @@ import land.chipmunk.chipmunkmod.listeners.ListenerManager; import net.minecraft.client.MinecraftClient; import net.minecraft.client.network.ClientPlayNetworkHandler; import net.minecraft.client.network.ClientPlayerEntity; +import net.minecraft.network.packet.c2s.play.ChangeGameModeC2SPacket; import net.minecraft.text.Text; +import net.minecraft.world.GameMode; import static land.chipmunk.chipmunkmod.util.ServerUtilities.serverHasCommand; @@ -60,7 +62,8 @@ public class SelfCare implements Listener { if (!player.hasPermissionLevel(2) && opEnabled && serverHasCommand("op")) networkHandler.sendChatCommand("op @s[type=player]"); else if (!player.isInCreativeMode() && gamemodeEnabled) - networkHandler.sendChatCommand("gamemode creative"); + // ViaVersion will automatically convert this to `/gamemode creative` + networkHandler.sendPacket(new ChangeGameModeC2SPacket(GameMode.CREATIVE)); else if (!cspy && cspyEnabled && serverHasCommand("c")) if ( !CommandCore.INSTANCE.ready