- 已编辑
- 名称:
DW权限系统
- 作者:
AmberKeter
- 版本:
1.0.2
- 兼容版本:
all
- 平台:
all
- 操作系统:
all
- 前置插件: User
- 仓库地址: MobiusOlivOSPlugin
下载
说明
本插件基于
[User](https://forum.olivos.run/d/50-dreamworld)
系统实现了各用户权限的定义与修改,为DW系列插件提供基础性数据支持。
指令前缀:*level
指令表:
指令格式 说明 info
获取用户权限数据 set [target] [level]
将[target]的权限设置为[level] help [entry]
获取[entry]的详细信息。如: *level help info
[target]使用MID(MobiusID)格式,可以使用四种方法指示对应用户,格式如下:
格式 说明 @ 本格式为响应平台的@操作 uuid 用户的唯一识别码,使用标准uuid格式(8-4-4-4-12) [platform]-[id]
平台-账号
的形式,用于指定其他平台账户。如:qq-1761089294
[id]
传统账号格式,只支持指定当前平台账户。如: 1761089294
其中,
[platform]
代表目标账户的平台,[id]
代表目标的账户,若使用第四种格式,则[platform]
默认为当前平台。
特别声明,权限的修改需要Admin
及以上权限,在最初始的情况下(即数据中不存在任何用户权限的情况下),只有骰主
可以使用指令
修改他人权限,因此该插件一定程度上依赖OlivaDiceCore
截图示例
文件格式
Level
插件共有两个data
文件,存储于plugin/data/DreamWorld/Level
下,为Data.json
与Config.json
,其中Data
文件为用户权限数据文件,一般情况下不应有任何改动(手动修改权限时除外,但不建议使用该方法),Config
文件为配置文件,内含回复词与权限定义在内的所有数据,一般情况下不建议在运行目录下改动(读写发生错误时将以初始格式覆盖),建议本地留档,以防未知错误导致覆写。Config文件格式
键名 默认值 数据类型 说明 Default 0 int 权限默认值,即用户初始权限 Reply 见上图 str 回复语句,其中 nick
代表用户名,self
代表骰子名,level
代表权限单元,由于无法确保self
值一定存在,请尽量避免使用Separator - str 分隔符,默认情况下权限单元为 {level}{Separator}{name}
,如0-游客
Level 见上图 dict 权限定义 List 见上图 dict 管理权限定义 Help 见上图 dict Help数据定义 Level单元格式
键名:为一个数字,代表权限等级,如
0
值:共两个可填字段,分别为name
与info
name:权限名,被用于权限单元生成,缺失时权限单元格式变为{level}
,如0
info:权限说明,被用于回复词生成,将被添加在回复语句最后。List单元格式
该字典下有且仅允许有三个单元,分别为
User
、Admin
与Master
其值均为列表,且列表元素均为int
,指明哪些权限位于该身份组下(默认为User
)
如"Master":[3]
,则代表权限3为Master权限。
该身份组仅用于判定是否有权限更改他人权限