Commands (/myperm)

基本信息

属性 值
主类 mypermissions.command.core.Commands
内嵌类 Commands.MyPermissionManagerCommands(仅内置权限系统生效)
根命令 /myperm(别名 p, perm)
根权限 mypermissions.cmd

功能

定义 MyPermissions 的所有命令树入口:根命令 /myperm 与子命令 /perm config,由 CommandManager.registerCommands(Commands.class, null, ...) 注册。

注意:根 permission 节点使用 mypermissions.cmd;配置类的子节点使用 mypermissions.cmd.config.*。

命令清单

命令 权限节点 语法 行为
/myperm mypermissions.cmd /perm <command> 发送帮助菜单
/myperm config mypermissions.cmd.config /perm config <command> 发送 config 子树帮助
/myperm config reload mypermissions.cmd.config.reload /perm config reload reload config + 重选权限系统 + 重载本地化

MyPermissionManagerCommands(只有当 PermissionProxy.getPermissionManager() instanceof MyPermissionsBridge 时注册)

命令 权限节点 语法 行为
/perm group mypermissions.cmd.group /perm group <command> 发送子树帮助
/perm group add mypermissions.cmd.group.add /perm group add <name> [parents] 创建新组,保存
/perm group delete mypermissions.cmd.group.delete /perm group delete <name> 删除组,保存
/perm group rename mypermissions.cmd.group.rename /perm group rename <group> <name> 重命名组
/perm group list mypermissions.cmd.group.list /perm group list 列出所有组 + 其 parents
/perm group perm mypermissions.cmd.group.perm /perm group perm <command> 发送子帮助
/perm group perm add mypermissions.cmd.group.perm.add /perm group perm add <group> <perm> 给组添加权限节点
/perm group perm remove mypermissions.cmd.group.perm.remove /perm group perm remove <group> <perm> 从组删除权限节点
/perm group perm list mypermissions.cmd.group.perm.list /perm group perm list <group> 列出组全部权限节点
/perm user mypermissions.cmd.user /perm user <command> 发送子树帮助
/perm user group mypermissions.cmd.user.group /perm user group <command> 发送子树帮助
/perm user group show mypermissions.cmd.user.group.show /perm user group show <player> 显示玩家的组
/perm user group set mypermissions.cmd.user.group.set /perm user group set <player> <group> 设置玩家的组(不存在则创建 User)
/perm user list mypermissions.cmd.user.list /perm user list 列出全部用户
/perm user perm mypermissions.cmd.user.perm /perm user perm <command> 发送子树帮助
/perm user perm add mypermissions.cmd.user.perm.add /perm user perm add <player> <perm> 给玩家添加权限节点
/perm user perm remove mypermissions.cmd.user.perm.remove /perm user perm remove <player> <perm> 移除玩家权限节点
/perm user perm list mypermissions.cmd.user.perm.list /perm user perm list <player> 列出玩家全部权限节点

行为细节

  • 所有命令返回 CommandResponse:成功返回 DONE,参数不足返回 SEND_SYNTAX,命令未指定子操作返回 SEND_HELP_MESSAGE(由 CommandTreeNode.commandCall 解析)。
  • 组/用户权限写操作都会调用 getManager().saveGroups() 或 saveUsers() 立即落盘。
  • Ticker.onCommandExecuted 在 hook 阶段还会用 cmd.<name> 作为兜底权限节点,任何已注册的命令若没在权限树中找到映射,按 MC 命名空间检查玩家节点;不通过则 setCanceled(true) + commands.generic.permission。

相关条目