fix: adapt /fly OP permission check to 1.21.11 PermissionPredicate API
build / build (push) Has been cancelled

This commit is contained in:
database-mysql committed 2026-10-19 02:44:10 +08:00
1 parent 9b4aacf18e
commit c7e041363c
1 file changed
+2 -1
@@ -3,6 +3,7 @@ package top.gtb520.java.mods.openfly.Commands;
import com.mojang.brigadier.Command; import com.mojang.brigadier.Command;
import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback;
import net.fabricmc.fabric.api.entity.event.v1.ServerLivingEntityEvents; import net.fabricmc.fabric.api.entity.event.v1.ServerLivingEntityEvents;
import net.minecraft.command.DefaultPermissions;
import net.minecraft.command.argument.EntityArgumentType; import net.minecraft.command.argument.EntityArgumentType;
import net.minecraft.entity.damage.DamageTypes; import net.minecraft.entity.damage.DamageTypes;
import net.minecraft.server.command.CommandManager; import net.minecraft.server.command.CommandManager;
@@ -42,7 +43,7 @@ public class fly {
}) })
// /fly <player> - 切换指定玩家的飞行状态(需要OP权限) // /fly <player> - 切换指定玩家的飞行状态(需要OP权限)
.then(CommandManager.argument("player", EntityArgumentType.player()) .then(CommandManager.argument("player", EntityArgumentType.player())
.requires(source -> source.hasPermissionLevel(2)) .requires(source -> source.getPermissions().hasPermission(DefaultPermissions.GAMEMASTERS))
.executes(context -> { .executes(context -> {
ServerPlayerEntity targetPlayer = EntityArgumentType.getPlayer(context, "player"); ServerPlayerEntity targetPlayer = EntityArgumentType.getPlayer(context, "player");
UUID playerId = targetPlayer.getUuid(); UUID playerId = targetPlayer.getUuid();