MiraiForum

    • Register
    • Login
    • Search
    • Popular
    • Recent
    • Unsolved
    • Tags
    • Groups
    • 友情链接

    MiraiDailySign —— 高度自定义的签到插件

    插件发布
    jvm plugin kotlin economy 自定义
    8
    20
    3181
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • MrXiaoM
      MrXiaoM 童心未泯 last edited by MrXiaoM

      MiraiDailySign

      拥有极高自由度的签到插件。适配 经济服务 Mirai Economy Core。

      项目地址:https://github.com/MrXiaoM/MiraiDailySign

      简介

      本插件为用户的经济服务金钱提供了来源。每日签到可领取自定义货币自定义数量的金钱。

      功能

      • 高度自定义的回复格式与变量
      • 分经济上下文给予奖励
      • 给予随机金钱
      • 通过脚本给予自定义金钱
      • 日签到记录
      • 连续签到奖励
      • 月签到月历
      • Coming soon

      截图

      1694874832578.png
      签到.jpg

      脚本

      本插件附带一个默认脚本 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 帖子链接,要求插件开源。

      • LoliYouWant
      • CommandYouWant

      权限

      权限 说明
      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。

      捐助

      前往 爱发电 捐助我。

      1 Reply Last reply Reply Quote 4
      • K
        konearca last edited by

        请问该如何在 今日已签到的提示 中使用在script.js设置的全局变量

        MrXiaoM 1 Reply Last reply Reply Quote 0
        • MrXiaoM
          MrXiaoM 童心未泯 @konearca last edited by

          @konearca

          # 签到配置文件
          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)
          
              ;
          }
          
          K 1 Reply Last reply Reply Quote 0
          • K
            konearca @MrXiaoM last edited by

            @MrXiaoM 谢谢大佬

            1 Reply Last reply Reply Quote 0
            • T
              Tomori77 last edited by

              经济插件每个人得到的金币去哪查看,找不到0.0

              MrXiaoM 1 Reply Last reply Reply Quote 0
              • MrXiaoM
                MrXiaoM 童心未泯 @Tomori77 last edited by

                @Tomori77 金币系统没什么人用,导致金币系统一年没更新。目前没有查看金币的方法,只能通过代码查询

                T 1 Reply Last reply Reply Quote 0
                • T
                  Tomori77 @MrXiaoM last edited by

                  @MrXiaoM 好的,谢谢佬

                  1 Reply Last reply Reply Quote 0
                  • Z
                    zzj666 last edited by

                    那个mirai币名字咋改

                    1 Reply Last reply Reply Quote 0
                    • R
                      Ran-Yijiu last edited by

                      经济系统github的readme内有说

                      1 Reply Last reply Reply Quote 0
                      • zxmacc
                        zxmacc last edited by

                        2055c47f5e9f89774b2b5262830f66bb.png
                        大佬,请问这个这个日历的字体问题该如何解决呢,我是ubuntu22.04,没有桌面,尝试装了黑体的中文字体,重载了配置,还是不行

                        Y MrXiaoM 2 Replies Last reply Reply Quote 0
                        • Y
                          YinLiaoQwQ @zxmacc last edited by

                          @zxmacc 我也是这样的

                          1 Reply Last reply Reply Quote 0
                          • MrXiaoM
                            MrXiaoM 童心未泯 @zxmacc last edited by

                            @zxmacc 已在“安装”下面更新提示,请尝试按提示添加中文字体

                            1 Reply Last reply Reply Quote 0
                            • Referenced by  Travellerr Travellerr 
                            • Referenced by  Travellerr Travellerr 
                            • Referenced by  Travellerr Travellerr 
                            • R
                              ReDeeMer last edited by

                              587b6ee9-d57a-49d9-ab05-62e00b9aeb65.png请问权限的ID是啥

                              MrXiaoM 1 Reply Last reply Reply Quote 0
                              • MrXiaoM
                                MrXiaoM 童心未泯 @ReDeeMer last edited by

                                @ReDeeMer 不看帖子导致的

                                1 Reply Last reply Reply Quote 0
                                • R
                                  ReDeeMer last edited by

                                  2b12dfd7-e223-49e4-b77d-f0a667f98e80.png真没弄懂awa

                                  MrXiaoM 1 Reply Last reply Reply Quote 0
                                  • MrXiaoM
                                    MrXiaoM 童心未泯 @ReDeeMer last edited by

                                    @ReDeeMer 不要的眼睛可以捐掉
                                    那么大个表格你不看,光看示例去了,还直接复制不修改

                                    R 1 Reply Last reply Reply Quote 0
                                    • R
                                      ReDeeMer @MrXiaoM last edited by

                                      @MrXiaoM 就是问一下后面的部分咋修改

                                      MrXiaoM 1 Reply Last reply Reply Quote 0
                                      • MrXiaoM
                                        MrXiaoM 童心未泯 @ReDeeMer last edited by

                                        @ReDeeMer 你非常成功地避开了所有正确答案
                                        表格告诉你权限应该填 top.mrxiaom.mirai.dailysign:calendar,你填了 calendar,示例告诉你 /perm permit m群号.* com.example:name,你就连示例权限都不改

                                        R 2 Replies Last reply Reply Quote 0
                                        • R
                                          ReDeeMer @MrXiaoM last edited by

                                          @MrXiaoM 听懂了,我是猪,前天才学的弄这个awa

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            ReDeeMer @MrXiaoM last edited by

                                            @MrXiaoM 谢谢大佬

                                            1 Reply Last reply Reply Quote 0
                                            • 1 / 1
                                            • First post
                                              Last post
                                            Powered by Mamoe Technologies & NodeBB | 友情链接 | 服务监控 | Contact