MiraiDailySign —— 高度自定义的签到插件
-
MiraiDailySign
拥有极高自由度的签到插件。适配 经济服务 Mirai Economy Core。
项目地址:https://github.com/MrXiaoM/MiraiDailySign
简介
本插件为用户的经济服务金钱提供了来源。每日签到可领取自定义货币自定义数量的金钱。
功能
- 高度自定义的回复格式与变量
- 分经济上下文给予奖励
- 给予随机金钱
- 通过脚本给予自定义金钱
- 日签到记录
- 连续签到奖励
- 月签到月历
- Coming soon
截图
脚本
本插件附带一个默认脚本
config/top.mrxiaom.mirai.dailysign/script.js
。你可以使用该脚本
- 为签到反馈提示增加自定义变量
- 自定义月签到月历的样式
- 自定义签到奖励算法
在脚本开头有注释提示,脚本中有访问网络获取一言和获取脚本内随机句子的示例,尽情发挥你的想象吧!
关于自定义月签到月历的函数
function signCalendar(p, data, isGlobal)
中的参数p
,详细用法请见 SurfaceHelper.kt 的源码注释。安装
首先下载并安装以下前置:
必装
mirai-economy-core (经济核心)可选
mirai-skia-plugin (绘图前置,用于绘制签到月历)
再到 Releases 下载插件并放入 plugins 文件夹进行安装。
如果你觉得本插件好用,不妨给本帖
点赞
或给 Github 仓库点个Star
,感谢。控制台使用命令
/dailysign reload
即可重载脚本script.js
以及groups
中的所有签到配置!
重载后会将载入的签到配置写入文件,以保证更新版本之后配置文件兼容,请在重载之前确保你编辑的配置文件已保存!
用户数据在 data 文件夹,不建议手动编辑。用户数据实时保存,若在运行时编辑用户数据,你的更改可能会被覆盖。保证你的 mirai 版本大于或等于 2.11.0
下载 MiraiDailySign-*.mirai2.jar
安装完毕后,编辑配置文件作出你想要的修改。在控制台执行/dailysign reload
重载配置即可~无桌面环境系统配置
如果你需要在无桌面环境中使用绘图功能(签到日历),请将相关的中文字体(比如黑体)放到以下目录(相对于 mirai 运行目录)
data/xyz.cssxsh.mirai.plugin.mirai-skia-plugin/fonts/
其它插件
推荐与其它已适配经济系统的插件搭配使用。欢迎在 Pull Requests 补充该列表,仅接受补充 MiraiForum 帖子链接,要求插件开源。
权限
权限 说明 top.mrxiaom.mirai.dailysign:command.miraidailysign 允许重载插件 top.mrxiaom.mirai.dailysign:calendar 允许触发查看签到日历 签到命令也需要权限,默认权限是
top.mrxiaom.mirai.dailysign:sign.default
,可以在配置文件中设置。这里是内置权限系统的一些常用的给予权限命令,不要乱加空格,不要乱删空格
给予某群所有人权限
/perm permit m群号.* 权限
,如/perm permit m114514.* com.example:name
给予某群某人权限/perm permit m群号.QQ号 权限
,如/perm permit m114514.1919810 com.example:name
给予某人权限/perm permit QQ号 权限
,如/perm permit 1919810 com.example:name
配置教程
打开目录
./config/top.mrxiaom.mirai.dailysign/groups/
,使用文本编辑器打开default.yml
,按照自己的需要修改配置项。如果你需要不同配置,请把
default.yml
复制改名为任意名称.yml
再进行编辑。用法
如果没有编辑过配置文件的话,用法如下
@机器人 签到 @机器人 签到日历 @机器人 群签到日历
默认需要at,可以设置不at,为了避免机器人之间冲突,
强烈建议
开启需要at。捐助
前往 爱发电 捐助我。
-
请问该如何在 今日已签到的提示 中使用在script.js设置的全局变量
-
# 签到配置文件 success-message: - '$quote' - '$avatar' - '$nameCardOrNick ($id) 签到成功!' - '你获得以下奖励' - '$rewards' - '' # 你的变量 - '$xxx前后随便跟什么都无所谓'
// script.js var valueYouWant = "你要的变量"; function replace(s, config, isSuccess) { // 中间省略 return s .replace("$nameCardOrNick", nameCardOrNick) // 中间省略 .replace("$xxx", valueYouWant) ; }
-
@MrXiaoM 谢谢大佬
-
经济插件每个人得到的金币去哪查看,找不到0.0
-
@Tomori77 金币系统没什么人用,导致金币系统一年没更新。目前没有查看金币的方法,只能通过代码查询
-
@MrXiaoM 好的,谢谢佬
-
那个mirai币名字咋改
-
经济系统github的readme内有说
-
大佬,请问这个这个日历的字体问题该如何解决呢,我是ubuntu22.04,没有桌面,尝试装了黑体的中文字体,重载了配置,还是不行 -
@zxmacc 我也是这样的
-
@zxmacc 已在“安装”下面更新提示,请尝试按提示添加中文字体
-
-
-
-
请问权限的ID是啥
-
@ReDeeMer 不看帖子导致的
-
真没弄懂awa
-
@ReDeeMer 不要的眼睛可以捐掉
那么大个表格你不看,光看示例去了,还直接复制不修改 -
@MrXiaoM 就是问一下后面的部分咋修改
-
@ReDeeMer 你非常成功地避开了所有正确答案
表格告诉你权限应该填top.mrxiaom.mirai.dailysign:calendar
,你填了calendar
,示例告诉你/perm permit m群号.* com.example:name
,你就连示例权限都不改 -
@MrXiaoM 听懂了,我是猪,前天才学的弄这个awa
-
@MrXiaoM 谢谢大佬