diff --git a/.goreleaser.yml b/.goreleaser.yml index 40ba5f80..1cc24321 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -11,7 +11,6 @@ builds: - GO111MODULE=on goos: - linux - - darwin goarch: - 386 - amd64 @@ -20,11 +19,6 @@ builds: goarm: - 6 - 7 - ignore: - - goos: darwin - goarch: arm - - goos: darwin - goarch: 386 mod_timestamp: "{{ .CommitTimestamp }}" flags: - -trimpath diff --git a/plugin_cangtoushi/cangtoushi.go b/plugin_cangtoushi/cangtoushi.go index d21168b4..9a06417f 100644 --- a/plugin_cangtoushi/cangtoushi.go +++ b/plugin_cangtoushi/cangtoushi.go @@ -1,3 +1,4 @@ +// Package cangtoushi 藏头诗 package cangtoushi import ( @@ -7,12 +8,10 @@ import ( "net/http/cookiejar" "net/url" "strings" - "time" "github.com/antchfx/htmlquery" log "github.com/sirupsen/logrus" zero "github.com/wdvxdr1123/ZeroBot" - "github.com/wdvxdr1123/ZeroBot/extension/rate" "github.com/wdvxdr1123/ZeroBot/message" "github.com/wdvxdr1123/ZeroBot/utils/helper" @@ -29,16 +28,15 @@ const ( var ( gCurCookieJar *cookiejar.Jar - engine = control.Register("cangtoushi", &control.Options{ + csrf string +) + +func init() { + engine := control.Register("cangtoushi", &control.Options{ DisableOnDefault: false, Help: "藏头诗\n" + "- 藏头诗[xxx]\n- 藏尾诗[xxx]", }) - limit = rate.NewManager(time.Minute, 20) - csrf string -) - -func init() { engine.OnRegex("藏头诗([\u4E00-\u9FA5]{3,10})").SetBlock(true).SetPriority(prio).Handle(func(ctx *zero.Ctx) { kw := ctx.State["regex_matched"].([]string)[1] login() diff --git a/plugin_juejuezi/jiejiezi.go b/plugin_juejuezi/jiejiezi.go index 506b5763..cc9eae70 100644 --- a/plugin_juejuezi/jiejiezi.go +++ b/plugin_juejuezi/jiejiezi.go @@ -1,3 +1,4 @@ +// Package juejuezi 绝绝子 package juejuezi import ( @@ -8,7 +9,6 @@ import ( "time" log "github.com/sirupsen/logrus" - "github.com/tidwall/gjson" zero "github.com/wdvxdr1123/ZeroBot" "github.com/wdvxdr1123/ZeroBot/extension/rate" @@ -26,29 +26,29 @@ const ( ) var ( - engine = control.Register("juejuezi", &control.Options{ - DisableOnDefault: false, - Help: "绝绝子生成器\n" + - "- 喝奶茶绝绝子|绝绝子吃饭", - }) limit = rate.NewManager(time.Minute, 20) ) func init() { - engine.OnRegex("[\u4E00-\u9FA5]{0,10}绝绝子[\u4E00-\u9FA5]{0,10}").SetBlock(true).SetPriority(prio).Handle(func(ctx *zero.Ctx) { + control.Register("juejuezi", &control.Options{ + DisableOnDefault: false, + Help: "绝绝子生成器\n" + + "- 喝奶茶绝绝子|绝绝子吃饭", + }).OnRegex("[\u4E00-\u9FA5]{0,10}绝绝子[\u4E00-\u9FA5]{0,10}").SetBlock(true).SetPriority(prio).Handle(func(ctx *zero.Ctx) { if !limit.Load(ctx.Event.GroupID).Acquire() { return } toDealStr := []rune(strings.ReplaceAll(ctx.ExtractPlainText(), "绝绝子", "")) - if len(toDealStr) < 2 { + switch len(toDealStr) { + case 0, 1: ctx.SendChain(message.Reply(ctx.Event.MessageID), message.Text("不要只输入绝绝子")) - } else if len(toDealStr) == 2 { + case 2: data, err := juejuezi(string(toDealStr[0]), string(toDealStr[1])) if err != nil { ctx.SendChain(message.Text(err)) } ctx.SendChain(message.Text(gjson.Get(helper.BytesToString(data), "text").String())) - } else { + default: params := ctx.GetWordSlices(string(toDealStr)).Get("slices").Array() data, err := juejuezi(params[0].String(), params[1].String()) if err != nil {