diff --git a/README.md b/README.md index e0503d63..67ea82e7 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,7 @@ zerobot [-h] [-t token] [-u url] [-n nickname] [-p prefix] [-d|w] [-g 监听地 ## 功能 > 在编译时,以下功能除插件控制外,均可通过注释`main.go`中的相应`import`而物理禁用,减小插件体积。 > 通过插件控制,还可动态管理某个功能在某个群的打开/关闭。 +> 插件的优先级为`import`的先后顺序 - **web管理** `import _ "github.com/FloatTech/zbputils/control/web"` - 开启后可执行文件大约增加 5M ,默认注释不开启。如需开启请自行编辑`main.go`取消注释 - 需要配合 [webgui](https://github.com/FloatTech/bot-manager) 使用 @@ -135,8 +136,8 @@ zerobot [-h] [-t token] [-u url] [-n nickname] [-p prefix] [-d|w] [-g 监听地 - [x] 用yyy加密xxx - [x] 用yyy解密xxx - **摸鱼** `import _ "github.com/FloatTech/ZeroBot-Plugin/plugin_moyu"` - - [x] 添加摸鱼提醒 - - [x] 删除摸鱼提醒 + - [x] /启用 moyu + - [x] /禁用 moyu - **涩图** `import _ "github.com/FloatTech/ZeroBot-Plugin/plugin_setutime"` - [x] 来份[涩图/二次元/风景/车万] - [x] 添加[涩图/二次元/风景/车万][P站图片ID] diff --git a/go.mod b/go.mod index 9cd2399f..76d672d6 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,9 @@ module github.com/FloatTech/ZeroBot-Plugin go 1.17 require ( - github.com/FloatTech/AnimeAPI v1.2.5 + github.com/FloatTech/AnimeAPI v1.3.0-beta2 github.com/FloatTech/sqlite v0.1.0 - github.com/FloatTech/zbputils v1.2.5 + github.com/FloatTech/zbputils v1.3.0-beta2 github.com/antchfx/htmlquery v1.2.4 github.com/corona10/goimagehash v1.0.3 github.com/fogleman/gg v1.3.0 diff --git a/go.sum b/go.sum index 01426809..ca83d15b 100644 --- a/go.sum +++ b/go.sum @@ -1,10 +1,10 @@ -github.com/FloatTech/AnimeAPI v1.2.5 h1:X0NLJSl9o63vRwGRPn/XiojOOBqZRbY94TxPEvhiVRo= -github.com/FloatTech/AnimeAPI v1.2.5/go.mod h1:nJpebBjTNUpr4cV0bR0Xu54/SP78+iN7hJ2EfQWbM7M= +github.com/FloatTech/AnimeAPI v1.3.0-beta2 h1:htgptcTzPk50XNwoBdZlXabM3sF71upcrafMXACI9+Y= +github.com/FloatTech/AnimeAPI v1.3.0-beta2/go.mod h1:Y2o3MvmtZV8JoxCh18iu+2AgB1iLtNDKgYVT77bMsFQ= github.com/FloatTech/bot-manager v1.0.0/go.mod h1:8YYRJ16oroGHQGD2En0oVnmcKJkxR9O/jd5BPSfWfOQ= github.com/FloatTech/sqlite v0.1.0 h1:Geh6Z+DWZXmyXVOhM0U2oXT7b1Ob6sQtuyjInk+MCUk= github.com/FloatTech/sqlite v0.1.0/go.mod h1:XS0oeSqtH6lFzpPRiDE9fV6+zMcuUF5/6o+tQVO1QZE= -github.com/FloatTech/zbputils v1.2.5 h1:/JyN6ear5PPpBjrjQEQT0/8mPBMJYBswLiNIzfmGYU8= -github.com/FloatTech/zbputils v1.2.5/go.mod h1:e9e8998yQkzS24IqZ8jLUssTk607hD/Tj3zGyBikIIc= +github.com/FloatTech/zbputils v1.3.0-beta2 h1:Yo/NzZSOUlw/0jG/HYu4kzFwsdRcP54c5BXpqmPHyaE= +github.com/FloatTech/zbputils v1.3.0-beta2/go.mod h1:e9e8998yQkzS24IqZ8jLUssTk607hD/Tj3zGyBikIIc= github.com/Mrs4s/MiraiGo v0.0.0-20211120033824-43b23f4e6fcb h1:Rkj28fqIwGx/EgBzRYtpmJRfH6wqVn7cNdc7aJ0QE4M= github.com/Mrs4s/MiraiGo v0.0.0-20211120033824-43b23f4e6fcb/go.mod h1:imVKbfKqqeit+C/eaWGb4MKQ3z3gN6pRpBU5RMtp5so= github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc= diff --git a/main.go b/main.go index e95ca3ca..ce1f0c0c 100644 --- a/main.go +++ b/main.go @@ -6,89 +6,143 @@ import ( "os" "strings" - // 注:以下插件均可通过前面加 // 注释,注释后停用并不加载插件 - // 下列插件可与 wdvxdr1123/ZeroBot v1.1.2 以上配合单独使用 + // ---------以下插件均可通过前面加 // 注释,注释后停用并不加载插件--------- // + // ----------------------插件优先级按顺序从高到低---------------------- // + // // + // // + // // + // // + // // + // ----------------------------高优先级区---------------------------- // + // vvvvvvvvvvvvvvvvvvvvvvvvvvvv高优先级区vvvvvvvvvvvvvvvvvvvvvvvvvvvv // + // vvvvvvvvvvvvvv高优先级区vvvvvvvvvvvvvv // + // vvvvvvv高优先级区vvvvvvv // + // vvvvvvvvvvvvvv // + // vvvv // - // 插件控制 - // webctrl "github.com/FloatTech/zbputils/control/web" // web 后端控制 + // webctrl "github.com/FloatTech/zbputils/control/web" // web 后端控制 - // 词库类 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_ai_reply" // 人工智能回复 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_atri" // ATRI词库 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_chat" // 基础词库 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_chat" // 基础词库 - // 实用类 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_b14" // base16384加解密 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_github" // 搜索GitHub仓库 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_manager" // 群管 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nbnhhsh" // 拼音首字母缩写释义工具 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_runcode" // 在线运行代码 _ "github.com/FloatTech/ZeroBot-Plugin/plugin_sleep_manage" // 统计睡眠时间 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_translation" // 翻译 - // 娱乐类 - // _ "github.com/FloatTech/ZeroBot-Plugin/plugin_wtf" // 鬼东西 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_ai_false" // 服务器监控 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_book_review" // 哀伤雪刃吧推书记录 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_cangtoushi" // 藏头诗 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_choose" // 选择困难症帮手 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_chouxianghua" // 说抽象话 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_cpstory" // cp短打 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_curse" // 骂人 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_fortune" // 运势 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_funny" // 笑话 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_gif" // 制图 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_hs" // 炉石 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_jandan" // 煎蛋网无聊图 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_juejuezi" // 绝绝子生成器 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_minecraft" // MCSManager - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_moyu" // 摸鱼 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_music" // 点歌 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_novel" // 铅笔小说网搜索 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_omikuji" // 浅草寺求签 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_reborn" // 投胎 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_score" // 分数 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_shadiao" // 沙雕app - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_shindan" // 测定 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_wangyiyun" // 网易云音乐热评 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_atri" // ATRI词库 - // b站相关 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_manager" // 群管 + + // ^^^^ // + // ^^^^^^^^^^^^^^ // + // ^^^^^^^高优先级区^^^^^^^ // + // ^^^^^^^^^^^^^^高优先级区^^^^^^^^^^^^^^ // + // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^高优先级区^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // + // ----------------------------高优先级区---------------------------- // + // // + // // + // // + // // + // // + // ----------------------------中优先级区---------------------------- // + // vvvvvvvvvvvvvvvvvvvvvvvvvvvv中优先级区vvvvvvvvvvvvvvvvvvvvvvvvvvvv // + // vvvvvvvvvvvvvv中优先级区vvvvvvvvvvvvvv // + // vvvvvvv中优先级区vvvvvvv // + // vvvvvvvvvvvvvv // + // vvvv // + + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_acgimage" // 随机图片与AI点评 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_ai_false" // 服务器监控 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_aiwife" // 随机老婆 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_b14" // base16384加解密 _ "github.com/FloatTech/ZeroBot-Plugin/plugin_bilibili" // 查询b站用户信息 _ "github.com/FloatTech/ZeroBot-Plugin/plugin_bilibili_parse" // b站视频链接解析 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_book_review" // 哀伤雪刃吧推书记录 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_cangtoushi" // 藏头诗 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_choose" // 选择困难症帮手 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_chouxianghua" // 说抽象话 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_coser" // 三次元小姐姐 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_cpstory" // cp短打 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_danbooru" // DeepDanbooru二次元图标签识别 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_diana" // 嘉心糖发病 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_fortune" // 运势 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_funny" // 笑话 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_gif" // 制图 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_github" // 搜索GitHub仓库 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_hs" // 炉石 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_image_finder" // 关键字搜图 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_jandan" // 煎蛋网无聊图 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_juejuezi" // 绝绝子生成器 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_lolicon" // lolicon 随机图片 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_minecraft" // MCSManager + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_moyu" // 摸鱼 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_music" // 点歌 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nativesetu" // 本地涩图 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nativewife" // 本地老婆 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nbnhhsh" // 拼音首字母缩写释义工具 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_novel" // 铅笔小说网搜索 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nsfw" // nsfw图片识别 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_omikuji" // 浅草寺求签 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_reborn" // 投胎 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_runcode" // 在线运行代码 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_saucenao" // 以图搜图 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_scale" // 叔叔的AI二次元图片放大 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_score" // 分数 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_setutime" // 来份涩图 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_shadiao" // 沙雕app + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_shindan" // 测定 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_tracemoe" // 搜番 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_translation" // 翻译 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_vtb_quotation" // vtb语录 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_wangyiyun" // 网易云音乐热评 - // _ "github.com/FloatTech/ZeroBot-Plugin/plugin_bilibili_push" // b站推送 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_diana" // 嘉心糖发病 + // _ "github.com/FloatTech/ZeroBot-Plugin/plugin_wtf" // 鬼东西 + // _ "github.com/FloatTech/ZeroBot-Plugin/plugin_bilibili_push" // b站推送 - // 二次元图片 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_acgimage" // 随机图片与AI点评 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_aiwife" // 随机老婆 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_coser" // 三次元小姐姐 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_danbooru" // DeepDanbooru二次元图标签识别 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_image_finder" // 关键字搜图 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_lolicon" // lolicon 随机图片 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nativesetu" // 本地涩图 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nativewife" // 本地老婆 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_nsfw" // nsfw图片识别 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_saucenao" // 以图搜图 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_scale" // 叔叔的AI二次元图片放大 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_setutime" // 来份涩图 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_tracemoe" // 搜番 - _ "github.com/FloatTech/ZeroBot-Plugin/plugin_vtb_quotation" // vtb语录 + // ^^^^ // + // ^^^^^^^^^^^^^^ // + // ^^^^^^^中优先级区^^^^^^^ // + // ^^^^^^^^^^^^^^中优先级区^^^^^^^^^^^^^^ // + // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^中优先级区^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // + // ----------------------------中优先级区---------------------------- // + // // + // // + // // + // // + // // + // ----------------------------低优先级区---------------------------- // + // vvvvvvvvvvvvvvvvvvvvvvvvvvvv低优先级区vvvvvvvvvvvvvvvvvvvvvvvvvvvv // + // vvvvvvvvvvvvvv低优先级区vvvvvvvvvvvvvv // + // vvvvvvv低优先级区vvvvvvv // + // vvvvvvvvvvvvvv // + // vvvv // - // 以下为内置依赖,勿动 + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_curse" // 骂人 + + _ "github.com/FloatTech/ZeroBot-Plugin/plugin_ai_reply" // 人工智能回复 + + // ^^^^ // + // ^^^^^^^^^^^^^^ // + // ^^^^^^^低优先级区^^^^^^^ // + // ^^^^^^^^^^^^^^低优先级区^^^^^^^^^^^^^^ // + // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^低优先级区^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // + // ----------------------------低优先级区---------------------------- // + // // + // // + // // + // // + // // + // -----------------------以下为内置依赖,勿动------------------------ // + "github.com/FloatTech/zbputils/control/order" "github.com/fumiama/go-registry" "github.com/sirupsen/logrus" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/driver" "github.com/wdvxdr1123/ZeroBot/message" - - "github.com/FloatTech/ZeroBot-Plugin/order" + // -----------------------以上为内置依赖,勿动------------------------ // ) var ( contents = []string{ "* OneBot + ZeroBot + Golang", - "* Version 1.2.5 - 2022-01-30 20:06:00 +0800 CST", + "* Version 1.3.0 - 2022-02-09 14:31:34 +0800 CST", "* Copyright © 2020 - 2021 FloatTech. All Rights Reserved.", "* Project: https://github.com/FloatTech/ZeroBot-Plugin", } diff --git a/order/init.go b/order/init.go deleted file mode 100644 index 2a2bde3f..00000000 --- a/order/init.go +++ /dev/null @@ -1,14 +0,0 @@ -package order - -import "sync" - -var wg sync.WaitGroup - -// DoneOnExit 在退出时执行 Done -func DoneOnExit() func() { - wg.Add(1) - return wg.Done -} - -// Wait 等待 -var Wait = wg.Wait diff --git a/order/prio.go b/order/prio.go deleted file mode 100644 index 00c97ddb..00000000 --- a/order/prio.go +++ /dev/null @@ -1,62 +0,0 @@ -// Package order 各个插件的优先级 -package order - -const ( - PrioChat = iota * 10 - PrioSleepManage - PrioAtri - PrioManager - - PrioACGImage - PrioAIFalse - PrioAIWife - PrioBase14 - PrioBilibili - PrioBiliBiliParse - PrioBilibiliPush - PrioBookReview - PrioCangTouShi - PrioChoose - PrioChouXiangHua - PrioCoser - PrioCPStory - PrioDanbooru - PrioDiana - PrioFansDaily - PrioFortune - PrioFunny - PrioGIF - PrioGithub - PrioHS - PrioImageFinder - PrioJandan - PrioJueJueZi - PrioLolicon - PrioMinecraft - PrioMoyu - PrioMusic - PrioNativeSetu - PrioNativeWife - PrioNBNHHSH - PrioNovel - PrioNSFW - PrioNSFWAuto - PrioOmikuji - PrioReborn - PrioRuncode - PrioSauceNao - PrioScale - PrioScore - PrioSetuTime - PrioShaDiao - PrioShinDan - PrioTraceMoe - PrioTranslation - PrioVtbQuotation - PrioWangYiYun - PrioWtf - - PrioCurse - PrioMockingBird - PrioAIReply -) diff --git a/plugin_acgimage/classify.go b/plugin_acgimage/classify.go index bab7ec9d..8d0ef365 100644 --- a/plugin_acgimage/classify.go +++ b/plugin_acgimage/classify.go @@ -8,12 +8,12 @@ import ( "github.com/FloatTech/AnimeAPI/classify" control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" - "github.com/FloatTech/zbputils/imgpool" + "github.com/FloatTech/zbputils/img/pool" "github.com/FloatTech/zbputils/web" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -30,7 +30,7 @@ var ( ) func init() { // 插件主体 - engine := control.Register("acgimage", order.PrioACGImage, &control.Options{ + engine := control.Register("acgimage", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "随机图片与AI点评\n" + "- 随机图片(评级大于6的图将私发)\n" + @@ -82,7 +82,7 @@ func init() { // 插件主体 } }) // 上传一张图进行评价 - engine.OnKeywordGroup([]string{"评价图片"}, zero.OnlyGroup, ctxext.CmdMatch, ctxext.MustGiven).SetBlock(true). + engine.OnKeywordGroup([]string{"评价图片"}, zero.OnlyGroup, ctxext.MustProvidePicture).SetBlock(true). Handle(func(ctx *zero.Ctx) { ctx.SendChain(message.Text("少女祈祷中...")) for _, url := range ctx.State["image_url"].([]string) { @@ -102,7 +102,7 @@ func init() { // 插件主体 u = apihead + dhash } - m, hassent, err := imgpool.NewImage(ctxext.Send(ctx), ctxext.GetMessage(ctx), dhash, u) + m, hassent, err := pool.NewImage(ctxext.Send(ctx), ctxext.GetMessage(ctx), dhash, u) if err == nil && !hassent { ctx.SendChain(message.Image(m.String())) } @@ -146,7 +146,7 @@ func replyClass(ctx *zero.Ctx, class int, dhash string, comment string, isupload } } - m, hassent, err := imgpool.NewImage(send, ctxext.GetMessage(ctx), b14, u) + m, hassent, err := pool.NewImage(send, ctxext.GetMessage(ctx), b14, u) if err == nil && !hassent { send(message.Message{message.Image(m.String())}) } diff --git a/plugin_ai_false/ai_false.go b/plugin_ai_false/ai_false.go index 1a05a010..824fe463 100644 --- a/plugin_ai_false/ai_false.go +++ b/plugin_ai_false/ai_false.go @@ -12,14 +12,14 @@ import ( "github.com/shirou/gopsutil/v3/disk" "github.com/shirou/gopsutil/v3/mem" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" ) func init() { // 插件主体 - engine := control.Register("aifalse", order.PrioAIFalse, &control.Options{ + engine := control.Register("aifalse", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "AIfalse\n" + "- 查询计算机当前活跃度: [检查身体 | 自检 | 启动自检 | 系统状态]", diff --git a/plugin_ai_reply/main.go b/plugin_ai_reply/main.go index 2926db58..f8af36ff 100644 --- a/plugin_ai_reply/main.go +++ b/plugin_ai_reply/main.go @@ -11,7 +11,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -21,7 +21,7 @@ const ( var modes = [...]string{"青云客", "小爱"} func init() { // 插件主体 - engine := control.Register(serviceName, order.PrioAIReply, &control.Options{ + engine := control.Register(serviceName, order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "人工智能回复\n" + "- @Bot 任意文本(任意一句话回复)\n- 设置回复模式[青云客 | 小爱]\n- ", diff --git a/plugin_ai_reply/tts.go b/plugin_ai_reply/tts.go index 0ef81ee8..50a7334e 100644 --- a/plugin_ai_reply/tts.go +++ b/plugin_ai_reply/tts.go @@ -9,11 +9,11 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - control.Register("mockingbird", order.PrioMockingBird, &control.Options{ + control.Register("mockingbird", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "拟声鸟\n- @Bot 任意文本(任意一句话回复)", }).OnMessage(zero.OnlyToMe).SetBlock(true).Limit(ctxext.LimitByUser). diff --git a/plugin_aiwife/non-existent.go b/plugin_aiwife/non-existent.go index a2886600..d9cb2800 100644 --- a/plugin_aiwife/non-existent.go +++ b/plugin_aiwife/non-existent.go @@ -11,7 +11,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -20,7 +20,7 @@ const ( func init() { // 插件主体 rand.Seed(time.Now().UnixNano()) - control.Register("aiwife", order.PrioAIWife, &control.Options{ + control.Register("aiwife", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "AIWife\n" + "- waifu | 随机waifu", diff --git a/plugin_atri/atri.go b/plugin_atri/atri.go index 5a68b32a..998e13e4 100644 --- a/plugin_atri/atri.go +++ b/plugin_atri/atri.go @@ -15,7 +15,7 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -26,7 +26,7 @@ const ( ) func init() { // 插件主体 - engine := control.Register(servicename, order.PrioAtri, &control.Options{ + engine := control.Register(servicename, order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "本插件基于 ATRI ,为 Golang 移植版\n" + "- ATRI醒醒\n- ATRI睡吧\n- 萝卜子\n- 喜欢 | 爱你 | 爱 | suki | daisuki | すき | 好き | 贴贴 | 老婆 | 亲一个 | mua\n" + diff --git a/plugin_b14/main.go b/plugin_b14/main.go index 24475efc..4e9aacd0 100644 --- a/plugin_b14/main.go +++ b/plugin_b14/main.go @@ -11,11 +11,11 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - en := control.Register("base16384", order.PrioBase14, &control.Options{ + en := control.Register("base16384", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "base16384加解密\n" + "- 加密xxx\n- 解密xxx\n- 用yyy加密xxx\n- 用yyy解密xxx", diff --git a/plugin_bilibili/fansDaily.go b/plugin_bilibili/fansDaily.go index 6437dfea..664bf7ae 100644 --- a/plugin_bilibili/fansDaily.go +++ b/plugin_bilibili/fansDaily.go @@ -10,7 +10,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) type follower struct { @@ -27,7 +27,7 @@ type follower struct { // 开启日报推送 func init() { fansDaily() - en := control.Register("fansdaily", order.PrioFansDaily, &control.Options{ + en := control.Register("fansdaily", order.AcquirePrio(), &control.Options{ DisableOnDefault: true, Help: "fansdaily\n- /开启粉丝日报\n- /关闭粉丝日报", }) diff --git a/plugin_bilibili/info.go b/plugin_bilibili/info.go index a8254077..e3d8c368 100644 --- a/plugin_bilibili/info.go +++ b/plugin_bilibili/info.go @@ -10,10 +10,10 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) -var engine = control.Register("bilibili", order.PrioBilibili, &control.Options{ +var engine = control.Register("bilibili", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "bilibili\n" + "- >vup info [名字 | uid]\n" + diff --git a/plugin_bilibili_parse/bilibili_parse.go b/plugin_bilibili_parse/bilibili_parse.go index 761a2a9f..e25991a9 100644 --- a/plugin_bilibili_parse/bilibili_parse.go +++ b/plugin_bilibili_parse/bilibili_parse.go @@ -11,7 +11,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) var ( @@ -20,7 +20,7 @@ var ( ) func init() { - engine := control.Register("bilibiliparse", order.PrioBiliBiliParse, &control.Options{ + engine := control.Register("bilibiliparse", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "b站视频链接解析\n" + "- https://www.bilibili.com/video/BV1xx411c7BF | https://www.bilibili.com/video/av1605 | https://b23.tv/I8uzWCA", diff --git a/plugin_bilibili_push/bilibili_push.go b/plugin_bilibili_push/bilibili_push.go index 87248f5e..e06355fc 100644 --- a/plugin_bilibili_push/bilibili_push.go +++ b/plugin_bilibili_push/bilibili_push.go @@ -20,7 +20,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -57,7 +57,7 @@ var ( func init() { go bilibiliPushDaily() - en := control.Register(serviceName, order.PrioBilibiliPush, &control.Options{ + en := control.Register(serviceName, order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "bilibilipush\n" + "- 添加订阅[uid]\n" + diff --git a/plugin_bilibili_push/data.go b/plugin_bilibili_push/data.go index caa38c18..784af990 100644 --- a/plugin_bilibili_push/data.go +++ b/plugin_bilibili_push/data.go @@ -6,7 +6,7 @@ import ( "github.com/FloatTech/zbputils/process" log "github.com/sirupsen/logrus" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_book_review/book_review.go b/plugin_book_review/book_review.go index 381c2a6a..0379b2e2 100644 --- a/plugin_book_review/book_review.go +++ b/plugin_book_review/book_review.go @@ -10,11 +10,11 @@ import ( "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/img/text" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - engine := control.Register("bookreview", order.PrioBookReview, &control.Options{ + engine := control.Register("bookreview", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "哀伤雪刃推书记录\n- 书评[xxx]\n- 随机书评", }) diff --git a/plugin_book_review/data.go b/plugin_book_review/data.go index 8c91d2fd..95632eae 100644 --- a/plugin_book_review/data.go +++ b/plugin_book_review/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const dbpath = "data/BookReview/" diff --git a/plugin_cangtoushi/cangtoushi.go b/plugin_cangtoushi/cangtoushi.go index bd433488..ae973dde 100644 --- a/plugin_cangtoushi/cangtoushi.go +++ b/plugin_cangtoushi/cangtoushi.go @@ -16,7 +16,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -32,7 +32,7 @@ var ( ) func init() { - engine := control.Register("cangtoushi", order.PrioCangTouShi, &control.Options{ + engine := control.Register("cangtoushi", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "藏头诗\n" + "- 藏头诗[xxx]\n- 藏尾诗[xxx]", diff --git a/plugin_chat/chat.go b/plugin_chat/chat.go index 4aeb96d1..a3dfa79f 100644 --- a/plugin_chat/chat.go +++ b/plugin_chat/chat.go @@ -11,7 +11,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/extension/rate" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -21,7 +21,7 @@ const ( var ( poke = rate.NewManager(time.Minute*5, 8) // 戳一戳 - engine = control.Register("chat", order.PrioChat, &control.Options{ + engine = control.Register("chat", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "chat\n- [BOT名字]\n- [戳一戳BOT]\n- 空调开\n- 空调关\n- 群温度\n- 设置温度[正整数]\n- mua | 啾咪 | 摸 | 上你 | 傻 | 裸 | 贴 | 老婆 | 抱 | 亲 | 一下 | 咬 | 操 | 123 | 进去 | 调教 | 搓 | 让 | 捏 | 挤 | 略 | 呐 | 原味 | 胖次 | 内裤 | 内衣 | 衣服 | ghs | 批 | 憨批 | kkp | 咕 | 骚 | 喜欢 | suki | 好き | 看 | 不能 | 砸了 | 透 | 口我 | 草我 | 自慰 | onani | オナニー | 炸了 | 色图 | 涩图 | 告白 | 对不起 | 回来 | 吻 | 软 | 壁咚 | 掰开 | 女友 | 是 | 喵 | 嗷呜 | 叫 | 拜 | 佬 | awsl | 臭 | 香 | 腿 | 张开 | 脚 | 脸 | 头发 | 手 | pr | 舔 | 小穴 | 腰 | 诶嘿嘿 | 可爱 | 扭蛋 | 鼻 | 眼 | 色气 | 推 | 床 | 举 | 手冲 | 饿 | 变 | 敲 | 爬 | 怕 | 冲 | 射 | 不穿 | 迫害 | 猫粮 | 揪尾巴 | 薄荷 | 早 | 晚安 | 揉 | 榨 | 掐 | 胸 | 奶子 | 欧派 | 嫩 | 蹭 | 牵手 | 握手 | 拍照 | w | 睡不着 | 欧尼酱 | 哥 | 爱你 | 过来 | 自闭 | 打不过 | 么么哒 | 很懂 | 膝枕 | 累了 | 安慰 | 洗澡 | 一起睡觉 | 一起 | 多大 | 姐姐 | 糖 | 嗦 | 牛子 | 🐂子 | 🐮子 | 嫌弃 | 紧 | baka | 笨蛋 | 插 | 插进来 | 屁股 | 翘 | 翘起来 | 抬 | 抬起 | 爸 | 傲娇 | rua | 咕噜咕噜 | 咕噜 | 上床 | 做爱 | 吃掉 | 吃 | 揪 | 种草莓 | 种草 | 掀 | 妹 | 病娇 | 嘻", }) diff --git a/plugin_chat/data.go b/plugin_chat/data.go index af713658..4095aa24 100644 --- a/plugin_chat/data.go +++ b/plugin_chat/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) type kimo = map[string]*[]string diff --git a/plugin_choose/choose.go b/plugin_choose/choose.go index 4b22d6e1..5c7fa673 100644 --- a/plugin_choose/choose.go +++ b/plugin_choose/choose.go @@ -10,11 +10,11 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - engine := control.Register("choose", order.PrioChoose, &control.Options{ + engine := control.Register("choose", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "choose\n" + "- 选择可口可乐还是百事可乐\n" + diff --git a/plugin_chouxianghua/chouxianghua.go b/plugin_chouxianghua/chouxianghua.go index 87ab7ff6..e570c1e8 100644 --- a/plugin_chouxianghua/chouxianghua.go +++ b/plugin_chouxianghua/chouxianghua.go @@ -6,11 +6,11 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - control.Register("chouxianghua", order.PrioChouXiangHua, &control.Options{ + control.Register("chouxianghua", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "抽象话\n- 抽象翻译xxx", }).OnRegex("^抽象翻译((\\s|[\\r\\n]|[\\p{Han}\\p{P}A-Za-z0-9])+)$").SetBlock(true). diff --git a/plugin_chouxianghua/data.go b/plugin_chouxianghua/data.go index e959d407..7aa34fe3 100644 --- a/plugin_chouxianghua/data.go +++ b/plugin_chouxianghua/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_coser/coser.go b/plugin_coser/coser.go index a30782dd..1db8a5bc 100644 --- a/plugin_coser/coser.go +++ b/plugin_coser/coser.go @@ -13,7 +13,7 @@ import ( "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/web" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) var ( @@ -22,7 +22,7 @@ var ( ) func init() { - control.Register("coser", order.PrioCoser, &control.Options{ + control.Register("coser", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "三次元小姐姐\n- coser", }).ApplySingle(ctxext.DefaultSingle).OnFullMatch("coser", zero.OnlyGroup).SetBlock(true).Limit(ctxext.LimitByGroup). diff --git a/plugin_cpstory/cpstory.go b/plugin_cpstory/cpstory.go index 218a8a31..f9039cdb 100644 --- a/plugin_cpstory/cpstory.go +++ b/plugin_cpstory/cpstory.go @@ -11,11 +11,11 @@ import ( "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/math" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - engine := control.Register("cpstory", order.PrioCPStory, &control.Options{ + engine := control.Register("cpstory", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "cp短打\n- 组cp[@xxx][@xxx]\n- 磕cp大老师 雪乃", }) diff --git a/plugin_cpstory/data.go b/plugin_cpstory/data.go index 59ec5479..a191a559 100644 --- a/plugin_cpstory/data.go +++ b/plugin_cpstory/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_curse/curse.go b/plugin_curse/curse.go index 16ae6937..2e6d0765 100644 --- a/plugin_curse/curse.go +++ b/plugin_curse/curse.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -18,7 +18,7 @@ const ( ) func init() { - engine := control.Register("curse", order.PrioCurse, &control.Options{ + engine := control.Register("curse", order.AcquirePrio(), &control.Options{ DisableOnDefault: true, Help: "骂人(求骂,自卫)\n- 骂我\n- 大力骂我", }) diff --git a/plugin_curse/data.go b/plugin_curse/data.go index ddeb10bd..9dd99bf8 100644 --- a/plugin_curse/data.go +++ b/plugin_curse/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_danbooru/main.go b/plugin_danbooru/main.go index abc0dc15..07b1e156 100644 --- a/plugin_danbooru/main.go +++ b/plugin_danbooru/main.go @@ -16,7 +16,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const cachefile = "data/danbooru/" @@ -27,13 +27,13 @@ func init() { // 插件主体 if err != nil { panic(err) } - engine := control.Register("danbooru", order.PrioDanbooru, &control.Options{ + engine := control.Register("danbooru", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "二次元图片标签识别\n" + "- 鉴赏图片[图片]", }) // 上传一张图进行评价 - engine.OnKeywordGroup([]string{"鉴赏图片"}, zero.OnlyGroup, ctxext.CmdMatch, ctxext.MustGiven).SetBlock(true). + engine.OnKeywordGroup([]string{"鉴赏图片"}, zero.OnlyGroup, ctxext.MustProvidePicture).SetBlock(true). Handle(func(ctx *zero.Ctx) { ctx.SendChain(message.Text("少女祈祷中...")) for _, url := range ctx.State["image_url"].([]string) { diff --git a/plugin_diana/bing.go b/plugin_diana/bing.go index e67f84aa..e1ec68e5 100644 --- a/plugin_diana/bing.go +++ b/plugin_diana/bing.go @@ -10,11 +10,11 @@ import ( control "github.com/FloatTech/zbputils/control" - "github.com/FloatTech/ZeroBot-Plugin/order" "github.com/FloatTech/ZeroBot-Plugin/plugin_diana/data" + "github.com/FloatTech/zbputils/control/order" ) -var engine = control.Register("diana", order.PrioDiana, &control.Options{ +var engine = control.Register("diana", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "嘉然\n" + "- 小作文\n" + diff --git a/plugin_diana/data/text.go b/plugin_diana/data/text.go index 3eb60644..a3192d87 100644 --- a/plugin_diana/data/text.go +++ b/plugin_diana/data/text.go @@ -13,7 +13,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_fortune/fortune.go b/plugin_fortune/fortune.go index 91f86d59..69019703 100644 --- a/plugin_fortune/fortune.go +++ b/plugin_fortune/fortune.go @@ -22,11 +22,11 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/file" + "github.com/FloatTech/zbputils/img/pool" "github.com/FloatTech/zbputils/img/writer" - "github.com/FloatTech/zbputils/imgpool" "github.com/FloatTech/zbputils/math" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -76,7 +76,7 @@ func init() { panic(err) } // 插件主体 - en := control.Register("fortune", order.PrioFortune, &control.Options{ + en := control.Register("fortune", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "每日运势: \n" + "- 运势 | 抽签\n" + @@ -147,7 +147,7 @@ func init() { digest := md5.Sum(helper.StringToBytes(zipfile + strconv.Itoa(index) + title + text)) cachefile := cache + hex.EncodeToString(digest[:]) - m, err := imgpool.GetImage(cachefile) + m, err := pool.GetImage(cachefile) if err != nil { logrus.Debugln("[fortune]", err) if file.IsNotExist(cachefile) { diff --git a/plugin_funny/data.go b/plugin_funny/data.go index 41a99e30..ba284b10 100644 --- a/plugin_funny/data.go +++ b/plugin_funny/data.go @@ -8,7 +8,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) type joke struct { diff --git a/plugin_funny/laugh.go b/plugin_funny/laugh.go index 1c125bc7..7f06a04a 100644 --- a/plugin_funny/laugh.go +++ b/plugin_funny/laugh.go @@ -11,20 +11,17 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) -var ( - engine = control.Register("funny", order.PrioFunny, &control.Options{ +var db = &sql.Sqlite{DBPath: dbfile} + +func init() { + control.Register("funny", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "讲个笑话\n" + "- 讲个笑话[@xxx] | 讲个笑话[qq号]", - }) - db = &sql.Sqlite{DBPath: dbfile} -) - -func init() { - engine.OnPrefix("讲个笑话").SetBlock(true).Limit(ctxext.LimitByUser).Handle(func(ctx *zero.Ctx) { + }).OnPrefix("讲个笑话").SetBlock(true).Limit(ctxext.LimitByUser).Handle(func(ctx *zero.Ctx) { // 获取名字 name := ctxext.NickName(ctx) var j joke diff --git a/plugin_gif/run.go b/plugin_gif/run.go index 8a899543..1f6c1125 100644 --- a/plugin_gif/run.go +++ b/plugin_gif/run.go @@ -13,7 +13,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) var ( @@ -30,7 +30,7 @@ func init() { // 插件主体 panic(err) } rand.Seed(time.Now().UnixNano()) // 设置种子 - control.Register("gif", order.PrioGIF, &control.Options{ + control.Register("gif", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "制图\n- " + strings.Join(cmds, "\n- "), }).ApplySingle(ctxext.DefaultSingle).OnRegex(`^(` + strings.Join(cmds, "|") + `)\D*?(\[CQ:(image\,file=([0-9a-zA-Z]{32}).*|at.+?(\d{5,11}))\].*|(\d+))$`). diff --git a/plugin_github/repo_searcher.go b/plugin_github/repo_searcher.go index 6d8d5b97..4552b3ef 100644 --- a/plugin_github/repo_searcher.go +++ b/plugin_github/repo_searcher.go @@ -13,13 +13,13 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" "github.com/tidwall/gjson" ) func init() { // 插件主体 - control.Register("github", order.PrioGithub, &control.Options{ + control.Register("github", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "GitHub仓库搜索\n" + "- >github [xxx]\n" + diff --git a/plugin_hs/run.go b/plugin_hs/run.go index bf4e164b..a4e77229 100644 --- a/plugin_hs/run.go +++ b/plugin_hs/run.go @@ -17,7 +17,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/web" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) var ( @@ -52,7 +52,7 @@ func init() { panic(err) } - engine := control.Register("hs", order.PrioHS, &control.Options{ + engine := control.Register("hs", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "炉石\n" + "- 搜卡[xxxx]\n" + diff --git a/plugin_image_finder/keyword.go b/plugin_image_finder/keyword.go index e3dd8faa..a18f151e 100644 --- a/plugin_image_finder/keyword.go +++ b/plugin_image_finder/keyword.go @@ -11,11 +11,11 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" - "github.com/FloatTech/zbputils/imgpool" + "github.com/FloatTech/zbputils/img/pool" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) type resultjson struct { @@ -65,7 +65,7 @@ type resultjson struct { } func init() { - control.Register("imgfinder", order.PrioImageFinder, &control.Options{ + control.Register("imgfinder", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "关键字搜图\n" + "- 来张 [xxx]", @@ -77,7 +77,7 @@ func init() { rannum := randintn(len(soutujson.Illusts)) pom2 := soutujson.Illusts[rannum].ImageUrls.Medium[19:] u := pom1 + pom2 - m, hassent, err := imgpool.NewImage(ctxext.Send(ctx), ctxext.GetMessage(ctx), u[strings.LastIndex(u, "/")+1:], u) + m, hassent, err := pool.NewImage(ctxext.Send(ctx), ctxext.GetMessage(ctx), u[strings.LastIndex(u, "/")+1:], u) if err == nil && !hassent { ctx.SendChain(message.Image(m.String())) } diff --git a/plugin_jandan/data.go b/plugin_jandan/data.go index cacbf3dd..a5adf6b1 100644 --- a/plugin_jandan/data.go +++ b/plugin_jandan/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/process" log "github.com/sirupsen/logrus" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const dbpath = "data/Jandan/" diff --git a/plugin_jandan/jandan.go b/plugin_jandan/jandan.go index cb4234a1..c2a9c71a 100644 --- a/plugin_jandan/jandan.go +++ b/plugin_jandan/jandan.go @@ -14,7 +14,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -22,7 +22,7 @@ const ( ) func init() { - engine := control.Register("jandan", order.PrioJandan, &control.Options{ + engine := control.Register("jandan", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "煎蛋网无聊图\n- 来份屌图\n- 更新屌图\n", }) diff --git a/plugin_juejuezi/juejuezi.go b/plugin_juejuezi/juejuezi.go index bea3dda3..80fdfc1f 100644 --- a/plugin_juejuezi/juejuezi.go +++ b/plugin_juejuezi/juejuezi.go @@ -15,7 +15,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -25,7 +25,7 @@ const ( ) func init() { - control.Register("juejuezi", order.PrioJueJueZi, &control.Options{ + control.Register("juejuezi", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "绝绝子生成器\n" + "- 喝奶茶绝绝子 | 绝绝子吃饭", diff --git a/plugin_lolicon/lolicon.go b/plugin_lolicon/lolicon.go index 50c79474..16bfc98f 100644 --- a/plugin_lolicon/lolicon.go +++ b/plugin_lolicon/lolicon.go @@ -13,11 +13,11 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" - "github.com/FloatTech/zbputils/imgpool" + "github.com/FloatTech/zbputils/img/pool" "github.com/FloatTech/zbputils/math" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -30,7 +30,7 @@ var ( ) func init() { - control.Register("lolicon", order.PrioLolicon, &control.Options{ + control.Register("lolicon", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "lolicon\n" + "- 来份萝莉", @@ -57,7 +57,7 @@ func init() { url := json.Get("data.0.urls.original").Str url = strings.ReplaceAll(url, "i.pixiv.cat", "i.pixiv.re") name := url[strings.LastIndex(url, "/")+1 : len(url)-4] - m, err := imgpool.GetImage(name) + m, err := pool.GetImage(name) if err != nil { m.SetFile(url) _, err = m.Push(ctxext.SendToSelf(ctx), ctxext.GetMessage(ctx)) diff --git a/plugin_manager/manager.go b/plugin_manager/manager.go index a17ea05e..447f22a5 100644 --- a/plugin_manager/manager.go +++ b/plugin_manager/manager.go @@ -20,8 +20,8 @@ import ( "github.com/FloatTech/zbputils/math" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" "github.com/FloatTech/ZeroBot-Plugin/plugin_manager/timer" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -59,12 +59,12 @@ var ( clock timer.Clock ) -var engine = control.Register("manager", order.PrioManager, &control.Options{ - DisableOnDefault: false, - Help: hint, -}) - func init() { // 插件主体 + engine := control.Register("manager", order.AcquirePrio(), &control.Options{ + DisableOnDefault: false, + Help: hint, + }) + go func() { defer order.DoneOnExit()() process.SleepAbout1sTo2s() @@ -79,6 +79,7 @@ func init() { // 插件主体 panic(err) } }() + // 升为管理 engine.OnRegex(`^升为管理.*?(\d+)`, zero.OnlyGroup, zero.SuperUserPermission).SetBlock(true). Handle(func(ctx *zero.Ctx) { diff --git a/plugin_minecraft/info.go b/plugin_minecraft/info.go index 239a9c86..0040fbe8 100644 --- a/plugin_minecraft/info.go +++ b/plugin_minecraft/info.go @@ -4,11 +4,6 @@ import ( "encoding/json" "fmt" "net/http" - "strings" - - zero "github.com/wdvxdr1123/ZeroBot" - "github.com/wdvxdr1123/ZeroBot/extension" - "github.com/wdvxdr1123/ZeroBot/message" ) type resultjson struct { @@ -41,27 +36,6 @@ var ( servers = make(map[string]string) ) -func init() { - // 这里填对应mc服务器的登录地址 - servers["ftbi"] = "115.28.186.22:25710" - servers["ges"] = "115.28.186.22:25701" - - engine.OnCommand("mclist").SetBlock(true). - Handle(func(ctx *zero.Ctx) { - model := extension.CommandModel{} - _ = ctx.Parse(&model) - // 支持多个服务器 - gesjson := infoapi(servers[model.Args]) - var str = gesjson.Players.List - cs := strings.Join(str, "\n") - ctx.SendChain(message.Text( - "服务器名字: ", gesjson.Motd.Raw[0], "\n", - "在线人数: ", gesjson.Players.Online, "/", gesjson.Players.Max, "\n", - "以下为玩家名字: ", "\n", cs, - )) - }) -} - // 开放api请求调用 func infoapi(addr string) *resultjson { url := "https://api.mcsrvstat.us/2/" + addr diff --git a/plugin_minecraft/manager.go b/plugin_minecraft/manager.go index 95cd15cd..43b59600 100644 --- a/plugin_minecraft/manager.go +++ b/plugin_minecraft/manager.go @@ -5,13 +5,14 @@ import ( "fmt" "io/ioutil" "net/http" + "strings" control "github.com/FloatTech/zbputils/control" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/extension" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) // 此功能实现依赖MCSManager项目对服务器的管理api,mc服务器如果没有在该管理平台部署此功能无效 @@ -20,16 +21,15 @@ import ( const api = "http://your.addr:23333/api/start_server/%s/?apikey=apikey" -var engine = control.Register("minecraft", order.PrioMinecraft, &control.Options{ - DisableOnDefault: false, - Help: "minecraft\n" + - "- /mcstart xxx\n" + - "- /mcstop xxx\n" + - "- /mclist servername\n" + - "- https://github.com/Suwings/MCSManager", -}) - func init() { + engine := control.Register("minecraft", order.AcquirePrio(), &control.Options{ + DisableOnDefault: false, + Help: "minecraft\n" + + "- /mcstart xxx\n" + + "- /mcstop xxx\n" + + "- /mclist servername\n" + + "- https://github.com/Suwings/MCSManager", + }) engine.OnCommand("mcstart").SetBlock(true). Handle(func(ctx *zero.Ctx) { model := extension.CommandModel{} @@ -46,6 +46,25 @@ func init() { result := stop(model.Args) ctx.SendChain(message.Text(result)) }) + + // 这里填对应mc服务器的登录地址 + servers["ftbi"] = "115.28.186.22:25710" + servers["ges"] = "115.28.186.22:25701" + + engine.OnCommand("mclist").SetBlock(true). + Handle(func(ctx *zero.Ctx) { + model := extension.CommandModel{} + _ = ctx.Parse(&model) + // 支持多个服务器 + gesjson := infoapi(servers[model.Args]) + var str = gesjson.Players.List + cs := strings.Join(str, "\n") + ctx.SendChain(message.Text( + "服务器名字: ", gesjson.Motd.Raw[0], "\n", + "在线人数: ", gesjson.Players.Online, "/", gesjson.Players.Max, "\n", + "以下为玩家名字: ", "\n", cs, + )) + }) } // 开启服务器的api请求 diff --git a/plugin_moyu/run.go b/plugin_moyu/run.go index 919fd8b3..38fd2953 100644 --- a/plugin_moyu/run.go +++ b/plugin_moyu/run.go @@ -9,51 +9,23 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { // 插件主体 + control.Register("moyu", order.AcquirePrio(), &control.Options{ + DisableOnDefault: true, + Help: "moyu\n" + + "- /启用 moyu\n" + + "- /禁用 moyu", + }) + // 定时任务每天10点执行一次 c := cron.New() _, err := c.AddFunc("0 10 * * *", func() { sendNotice() }) if err == nil { c.Start() } - - control.Register("moyu", order.PrioMoyu, &control.Options{ - DisableOnDefault: true, - Help: "moyu\n" + - "- 添加摸鱼提醒\n" + - "- 删除摸鱼提醒", - }).OnFullMatch("删除摸鱼提醒", zero.OnlyGroup, zero.AdminPermission).SetBlock(true). - Handle(func(ctx *zero.Ctx) { - m, ok := control.Lookup("moyu") - if ok { - if m.IsEnabledIn(ctx.Event.GroupID) { - m.Disable(ctx.Event.GroupID) - ctx.Send(message.Text("删除成功!")) - } else { - ctx.Send(message.Text("未启用!")) - } - } else { - ctx.Send(message.Text("找不到该服务!")) - } - }) - - zero.OnFullMatch("添加摸鱼提醒", zero.OnlyGroup, zero.AdminPermission).SetBlock(true). - Handle(func(ctx *zero.Ctx) { - m, ok := control.Lookup("moyu") - if ok { - if m.IsEnabledIn(ctx.Event.GroupID) { - ctx.Send(message.Text("已启用!")) - } else { - m.Enable(ctx.Event.GroupID) - ctx.Send(message.Text("添加成功!")) - } - } else { - ctx.Send(message.Text("找不到该服务!")) - } - }) } // 获取数据拼接消息链并发送 diff --git a/plugin_music/selecter.go b/plugin_music/selecter.go index f5413a6f..64db14d3 100644 --- a/plugin_music/selecter.go +++ b/plugin_music/selecter.go @@ -17,11 +17,11 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - control.Register("music", order.PrioMusic, &control.Options{ + control.Register("music", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "点歌\n" + "- 点歌[xxx]\n" + diff --git a/plugin_nativesetu/data.go b/plugin_nativesetu/data.go index 467c1905..e4828752 100644 --- a/plugin_nativesetu/data.go +++ b/plugin_nativesetu/data.go @@ -17,7 +17,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) // setuclass holds setus in a folder, which is the class name. diff --git a/plugin_nativesetu/main.go b/plugin_nativesetu/main.go index ff9cd2fd..b43bb52a 100644 --- a/plugin_nativesetu/main.go +++ b/plugin_nativesetu/main.go @@ -10,10 +10,10 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - control "github.com/FloatTech/zbputils/control" - "github.com/FloatTech/zbputils/rule" + "github.com/FloatTech/zbputils/control" + "github.com/FloatTech/zbputils/ctxext" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -27,7 +27,7 @@ var ( ) func init() { - engine := control.Register("nativesetu", order.PrioNativeSetu, &control.Options{ + engine := control.Register("nativesetu", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "本地涩图\n" + "- 本地[xxx]\n" + @@ -36,7 +36,7 @@ func init() { "- 刷新所有本地setu\n" + "- 所有本地setu分类", }) - engine.OnRegex(`^本地(.*)$`, rule.FirstValueInList(ns)).SetBlock(true). + engine.OnRegex(`^本地(.*)$`, ctxext.FirstValueInList(ns)).SetBlock(true). Handle(func(ctx *zero.Ctx) { imgtype := ctx.State["regex_matched"].([]string)[1] sc := new(setuclass) @@ -50,7 +50,7 @@ func init() { ctx.SendChain(message.Text(imgtype, ": ", sc.Name, "\n"), message.Image(p)) } }) - engine.OnRegex(`^刷新本地(.*)$`, rule.FirstValueInList(ns), zero.SuperUserPermission).SetBlock(true). + engine.OnRegex(`^刷新本地(.*)$`, ctxext.FirstValueInList(ns), zero.SuperUserPermission).SetBlock(true). Handle(func(ctx *zero.Ctx) { imgtype := ctx.State["regex_matched"].([]string)[1] err := ns.scanclass(os.DirFS(setupath), imgtype, imgtype) diff --git a/plugin_nativewife/main.go b/plugin_nativewife/main.go index b09a46da..3a506999 100644 --- a/plugin_nativewife/main.go +++ b/plugin_nativewife/main.go @@ -16,7 +16,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" @@ -32,7 +32,7 @@ func init() { if err != nil { panic(err) } - engine := control.Register("nwife", order.PrioNativeWife, &control.Options{ + engine := control.Register("nwife", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "nativewife\n- 抽wife[@xxx]\n- 添加wife[名字][图片]\n- 删除wife[名字]\n- [让 | 不让]所有人均可添加wife", }) @@ -62,7 +62,7 @@ func init() { } }) // 上传一张图 - engine.OnPrefix("添加wife", zero.OnlyGroup, chkAddWifePermission, ctxext.MustGiven).SetBlock(true). + engine.OnPrefix("添加wife", zero.OnlyGroup, chkAddWifePermission, ctxext.MustProvidePicture).SetBlock(true). Handle(func(ctx *zero.Ctx) { name := "" for _, elem := range ctx.Event.Message { diff --git a/plugin_nbnhhsh/nbnhhsh.go b/plugin_nbnhhsh/nbnhhsh.go index 2380fcc6..ca46a816 100644 --- a/plugin_nbnhhsh/nbnhhsh.go +++ b/plugin_nbnhhsh/nbnhhsh.go @@ -12,11 +12,11 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - control.Register("nbnhhsh", order.PrioNBNHHSH, &control.Options{ + control.Register("nbnhhsh", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "拼音首字母释义工具\n- ?? [缩写]", }).OnRegex(`^[??]{1,2} ?([a-z0-9]+)$`).SetBlock(false). diff --git a/plugin_novel/qianbi.go b/plugin_novel/qianbi.go index b4ae0178..e594a630 100644 --- a/plugin_novel/qianbi.go +++ b/plugin_novel/qianbi.go @@ -21,7 +21,7 @@ import ( "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/img/text" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -37,16 +37,13 @@ const ( idReg = `/(\d+)/` ) -var ( - gCurCookieJar *cookiejar.Jar - engine = control.Register("novel", order.PrioNovel, &control.Options{ - DisableOnDefault: false, - Help: "铅笔小说网搜索\n- 小说[xxx]", - }) -) +var gCurCookieJar *cookiejar.Jar func init() { - engine.OnRegex("^小说([\u4E00-\u9FA5A-Za-z0-9]{1,25})$").SetBlock(true).Limit(ctxext.LimitByUser). + control.Register("novel", order.AcquirePrio(), &control.Options{ + DisableOnDefault: false, + Help: "铅笔小说网搜索\n- 小说[xxx]", + }).OnRegex("^小说([\u4E00-\u9FA5A-Za-z0-9]{1,25})$").SetBlock(true).Limit(ctxext.LimitByUser). Handle(func(ctx *zero.Ctx) { ctx.SendChain(message.Text("少女祈祷中......")) login(username, password) diff --git a/plugin_nsfw/main.go b/plugin_nsfw/main.go index a301ba59..ce64d91d 100644 --- a/plugin_nsfw/main.go +++ b/plugin_nsfw/main.go @@ -9,16 +9,16 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - engine := control.Register("nsfw", order.PrioNSFW, &control.Options{ + engine := control.Register("nsfw", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "nsfw图片识别\n- nsfw打分[图片]", }).ApplySingle(ctxext.DefaultSingle) // 上传一张图进行评价 - engine.OnKeywordGroup([]string{"nsfw打分"}, zero.OnlyGroup, ctxext.CmdMatch, ctxext.MustGiven).SetBlock(true). + engine.OnKeywordGroup([]string{"nsfw打分"}, zero.OnlyGroup, ctxext.MustProvidePicture).SetBlock(true). Handle(func(ctx *zero.Ctx) { url := ctx.State["image_url"].([]string) if len(url) > 0 { @@ -31,11 +31,11 @@ func init() { ctx.Send(message.ReplyWithMessage(ctx.Event.MessageID, message.Text(judge(p[0])))) } }) - en := control.Register("nsfwauto", order.PrioNSFWAuto, &control.Options{ + en := control.Register("nsfwauto", order.AcquirePrio(), &control.Options{ DisableOnDefault: true, Help: "nsfw图片自动识别\n- 当图片属于非 neutral 类别时自动发送评价", }) - en.OnMessage(ctxext.Exists).SetBlock(false). + en.OnMessage(ctxext.IsPicExists).SetBlock(false). Handle(func(ctx *zero.Ctx) { url := ctx.State["image_url"].([]string) if len(url) > 0 { diff --git a/plugin_omikuji/data.go b/plugin_omikuji/data.go index bbfc2617..2ba44a1f 100644 --- a/plugin_omikuji/data.go +++ b/plugin_omikuji/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_omikuji/sensou.go b/plugin_omikuji/sensou.go index f80ffeb9..722be422 100644 --- a/plugin_omikuji/sensou.go +++ b/plugin_omikuji/sensou.go @@ -16,22 +16,17 @@ import ( "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/img/text" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) -const ( - bed = "https://gitcode.net/u011570312/senso-ji-omikuji/-/raw/main/%d_%d.jpg" -) +const bed = "https://gitcode.net/u011570312/senso-ji-omikuji/-/raw/main/%d_%d.jpg" -var ( - engine = control.Register("omikuji", order.PrioOmikuji, &control.Options{ +func init() { // 插件主体 + engine := control.Register("omikuji", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "浅草寺求签\n" + "- 求签 | 占卜\n- 解签", }).ApplySingle(ctxext.DefaultSingle) -) - -func init() { // 插件主体 engine.OnFullMatchGroup([]string{"求签", "占卜"}).SetBlock(true). Handle(func(ctx *zero.Ctx) { miku := bangoToday(ctx.Event.UserID) diff --git a/plugin_reborn/load.go b/plugin_reborn/load.go index fee841fc..49af0682 100644 --- a/plugin_reborn/load.go +++ b/plugin_reborn/load.go @@ -10,7 +10,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_reborn/main.go b/plugin_reborn/main.go index 6db4db48..7b4c61ce 100644 --- a/plugin_reborn/main.go +++ b/plugin_reborn/main.go @@ -10,12 +10,12 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { rand.Seed(time.Now().UnixNano()) - control.Register("reborn", order.PrioReborn, &control.Options{ + control.Register("reborn", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "投胎\n- reborn", }).OnFullMatch("reborn").SetBlock(true). diff --git a/plugin_runcode/code_runner.go b/plugin_runcode/code_runner.go index a87de8b2..e9c0d1a4 100644 --- a/plugin_runcode/code_runner.go +++ b/plugin_runcode/code_runner.go @@ -14,7 +14,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" "github.com/tidwall/gjson" ) @@ -93,7 +93,7 @@ var ( ) func init() { - control.Register("runcode", order.PrioRuncode, &control.Options{ + control.Register("runcode", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "在线代码运行: \n" + ">runcode [language] [code block]\n" + diff --git a/plugin_saucenao/searcher.go b/plugin_saucenao/searcher.go index fe503a96..9c0465b4 100644 --- a/plugin_saucenao/searcher.go +++ b/plugin_saucenao/searcher.go @@ -11,17 +11,17 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/file" - "github.com/FloatTech/zbputils/imgpool" + "github.com/FloatTech/zbputils/img/pool" "github.com/FloatTech/zbputils/process" "github.com/sirupsen/logrus" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { // 插件主体 - engine := control.Register("saucenao", order.PrioSauceNao, &control.Options{ + engine := control.Register("saucenao", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "搜图\n" + "- 以图搜图 | 搜索图片 | 以图识图[图片]\n" + @@ -45,7 +45,7 @@ func init() { // 插件主体 n := name + "_p" + strconv.Itoa(i) filepath := file.BOTPATH + "/" + pixiv.CacheDir + n f := "" - m, err := imgpool.GetImage(n) + m, err := pool.GetImage(n) if err == nil { imgs = append(imgs, message.Image(m.String())) continue @@ -97,7 +97,7 @@ func init() { // 插件主体 } }) // 以图搜图 - engine.OnKeywordGroup([]string{"以图搜图", "搜索图片", "以图识图"}, zero.OnlyGroup, ctxext.CmdMatch, ctxext.MustGiven).SetBlock(true). + engine.OnKeywordGroup([]string{"以图搜图", "搜索图片", "以图识图"}, zero.OnlyGroup, ctxext.MustProvidePicture).SetBlock(true). Handle(func(ctx *zero.Ctx) { // 开始搜索图片 ctx.SendChain(message.Text("少女祈祷中......")) diff --git a/plugin_scale/main.go b/plugin_scale/main.go index bceeacdf..8cf1e11c 100644 --- a/plugin_scale/main.go +++ b/plugin_scale/main.go @@ -14,7 +14,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const cachedir = "data/scale/" @@ -25,12 +25,12 @@ func init() { if err != nil { panic(err) } - engine := control.Register("scale", order.PrioScale, &control.Options{ + engine := control.Register("scale", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "叔叔的AI二次元图片放大\n- 放大图片[图片]", }).ApplySingle(ctxext.DefaultSingle) // 上传一张图进行评价 - engine.OnKeywordGroup([]string{"放大图片"}, zero.OnlyGroup, ctxext.CmdMatch, ctxext.MustGiven, getPara).SetBlock(true). + engine.OnKeywordGroup([]string{"放大图片"}, zero.OnlyGroup, ctxext.MustProvidePicture, getPara).SetBlock(true). Handle(func(ctx *zero.Ctx) { url := ctx.State["image_url"].([]string) if len(url) > 0 { diff --git a/plugin_score/data.go b/plugin_score/data.go index 334ceefb..fcd4e829 100644 --- a/plugin_score/data.go +++ b/plugin_score/data.go @@ -9,7 +9,7 @@ import ( "github.com/FloatTech/zbputils/img/text" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( diff --git a/plugin_score/sign_in.go b/plugin_score/sign_in.go index 650770a2..9e9eda37 100644 --- a/plugin_score/sign_in.go +++ b/plugin_score/sign_in.go @@ -21,7 +21,7 @@ import ( "github.com/FloatTech/zbputils/img/writer" "github.com/FloatTech/zbputils/web" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -33,15 +33,13 @@ const ( SCOREMAX = 120 ) -var ( - engine = control.Register("score", order.PrioScore, &control.Options{ +var levelArray = [...]int{0, 1, 2, 5, 10, 20, 35, 55, 75, 100, 120} + +func init() { + engine := control.Register("score", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "签到得分\n- 签到\n- 获得签到背景[@xxx] | 获得签到背景", }) - levelArray = [...]int{0, 1, 2, 5, 10, 20, 35, 55, 75, 100, 120} -) - -func init() { engine.OnFullMatch("签到", zero.OnlyGroup).SetBlock(true). Handle(func(ctx *zero.Ctx) { uid := ctx.Event.UserID diff --git a/plugin_setutime/setu_geter.go b/plugin_setutime/setu_geter.go index b97da305..4e155cf5 100644 --- a/plugin_setutime/setu_geter.go +++ b/plugin_setutime/setu_geter.go @@ -15,14 +15,13 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" fileutil "github.com/FloatTech/zbputils/file" - imagepool "github.com/FloatTech/zbputils/imgpool" + imagepool "github.com/FloatTech/zbputils/img/pool" "github.com/FloatTech/zbputils/math" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/zbputils/rule" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) // Pools 图片缓冲池 @@ -69,7 +68,7 @@ func init() { // 插件主体 } }() - engine := control.Register("setutime", order.PrioSetuTime, &control.Options{ + engine := control.Register("setutime", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "涩图\n" + "- 来份[涩图/二次元/风景/车万]\n" + @@ -77,7 +76,7 @@ func init() { // 插件主体 "- 删除[涩图/二次元/风景/车万][P站图片ID]\n" + "- >setu status", }) - engine.OnRegex(`^来份(.*)$`, rule.FirstValueInList(pool)).SetBlock(true).Limit(ctxext.LimitByUser). + engine.OnRegex(`^来份(.*)$`, ctxext.FirstValueInList(pool)).SetBlock(true).Limit(ctxext.LimitByUser). Handle(func(ctx *zero.Ctx) { var imgtype = ctx.State["regex_matched"].([]string)[1] // 补充池子 @@ -111,7 +110,7 @@ func init() { // 插件主体 ctx.SendChain(message.Text("成功向分类", imgtype, "添加图片", id)) }) - engine.OnRegex(`^删除(.*?)(\d+)$`, rule.FirstValueInList(pool), zero.SuperUserPermission).SetBlock(true). + engine.OnRegex(`^删除(.*?)(\d+)$`, ctxext.FirstValueInList(pool), zero.SuperUserPermission).SetBlock(true). Handle(func(ctx *zero.Ctx) { var ( imgtype = ctx.State["regex_matched"].([]string)[1] diff --git a/plugin_shadiao/shadiao.go b/plugin_shadiao/shadiao.go index d03b459c..d3581ec9 100644 --- a/plugin_shadiao/shadiao.go +++ b/plugin_shadiao/shadiao.go @@ -4,7 +4,7 @@ package shadiao import ( control "github.com/FloatTech/zbputils/control" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -23,7 +23,7 @@ const ( ) var ( - engine = control.Register("shadiao", order.PrioShaDiao, &control.Options{ + engine = control.Register("shadiao", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "沙雕app\n" + "- 哄我\n- 渣我\n- 来碗绿茶\n- 发个朋友圈\n- 来碗毒鸡汤\n- 讲个段子", diff --git a/plugin_shindan/shindan.go b/plugin_shindan/shindan.go index 77ca13a8..930f6509 100644 --- a/plugin_shindan/shindan.go +++ b/plugin_shindan/shindan.go @@ -8,7 +8,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/ctxext" @@ -16,7 +16,7 @@ import ( ) func init() { - engine := control.Register("shindan", order.PrioShinDan, &control.Options{ + engine := control.Register("shindan", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "shindan\n" + "- 今天是什么少女[@xxx]\n" + diff --git a/plugin_sleep_manage/data.go b/plugin_sleep_manage/data.go index 9c96e96c..0b6347d7 100644 --- a/plugin_sleep_manage/data.go +++ b/plugin_sleep_manage/data.go @@ -5,8 +5,8 @@ import ( "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" "github.com/FloatTech/ZeroBot-Plugin/plugin_sleep_manage/model" + "github.com/FloatTech/zbputils/control/order" ) func init() { diff --git a/plugin_sleep_manage/sleep_manage.go b/plugin_sleep_manage/sleep_manage.go index 043404ca..b6c34aae 100644 --- a/plugin_sleep_manage/sleep_manage.go +++ b/plugin_sleep_manage/sleep_manage.go @@ -11,19 +11,18 @@ import ( control "github.com/FloatTech/zbputils/control" - "github.com/FloatTech/ZeroBot-Plugin/order" "github.com/FloatTech/ZeroBot-Plugin/plugin_sleep_manage/model" + "github.com/FloatTech/zbputils/control/order" ) const dbpath = "data/sleep/" const dbfile = dbpath + "manage.db" -var engine = control.Register("sleepmanage", order.PrioSleepManage, &control.Options{ - DisableOnDefault: false, - Help: "sleepmanage\n- 早安\n- 晚安", -}) - func init() { + engine := control.Register("sleepmanage", order.AcquirePrio(), &control.Options{ + DisableOnDefault: false, + Help: "sleepmanage\n- 早安\n- 晚安", + }) engine.OnFullMatch("早安", isMorning, zero.OnlyGroup).SetBlock(true). Handle(func(ctx *zero.Ctx) { db, err := model.Open(dbfile) diff --git a/plugin_tracemoe/moe.go b/plugin_tracemoe/moe.go index c100e8f5..ccccf831 100644 --- a/plugin_tracemoe/moe.go +++ b/plugin_tracemoe/moe.go @@ -10,7 +10,7 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) var ( @@ -18,12 +18,12 @@ var ( ) func init() { // 插件主体 - engine := control.Register("tracemoe", order.PrioTraceMoe, &control.Options{ + engine := control.Register("tracemoe", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "tracemoe\n- 搜番 | 搜索番剧[图片]", }) // 以图搜图 - engine.OnKeywordGroup([]string{"搜番", "搜索番剧"}, ctxext.CmdMatch, ctxext.MustGiven).SetBlock(true). + engine.OnKeywordGroup([]string{"搜番", "搜索番剧"}, ctxext.MustProvidePicture).SetBlock(true). Handle(func(ctx *zero.Ctx) { // 开始搜索图片 ctx.SendChain(message.Text("少女祈祷中......")) diff --git a/plugin_translation/tl.go b/plugin_translation/tl.go index cba78b98..9722aff4 100644 --- a/plugin_translation/tl.go +++ b/plugin_translation/tl.go @@ -15,7 +15,7 @@ import ( "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func tl(d string) ([]byte, error) { @@ -38,7 +38,7 @@ func tl(d string) ([]byte, error) { } func init() { - control.Register("translation", order.PrioTranslation, &control.Options{ + control.Register("translation", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "翻译\n" + ">TL 你好", diff --git a/plugin_vtb_quotation/cron.go b/plugin_vtb_quotation/cron.go index aceaeb2b..3f7a1227 100644 --- a/plugin_vtb_quotation/cron.go +++ b/plugin_vtb_quotation/cron.go @@ -6,8 +6,8 @@ import ( "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" "github.com/FloatTech/ZeroBot-Plugin/plugin_vtb_quotation/model" + "github.com/FloatTech/zbputils/control/order" ) func init() { diff --git a/plugin_vtb_quotation/data.go b/plugin_vtb_quotation/data.go index 9fb46416..18b9b70a 100644 --- a/plugin_vtb_quotation/data.go +++ b/plugin_vtb_quotation/data.go @@ -6,7 +6,7 @@ import ( "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/process" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) // 加载数据库 diff --git a/plugin_vtb_quotation/vtb_quotation.go b/plugin_vtb_quotation/vtb_quotation.go index 0a804b67..20657b6d 100644 --- a/plugin_vtb_quotation/vtb_quotation.go +++ b/plugin_vtb_quotation/vtb_quotation.go @@ -17,8 +17,8 @@ import ( control "github.com/FloatTech/zbputils/control" "github.com/FloatTech/zbputils/img/text" - "github.com/FloatTech/ZeroBot-Plugin/order" "github.com/FloatTech/ZeroBot-Plugin/plugin_vtb_quotation/model" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -27,12 +27,11 @@ const ( dbfile = dbpath + "vtb.db" ) -var engine = control.Register("vtbquotation", order.PrioVtbQuotation, &control.Options{ - DisableOnDefault: false, - Help: "vtbkeyboard.moe\n- vtb语录\n- 随机vtb\n- 更新vtb\n", -}) - func init() { + engine := control.Register("vtbquotation", order.AcquirePrio(), &control.Options{ + DisableOnDefault: false, + Help: "vtbkeyboard.moe\n- vtb语录\n- 随机vtb\n- 更新vtb\n", + }) engine.OnFullMatch("vtb语录").SetBlock(true). Handle(func(ctx *zero.Ctx) { var firstIndex int diff --git a/plugin_wangyiyun/main.go b/plugin_wangyiyun/main.go index ea2fcc08..2209a65f 100644 --- a/plugin_wangyiyun/main.go +++ b/plugin_wangyiyun/main.go @@ -9,7 +9,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) const ( @@ -19,7 +19,7 @@ const ( ) func init() { - control.Register("wangyiyun", order.PrioWangYiYun, &control.Options{ + control.Register("wangyiyun", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "wangyiyun \n- 来份网易云热评", }).OnFullMatch("来份网易云热评").SetBlock(true).Limit(ctxext.LimitByUser). diff --git a/plugin_wtf/main.go b/plugin_wtf/main.go index 7632acac..83568654 100644 --- a/plugin_wtf/main.go +++ b/plugin_wtf/main.go @@ -10,11 +10,11 @@ import ( zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/order" + "github.com/FloatTech/zbputils/control/order" ) func init() { - en := control.Register("wtf", order.PrioWtf, &control.Options{ + en := control.Register("wtf", order.AcquirePrio(), &control.Options{ DisableOnDefault: false, Help: "鬼东西\n- 鬼东西列表\n- 查询鬼东西[序号][@xxx]", })