diff --git a/plugin_acgimage/classify.go b/plugin_acgimage/classify.go index 8de0e8ee..bab7ec9d 100644 --- a/plugin_acgimage/classify.go +++ b/plugin_acgimage/classify.go @@ -38,7 +38,7 @@ func init() { // 插件主体 "- 设置随机图片网址[url]\n" + "- 太涩了(撤回最近发的图)\n" + "- 评价图片(发送一张图片让bot评分)", - }) + }).ApplySingle(ctxext.DefaultSingle) engine.OnRegex(`^设置随机图片网址(.*)$`, zero.OnlyPrivate, zero.SuperUserPermission).SetBlock(true). Handle(func(ctx *zero.Ctx) { url := ctx.State["regex_matched"].([]string)[1] diff --git a/plugin_aiwife/non-existent.go b/plugin_aiwife/non-existent.go index 3b9cbd6b..a2886600 100644 --- a/plugin_aiwife/non-existent.go +++ b/plugin_aiwife/non-existent.go @@ -7,6 +7,7 @@ import ( "time" control "github.com/FloatTech/zbputils/control" + "github.com/FloatTech/zbputils/ctxext" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" @@ -18,14 +19,12 @@ const ( ) func init() { // 插件主体 - // TODO: 1.17 特性暂不增加 - // rand.Seed(time.Now().UnixMicro()) rand.Seed(time.Now().UnixNano()) control.Register("aiwife", order.PrioAIWife, &control.Options{ DisableOnDefault: false, Help: "AIWife\n" + "- waifu | 随机waifu", - }).OnFullMatchGroup([]string{"waifu", "随机waifu"}).SetBlock(true). + }).ApplySingle(ctxext.DefaultSingle).OnFullMatchGroup([]string{"waifu", "随机waifu"}).SetBlock(true). Handle(func(ctx *zero.Ctx) { miku := rand.Intn(100000) + 1 ctx.SendChain(message.At(ctx.Event.UserID), message.Image(fmt.Sprintf(bed, miku))) diff --git a/plugin_coser/coser.go b/plugin_coser/coser.go index 44be63bc..a30782dd 100644 --- a/plugin_coser/coser.go +++ b/plugin_coser/coser.go @@ -25,7 +25,7 @@ func init() { control.Register("coser", order.PrioCoser, &control.Options{ DisableOnDefault: false, Help: "三次元小姐姐\n- coser", - }).OnFullMatch("coser", zero.OnlyGroup).SetBlock(true).Limit(ctxext.LimitByGroup). + }).ApplySingle(ctxext.DefaultSingle).OnFullMatch("coser", zero.OnlyGroup).SetBlock(true).Limit(ctxext.LimitByGroup). Handle(func(ctx *zero.Ctx) { ctx.SendChain(message.Text("少女祈祷中......")) data, err := web.ReqWith(coserURL, "GET", "", ua) diff --git a/plugin_gif/run.go b/plugin_gif/run.go index e106fb13..8a899543 100644 --- a/plugin_gif/run.go +++ b/plugin_gif/run.go @@ -9,6 +9,7 @@ import ( "time" control "github.com/FloatTech/zbputils/control" + "github.com/FloatTech/zbputils/ctxext" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/message" @@ -32,7 +33,7 @@ func init() { // 插件主体 control.Register("gif", order.PrioGIF, &control.Options{ DisableOnDefault: false, Help: "制图\n- " + strings.Join(cmds, "\n- "), - }).OnRegex(`^(` + strings.Join(cmds, "|") + `)\D*?(\[CQ:(image\,file=([0-9a-zA-Z]{32}).*|at.+?(\d{5,11}))\].*|(\d+))$`). + }).ApplySingle(ctxext.DefaultSingle).OnRegex(`^(` + strings.Join(cmds, "|") + `)\D*?(\[CQ:(image\,file=([0-9a-zA-Z]{32}).*|at.+?(\d{5,11}))\].*|(\d+))$`). SetBlock(true).Handle(func(ctx *zero.Ctx) { c := newContext(ctx.Event.UserID) list := ctx.State["regex_matched"].([]string) diff --git a/plugin_hs/run.go b/plugin_hs/run.go index 312c9d99..bf4e164b 100644 --- a/plugin_hs/run.go +++ b/plugin_hs/run.go @@ -13,6 +13,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/utils/helper" control "github.com/FloatTech/zbputils/control" + "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/file" "github.com/FloatTech/zbputils/web" @@ -57,7 +58,7 @@ func init() { "- 搜卡[xxxx]\n" + "- [卡组代码xxx]\n" + "- 更多搜卡指令参数:https://hs.fbigame.com/misc/searchhelp", - }) + }).ApplySingle(ctxext.DefaultSingle) engine.OnRegex(`^搜卡(.+)$`). SetBlock(true).Handle(func(ctx *zero.Ctx) { List := ctx.State["regex_matched"].([]string)[1] diff --git a/plugin_lolicon/lolicon.go b/plugin_lolicon/lolicon.go index 9721bd98..50c79474 100644 --- a/plugin_lolicon/lolicon.go +++ b/plugin_lolicon/lolicon.go @@ -34,7 +34,7 @@ func init() { DisableOnDefault: false, Help: "lolicon\n" + "- 来份萝莉", - }).OnFullMatch("来份萝莉").SetBlock(true). + }).ApplySingle(ctxext.DefaultSingle).OnFullMatch("来份萝莉").SetBlock(true). Handle(func(ctx *zero.Ctx) { go func() { for i := 0; i < math.Min(cap(queue)-len(queue), 2); i++ { diff --git a/plugin_nsfw/main.go b/plugin_nsfw/main.go index 20dec213..a301ba59 100644 --- a/plugin_nsfw/main.go +++ b/plugin_nsfw/main.go @@ -16,7 +16,7 @@ func init() { engine := control.Register("nsfw", order.PrioNSFW, &control.Options{ DisableOnDefault: false, Help: "nsfw图片识别\n- nsfw打分[图片]", - }) + }).ApplySingle(ctxext.DefaultSingle) // 上传一张图进行评价 engine.OnKeywordGroup([]string{"nsfw打分"}, zero.OnlyGroup, ctxext.CmdMatch, ctxext.MustGiven).SetBlock(true). Handle(func(ctx *zero.Ctx) { diff --git a/plugin_omikuji/sensou.go b/plugin_omikuji/sensou.go index 84c31971..8ca6e41b 100644 --- a/plugin_omikuji/sensou.go +++ b/plugin_omikuji/sensou.go @@ -13,6 +13,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/utils/helper" control "github.com/FloatTech/zbputils/control" + "github.com/FloatTech/zbputils/ctxext" "github.com/FloatTech/zbputils/txt2img" "github.com/FloatTech/ZeroBot-Plugin/order" @@ -27,7 +28,7 @@ var ( DisableOnDefault: false, Help: "浅草寺求签\n" + "- 求签 | 占卜\n- 解签", - }) + }).ApplySingle(ctxext.DefaultSingle) ) func init() { // 插件主体 diff --git a/plugin_runcode/code_runner.go b/plugin_runcode/code_runner.go index 9f8f64f6..a87de8b2 100644 --- a/plugin_runcode/code_runner.go +++ b/plugin_runcode/code_runner.go @@ -104,7 +104,7 @@ func init() { "JavaScript || TypeScript || PHP || Shell \n" + "Kotlin || Rust || Erlang || Ruby || Swift \n" + "R || VB || Py2 || Perl || Pascal || Scala", - }).OnRegex(`^>runcode\s(.+?)\s([\s\S]+)$`).SetBlock(true).Limit(ctxext.LimitByUser). + }).ApplySingle(ctxext.DefaultSingle).OnRegex(`^>runcode\s(.+?)\s([\s\S]+)$`).SetBlock(true).Limit(ctxext.LimitByUser). Handle(func(ctx *zero.Ctx) { language := ctx.State["regex_matched"].([]string)[1] language = strings.ToLower(language) diff --git a/plugin_scale/main.go b/plugin_scale/main.go index a82443fc..bceeacdf 100644 --- a/plugin_scale/main.go +++ b/plugin_scale/main.go @@ -28,7 +28,7 @@ func init() { engine := control.Register("scale", order.PrioScale, &control.Options{ DisableOnDefault: false, Help: "叔叔的AI二次元图片放大\n- 放大图片[图片]", - }) + }).ApplySingle(ctxext.DefaultSingle) // 上传一张图进行评价 engine.OnKeywordGroup([]string{"放大图片"}, zero.OnlyGroup, ctxext.CmdMatch, ctxext.MustGiven, getPara).SetBlock(true). Handle(func(ctx *zero.Ctx) {