fix: op self care

This commit is contained in:
Chayapak Supasakul 2025-12-20 12:39:58 +07:00
parent bf9fd28c1c
commit eb3550512d
Signed by: ChomeNS
SSH key fingerprint: SHA256:0YoxhdyXsgbc0nfeB2N6FYE60mxMU7DS4uCUMaw2mvA

View file

@ -6,6 +6,7 @@ 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.command.DefaultPermissions;
import net.minecraft.network.packet.c2s.play.ChangeGameModeC2SPacket;
import net.minecraft.text.Text;
import net.minecraft.world.GameMode;
@ -59,7 +60,7 @@ public class SelfCare implements Listener {
if (networkHandler == null || player == null) return;
if (!player.isCreativeLevelTwoOp() && opEnabled && serverHasCommand("op"))
if (!player.getPermissions().hasPermission(DefaultPermissions.OWNERS) && opEnabled && serverHasCommand("op"))
networkHandler.sendChatCommand("op @s[type=player]");
else if (!player.isInCreativeMode() && gamemodeEnabled)
// ViaVersion will automatically convert this to `/gamemode creative`
@ -68,7 +69,6 @@ public class SelfCare implements Listener {
if (
!CommandCore.INSTANCE.ready
|| !CommandCore.INSTANCE.runFillCommand
|| !player.isInCreativeMode()
|| !player.isCreativeLevelTwoOp()
) {
networkHandler.sendChatCommand("c on");