Resource icon

插件 Multipass —— 高级的权限组系统 [1.0.0] 1.0.0

版权类型
转载
API版本
1.0.0
版权链接
功能

  • 独立的权限与权限组
  • 权限组继承
  • 不同世界有不同的权限与组
  • API 开发者工具


  • 权限
    multipass.admin - 使用Multipass指令


    指令


    基础指令
    /perm help​

    重载配置
    /perm reload​

    刷新权限
    /perm refresh
    /perm update
    /perm recalculate

    刷新所有用户的权限。我希望你不需要使用这个指令​
    检测权限
    /perm check <玩家>

    检测玩家是否有权限
    这个指令智能检测在线玩家.​
    将权限导为文件
    /perm export [<文件名>]

    导出权限(所有组与用户)到一个文件内.
    例子:
    /perm export data - 保存所有权限到 data.yml 文件中
    从文件中导入权限
    /perm import [overwrite] [<文件名>]
    /perm import [over] [<文件名>]

    从文件中导入权限. 参数 "overwrite" 会使导入信息之前先删除所有的组和用户
    例子:
    /perm import data - 从 data.yml 文件中载入权限信息
    /perm import overwrite - 删除所有的权限然后从 import.yml 载入权限信息
    显示玩家的信息
    /user <用户>

    显示用户的完整信息 (权限组, 权限, 前缀, 后缀)​
    移除用户
    /user remove <玩家>
    /user rmv <玩家>
    /user delete <玩家>
    /user del <玩家>

    删除玩家的信息. 如果玩家是在线玩家,则会重新创建一个新的记录并且玩家会被加入到默认组中(如果配置文件中定义的话)。​
    设置用户权限
    /user <用户> setperm [<世界>] <权限.节点>
    /user <用户> sp [<世界>] <权限.节点>
    /user <用户> addperm [<世界>] <权限.节点>
    /user <用户> ap [<世界>] <权限.节点>

    设置用户的权限节点。如果你需要定义世界限制的权限节点则定义世界名。如果要使用负的权限则在权限之前添加符号"-".
    例子:
    /user fromgate sp -一个特别优秀.的插件​
    移除用户权限
    /user <用户> removeperm [<世界>] <权限.节点>
    /user <用户> rmvperm [<世界>] <权限.节点>
    /user <用户> rperm [<世界>] <权限.节点>
    /user <用户> rp [<世界>] <权限.节点>

    移除用户的权限
    例子:
    /user fromgate rp 一个特别优秀.的插件

    设置用户的权限组
    /user <用户> setgroup [<世界>] <权限组>
    /user <用户> setgrp [<世界>] <权限组>
    /user <用户> sgrp [<世界>] <权限组>
    /user <用户> sg [<世界>] <权限组>

    设置用户的权限组。玩家所在的其他组会被移除
    例子:
    /user cytrus sg vip​
    添加用户的权限组
    /user <用户> addgroup [<世界>] <权限组>
    /user <用户> addgrp [<世界>] <权限组>
    /user <用户> agrp [<世界>] <权限组>
    /user <用户> ag [<世界>] <权限组>

    添加用户的权限组。不会影响到玩家的其他组
    例子:
    /user cytrus ag admin​
    移除玩家的权限组
    /user <用户> removegroup [<世界>] <权限组>
    /user <用户> rmvgrp [<世界>] <权限组>
    /user <用户> rgrp [<世界>] <权限组>
    /user <用户> rg [<世界>] <权限组>

    移除用户所在的组​

    设置用户的前缀
    /user <用户> setprefix <前缀>
    /user <用户> prefix <前缀>
    /user <用户> px <前缀>​

    设置用户的后缀
    /user <用户> setsuffix <后缀>
    /user <用户> suffix <后缀>
    /user <用户> sx <后缀>​

    显示权限组信息
    /group [<权限组>]

    显示所有的权限组或单独的权限组的详细信息​
    创建一个新权限组
    /group create <权限组>
    /group new <权限组>

    创建新的权限组​
    移除权限组
    /group remove <权限组>
    /group rmv <权限组>
    /group delete <权限组>
    /group del <权限组>

    删除权限组。这个不会影响到玩家的信息文件,所以如果你创了一个相同名字的组,先前在同名的组的玩家也同样会加入新的组​
    设置权限
    /group <组> addperm [<世界>] <权限>
    /group <组> setperm [<世界>] <权限>
    /group <组> aperm [<世界>] <权限>
    /group <组> sp [<世界>] <权限>

    设置权限组的权限节点。如果你需要定义世界限制的权限节点则定义世界名。如果要使用负的权限则在权限之前添加符号"-",这会影响到所有在权限组内的用户。
    例子:
    /group vip sp -fantastic.permission
    /group vip sp nether_world magic.permission​
    移除权限
    /group <组> removeperm [<世界>] <权限>
    /group <组> rmvperm [<世界>] <权限>
    /group <组> rperm [<世界>] <权限>
    /group <组> rp [<世界>] <权限>

    移除权限组中的一个权限。
    例子:
    /group vip rp fantastic.permission​
    设置权限组
    /group <权限组> setgroup [<世界>] <权限组2>
    /group <权限组> setgrp [<世界>] <权限组2>
    /group <权限组> sgrp [<世界>] <权限组2>
    /group <权限组> sg [<世界>] <权限组2>

    移动权限组至"母体"。这个组会继承所有由母体提供的权限。另一个组则会被移除(定义的第一个权限组)。玩家 - 目标的权限组拥有来自母体的权限.​
    添加权限组
    /group <组> addgroup [<世界>] <权限组2>
    /group <组> addgrp [<世界>] <权限组2>
    /group <组> agrp [<世界>] <权限组2>
    /group <组> ag [<世界>] <权限组2>

    天假一个额外的母体权限组到目标权限组。玩家 - 目标权限组的成员会有所有被定义的小组的权限​
    移除关联小组
    /group <组> removegroup [<世界>] <权限组2>
    /group <组> rmvgrp [<世界>] <权限组>
    /group <组> rgrp [<世界>] <权限组2>
    /group <组> rg [<世界>] <权限组2>

    从权限组2中移除权限组1.​
    设置权限组前缀
    /group <组> setprefix <前缀>
    /group <组> prefix <前缀>
    /group <组> px <前缀>​

    设置权限组后缀
    /group <组> setsuffix <后缀>
    /group <组> suffix <后缀>
    /group <组> sx <后缀>

    配置选项文件 config.yml
    1. # Multipass, Nukkit 权限组系统
    2. #
    3. general:
    4. # 语言文件. 支持语言:
    5. # eng - 英语,
    6. # rus - 俄语,
    7. # tur - 土耳其语.
    8. # 你可以在这里协助翻译插件: https://crowdin.com/project/multipass/invite
    9. language: default
    10. # 保存翻译文件
    11. language-save: false
    12. # Debug 模式. 平常你不需要开启
    13. debug: false
    14. permissions:
    15. group:
    16. # 默认权限组. 所有的新玩家都会自动加入这个权限组
    17. default-group: default
    18. # 默认权限组的优先权数值
    19. default-priority: 10
    20. # 使用权限组名来添加额外的权限。如果这个设置被开启
    21. # 所有的权限组员就会有额外的权限: permission.group.<权限组ID>
    22. group-as-permission: true
    23. user:
    24. # 玩家的默认优先权数值
    25. default-priority: 100
    26. multiworld:
    27. # 开启多世界支持
    28. enable: false
    29. # 开启世界镜像
    30. mirrors:
    31. world: nether_world, end_world
    32. storage:
    33. # 数据库类型:
    34. # - YAML - yaml 文件
    35. # - DATABASE - MySQL 或 SQLite. DbLib 需要作为前置: http://nukkit.ru/resources/dblib.14/
    36. type: YAML
    37. # 自动更新间隔(为多服务器系统设计). 如果这个数值不等于 '0'
    38. # 权限组和权限就会被自动更新
    39. # 时间格式: 1s - 1 秒, 1m - 1 分钟, 1h - 1小时
    40. auto-update-interval: '0'
    41. database:
    42. # 数据库配置:
    43. # - DEFAULT - 默认数据库,在 DbLib 中储存
    44. # - SQLITE - 自定义 SQLite 文件 (文件名需要在下面提供)
    45. # - MYSQL - 自定义 MySQL 数据库 (配置需要在下面提供)
    46. source: DEFAULT
    47. sqlite:
    48. # 自定义 SQLite 文件名称
    49. file: permissions.db
    50. # 自定义 MySQL 配置
    51. mysql:
    52. host: localhost
    53. port: 3306
    54. database: database
    55. username: nukkit
    56. password: tikkun
  • 复制代码

    权限组配置文件 groups.yml
    1. # 权限组配置例子:
    2. #
    3. #default:
    4. # groups: # 权限组列表 (所有的权限组都会在这里被定义)
    5. # - vip
    6. # permissions: # 权限列表
    7. # - plugin.vip
    8. # - plugin.test
    9. # prefix: '&6[贵族]' # 权限组前缀,可以被第三方组队插件使用
    10. # suffix: '' # 权限组前缀,可以被第三方组队插件使用
    11. # priority: 10 # 权限组优先权
    12. # worlds: # 每个世界所拥有的组与权限
    13. # end:
    14. # groups:
    15. # - vip_end
    16. # permissions:
    17. # - -plugin.vip # 否定权限需要在前面添加 "-"
    18. # - -plugin.test
    19. default:
    20. groups: []
    21. permissions:
    22. - default.permission
    23. prefix: '[游客]'
    24. suffix: ''
    25. priority: 0
    26. worlds:
    27. world1:
    28. groups:
    29. - worldgroup
    30. permissions:
    31. - world.permission
  • 复制代码


    用户配置文件
    用户文件被保存在 /plugins/users/ 文件夹内. 这是一个例子: /plugins/users/Cytrus.yml
    这里是一个用户文件的例子:​
    1. groups:
    2. - default
    3. - testgroup
    4. permissions:
    5. - test.permission
    6. - -default.permission
    7. prefix: '[会员]'
    8. suffix: ''
    9. priority: 100
    10. worlds:
    11. world1:
    12. groups:
    13. - worldgroup
    14. permissions:
    15. - world.permission
Author
Carlyyb
价格
8金粒
Downloads
31
Views
1,886
First release
Last update

Ratings

0.00 star(s) 0 ratings

Share this resource

Back
Top Bottom