diff --git a/go.mod b/go.mod index 788a4b62..83a7ac74 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,9 @@ module github.com/FloatTech/ZeroBot-Plugin go 1.18 require ( - github.com/FloatTech/AnimeAPI v1.3.2-0.20220319114940-c6c7d308c43b + github.com/FloatTech/AnimeAPI v1.3.2-0.20220326161751-d0d2797b91da github.com/FloatTech/sqlite v0.2.1 - github.com/FloatTech/zbputils v1.3.2-0.20220326140053-3c3626865d29 + github.com/FloatTech/zbputils v1.3.2-0.20220326161600-f9554b2fb9a4 github.com/antchfx/htmlquery v1.2.4 github.com/corona10/goimagehash v1.0.3 github.com/fogleman/gg v1.3.0 @@ -22,8 +22,8 @@ require ( github.com/shirou/gopsutil/v3 v3.22.2 github.com/sirupsen/logrus v1.8.1 github.com/tidwall/gjson v1.14.0 - github.com/wdvxdr1123/ZeroBot v1.4.2-0.20220314043738-2ff63b4ac217 - golang.org/x/image v0.0.0-20220302094943-723b81ca9867 + github.com/wdvxdr1123/ZeroBot v1.4.2-0.20220326160643-893d4e910785 + golang.org/x/image v0.0.0-20220321031419-a8550c1d254a ) require ( @@ -47,9 +47,9 @@ require ( github.com/tklauser/numcpus v0.4.0 // indirect github.com/yusufpapurcu/wmi v1.2.2 // indirect golang.org/x/net v0.0.0-20220225172249-27dd8689420f // indirect - golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5 // indirect + golang.org/x/sys v0.0.0-20220325203850-36772127a21f // indirect golang.org/x/text v0.3.7 // indirect - modernc.org/libc v1.14.11 // indirect + modernc.org/libc v1.14.12 // indirect modernc.org/mathutil v1.4.1 // indirect - modernc.org/memory v1.0.6 // indirect + modernc.org/memory v1.0.7 // indirect ) diff --git a/go.sum b/go.sum index 8f6ceec2..e28482db 100644 --- a/go.sum +++ b/go.sum @@ -1,9 +1,9 @@ -github.com/FloatTech/AnimeAPI v1.3.2-0.20220319114940-c6c7d308c43b h1:lgYo6Q8s9yf/mkb2AeXS2d6mVrzNSLrDKf/FeNM5oxg= -github.com/FloatTech/AnimeAPI v1.3.2-0.20220319114940-c6c7d308c43b/go.mod h1:VgjXeR2M2wxs43Rmh9/3ybn+gAtzSFRwBmb/rXFEwsM= +github.com/FloatTech/AnimeAPI v1.3.2-0.20220326161751-d0d2797b91da h1:KbJujP8k2/3BYRb+F292zLmDOV79uTOu/24n3fhIwRU= +github.com/FloatTech/AnimeAPI v1.3.2-0.20220326161751-d0d2797b91da/go.mod h1:aC3EOKpb0R0VOdW9QIQCfqN6ZFymOfvCgzVY1/Fz3Og= github.com/FloatTech/sqlite v0.2.1 h1:9t6Me48XJJCIoPy4nLRvcdhcVKfT0c2lilp7SEKROG8= github.com/FloatTech/sqlite v0.2.1/go.mod h1:6NfHRzqOo9RWeMJEoAQVuo51Omd5LFNxCNQhMF02/9U= -github.com/FloatTech/zbputils v1.3.2-0.20220326140053-3c3626865d29 h1:+Sk3cj+1xckSJJ/woLAjOzWKu9YpBRGNTUjcT6W7nLQ= -github.com/FloatTech/zbputils v1.3.2-0.20220326140053-3c3626865d29/go.mod h1:Z4pVG8bHlDgVuPjgPvMyylPOBrroFq6x3a5QSVK1V08= +github.com/FloatTech/zbputils v1.3.2-0.20220326161600-f9554b2fb9a4 h1:+OnHN8QcMqwEx37a3TMBw7CT5OTyFs8qqa4Hub+Igbk= +github.com/FloatTech/zbputils v1.3.2-0.20220326161600-f9554b2fb9a4/go.mod h1:qZlHzG1s1giQrXaosjOAA2utGNaPZjwJsVZfBog2bhg= github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc= github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc h1:AAx50/fb/xS4lvsdQg+bFbGvqSDhyV1MF+p2PLCamZ0= github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc/go.mod h1:OMmITAib6POA37xCichWM0aRnoVpSMZO1rB/G01wrr0= @@ -122,8 +122,8 @@ github.com/tklauser/go-sysconf v0.3.10/go.mod h1:C8XykCvCb+Gn0oNCWPIlcb0RuglQTYa github.com/tklauser/numcpus v0.3.0/go.mod h1:yFGUr7TUHQRAhyqBcEg0Ge34zDBAsIvJJcyE6boqnA8= github.com/tklauser/numcpus v0.4.0 h1:E53Dm1HjH1/R2/aoCtXtPgzmElmn51aOkhCFSuZq//o= github.com/tklauser/numcpus v0.4.0/go.mod h1:1+UI3pD8NW14VMwdgJNJ1ESk2UnwhAnz5hMwiKKqXCQ= -github.com/wdvxdr1123/ZeroBot v1.4.2-0.20220314043738-2ff63b4ac217 h1:mJPi1JVivQ3F9fDZUiGE8pW9ShNct01C8yqBPcbcepI= -github.com/wdvxdr1123/ZeroBot v1.4.2-0.20220314043738-2ff63b4ac217/go.mod h1:NwXIp7PgjV+kUALMXJ4v4/3QcsRSOodtjhLekuPXFog= +github.com/wdvxdr1123/ZeroBot v1.4.2-0.20220326160643-893d4e910785 h1:alVsiLOu9H0GCriAkTMqn310izMNEzg9y1Z9FqAV1DY= +github.com/wdvxdr1123/ZeroBot v1.4.2-0.20220326160643-893d4e910785/go.mod h1:NwXIp7PgjV+kUALMXJ4v4/3QcsRSOodtjhLekuPXFog= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yusufpapurcu/wmi v1.2.2 h1:KBNDSne4vP5mbSWnJbO+51IMOXJB67QiYCSBrubbPRg= github.com/yusufpapurcu/wmi v1.2.2/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= @@ -132,10 +132,10 @@ golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACk golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191205180655-e7c4368fe9dd/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20220314234724-5d542ad81a58 h1:L8CkJyVoa0/NslN3RUMLgasK5+KatNvyRGQ9QyCYAfc= +golang.org/x/crypto v0.0.0-20220321153916-2c7772ba3064 h1:S25/rfnfsMVgORT4/J61MJ7rdyseOZOyvLIrZEZ7s6s= golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.0.0-20220302094943-723b81ca9867 h1:TcHcE0vrmgzNH1v3ppjcMGbhG5+9fMuvOmUYwNEF4q4= -golang.org/x/image v0.0.0-20220302094943-723b81ca9867/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= +golang.org/x/image v0.0.0-20220321031419-a8550c1d254a h1:LnH9RNcpPv5Kzi15lXg42lYMPUf0x8CuPv1YnvBWZAg= +golang.org/x/image v0.0.0-20220321031419-a8550c1d254a/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -168,8 +168,8 @@ golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220111092808-5a964db01320/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5 h1:y/woIyUBFbpQGKS0u1aHF/40WUDnek3fPOyD08H5Vng= -golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220325203850-36772127a21f h1:TrmogKRsSOxRMJbLYGrB4SBbW+LJcEllYBLME5Zk5pU= +golang.org/x/sys v0.0.0-20220325203850-36772127a21f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -301,8 +301,8 @@ modernc.org/libc v1.14.6/go.mod h1:2PJHINagVxO4QW/5OQdRrvMYo+bm5ClpUFfyXCYl9ak= modernc.org/libc v1.14.7/go.mod h1:f8xfWXW8LW41qb4X5+huVQo5dcfPlq7Cbny2TDheMv0= modernc.org/libc v1.14.8/go.mod h1:9+JCLb1MWSY23smyOpIPbd5ED+rSS/ieiDWUpdyO3mo= modernc.org/libc v1.14.10/go.mod h1:y1MtIWhwpJFpLYm6grAThtuXJKEsY6xkdZmXbRngIdo= -modernc.org/libc v1.14.11 h1:ivxNmUkfp5iSGAGMIjylvx5R53s6QTJW9qUru1yrnk4= -modernc.org/libc v1.14.11/go.mod h1:l5/Mz/GrZwOqzwRHA3abgSCnSeJzzTl+Ify0bAwKbAw= +modernc.org/libc v1.14.12 h1:pUBZTYoISfbb4pCf4PECENpbvwDBxeKc+/dS9LyOWFM= +modernc.org/libc v1.14.12/go.mod h1:fJdoe23MHu2ruPQkFPPqCpToDi5cckzsbmkI6Ez0LqQ= modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= modernc.org/mathutil v1.4.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= @@ -310,8 +310,9 @@ modernc.org/mathutil v1.4.1 h1:ij3fYGe8zBF4Vu+g0oT7mB06r8sqGWKuJu1yXeR4by8= modernc.org/mathutil v1.4.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= modernc.org/memory v1.0.4/go.mod h1:nV2OApxradM3/OVbs2/0OsP6nPfakXpi50C7dcoHXlc= modernc.org/memory v1.0.5/go.mod h1:B7OYswTRnfGg+4tDH1t1OeUNnsy2viGTdME4tzd+IjM= -modernc.org/memory v1.0.6 h1:5IaT/LChMrMdxLCy/a4qmb+7SzGiU8/ozPgkEOrfvFw= modernc.org/memory v1.0.6/go.mod h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw= +modernc.org/memory v1.0.7 h1:UE3cxTRFa5tfUibAV7Jqq8P7zRY0OlJg+yWVIIaluEE= +modernc.org/memory v1.0.7/go.mod h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw= modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= modernc.org/strutil v1.1.1/go.mod h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw= modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= diff --git a/plugin/manager/manager.go b/plugin/manager/manager.go index da31233e..04181197 100644 --- a/plugin/manager/manager.go +++ b/plugin/manager/manager.go @@ -417,13 +417,13 @@ func init() { // 插件主体 } return false } - next := zero.NewFutureEvent("message", 999, false, zero.CheckUser(ctx.Event.UserID), rule) + next := zero.NewFutureEvent("message", 999, false, ctx.CheckSession(), rule) recv, cancel := next.Repeat() select { case <-time.After(time.Minute): + cancel() ctx.SendChain(message.Text("拜拜啦~")) ctx.SetGroupKick(ctx.Event.GroupID, uid, false) - cancel() case <-recv: cancel() ctx.SendChain(message.Text("答对啦~")) diff --git a/plugin/scale/main.go b/plugin/scale/main.go index be549912..cbf3ea3a 100644 --- a/plugin/scale/main.go +++ b/plugin/scale/main.go @@ -111,7 +111,7 @@ func init() { } func getPara(ctx *zero.Ctx) bool { - next := zero.NewFutureEvent("message", 999, false, zero.CheckUser(ctx.Event.UserID)) + next := zero.NewFutureEvent("message", 999, false, ctx.CheckSession()) recv, cancel := next.Repeat() i := 0 paras := [2]int{} @@ -119,9 +119,10 @@ func getPara(ctx *zero.Ctx) bool { for { select { case <-time.After(time.Second * 120): + cancel() return false - case e := <-recv: - msg := e.Message.ExtractPlainText() + case c := <-recv: + msg := c.Event.Message.ExtractPlainText() num, err := strconv.Atoi(msg) if err != nil { ctx.SendChain(message.Text("请输入数字!")) diff --git a/plugin/vtb_quotation/vtb_quotation.go b/plugin/vtb_quotation/vtb_quotation.go index 83874f1b..467c9357 100644 --- a/plugin/vtb_quotation/vtb_quotation.go +++ b/plugin/vtb_quotation/vtb_quotation.go @@ -78,25 +78,25 @@ func init() { errorCount := 0 for { select { - case e := <-echo: // 接收到需要复读的消息 + case c := <-echo: // 接收到需要复读的消息 // 错误次数达到3次,结束命令 if errorCount >= 3 { - ctx.SendChain(message.Reply(e.MessageID), message.Text("输入错误太多,请重新发指令")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("输入错误太多,请重新发指令")) return } switch step { case 0: - firstIndex, err = strconv.Atoi(e.RawMessage) + firstIndex, err = strconv.Atoi(c.Event.RawMessage) // log.Println(fmt.Sprintf("当前在第%d步", step)) // log.Println(fmt.Sprintf("firstIndex:%d,secondIndex:%d,thirdIndex:%d", firstIndex, secondIndex, thirdIndex)) if err != nil { - ctx.SendChain(message.Reply(e.MessageID), message.Text("请输入正确的序号,三次输入错误,指令可退出重输")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("请输入正确的序号,三次输入错误,指令可退出重输")) errorCount++ } else { secondStepMessage := db.GetAllSecondCategoryMessageByFirstIndex(firstIndex) // log.Println(secondStepMessage) if secondStepMessage == "" { - ctx.SendChain(message.Reply(e.MessageID), message.Text("你选择的序号没有内容,请重新选择,三次输入错误,指令可退出重输")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("你选择的序号没有内容,请重新选择,三次输入错误,指令可退出重输")) firstStepImageBytes, err := text.RenderToBase64(db.GetAllFirstCategoryMessage(), text.FontFile, 400, 20) if err != nil { log.Errorln("[vtb]:", err) @@ -117,17 +117,17 @@ func init() { } } case 1: - secondIndex, err = strconv.Atoi(e.RawMessage) + secondIndex, err = strconv.Atoi(c.Event.RawMessage) // log.Println(fmt.Sprintf("当前在第%d步", step)) // log.Println(fmt.Sprintf("firstIndex:%d,secondIndex:%d,thirdIndex:%d", firstIndex, secondIndex, thirdIndex)) if err != nil { - ctx.SendChain(message.Reply(e.MessageID), message.Text("请输入正确的序号,三次输入错误,指令可退出重输")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("请输入正确的序号,三次输入错误,指令可退出重输")) errorCount++ } else { thirdStepMessage := db.GetAllThirdCategoryMessageByFirstIndexAndSecondIndex(firstIndex, secondIndex) // log.Println(thirdStepMessage) if thirdStepMessage == "" { - ctx.SendChain(message.Reply(e.MessageID), message.Text("你选择的序号没有内容,请重新选择,三次输入错误,指令可退出重输")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("你选择的序号没有内容,请重新选择,三次输入错误,指令可退出重输")) secondStepMessageBytes, err := text.RenderToBase64(db.GetAllSecondCategoryMessageByFirstIndex(firstIndex), text.FontFile, 400, 20) if err != nil { log.Errorln("[vtb]:", err) @@ -148,18 +148,18 @@ func init() { } } case 2: - thirdIndex, err = strconv.Atoi(e.RawMessage) + thirdIndex, err = strconv.Atoi(c.Event.RawMessage) // log.Println(fmt.Sprintf("当前在第%d步", step)) // log.Println(fmt.Sprintf("firstIndex:%d,secondIndex:%d,thirdIndex:%d", firstIndex, secondIndex, thirdIndex)) if err != nil { - ctx.SendChain(message.Reply(e.MessageID), message.Text("请输入正确的序号,三次输入错误,指令可退出重输")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("请输入正确的序号,三次输入错误,指令可退出重输")) errorCount++ } else { tc := db.GetThirdCategory(firstIndex, secondIndex, thirdIndex) reg := regexp.MustCompile(regStr) recURL := tc.ThirdCategoryPath if recURL == "" { - ctx.SendChain(message.Reply(e.MessageID), message.Text("没有内容请重新选择,三次输入错误,指令可退出重输")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("没有内容请重新选择,三次输入错误,指令可退出重输")) firstStepImageBytes, err := text.RenderToBase64(db.GetAllFirstCategoryMessage(), text.FontFile, 400, 20) if err != nil { log.Errorln("[vtb]:", err) @@ -177,7 +177,7 @@ func init() { recURL = strings.ReplaceAll(recURL, "+", "%20") // log.Println(recordUrl) } - ctx.SendChain(message.Reply(e.MessageID), message.Text("请欣赏《"+tc.ThirdCategoryName+"》")) + ctx.SendChain(message.Reply(c.Event.MessageID), message.Text("请欣赏《"+tc.ThirdCategoryName+"》")) if !re.MatchString(recURL) { log.Errorln("[vtb]:文件格式不匹配") diff --git a/plugin/wordle/wordle.go b/plugin/wordle/wordle.go index 3b6b1300..07205b08 100644 --- a/plugin/wordle/wordle.go +++ b/plugin/wordle/wordle.go @@ -108,7 +108,7 @@ func init() { var next *zero.FutureEvent if ctx.State["regex_matched"].([]string)[1] == "个人" { next = zero.NewFutureEvent("message", 999, false, zero.RegexRule(fmt.Sprintf(`^([A-Z]|[a-z]){%d}$`, class)), - zero.OnlyGroup, zero.CheckUser(ctx.Event.UserID)) + zero.OnlyGroup, ctx.CheckSession()) } else { next = zero.NewFutureEvent("message", 999, false, zero.RegexRule(fmt.Sprintf(`^([A-Z]|[a-z]){%d}$`, class)), zero.OnlyGroup, zero.CheckGroup(ctx.Event.GroupID)) @@ -126,12 +126,12 @@ func init() { ), ) return - case e := <-recv: - win, img, cl, err = game(e.Message.String()) + case c := <-recv: + win, img, cl, err = game(c.Event.Message.String()) switch { case win: ctx.Send( - message.ReplyWithMessage(e.MessageID, + message.ReplyWithMessage(c.Event.MessageID, message.ImageBytes(img), message.Text("太棒了,你猜出来了!"), ), @@ -140,7 +140,7 @@ func init() { return case err == errTimesRunOut: ctx.Send( - message.ReplyWithMessage(e.MessageID, + message.ReplyWithMessage(c.Event.MessageID, message.ImageBytes(img), message.Text("游戏结束...答案是: ", target), ), @@ -149,19 +149,19 @@ func init() { return case err == errLengthNotEnough: ctx.Send( - message.ReplyWithMessage(e.MessageID, + message.ReplyWithMessage(c.Event.MessageID, message.Text("单词长度错误"), ), ) case err == errUnknownWord: ctx.Send( - message.ReplyWithMessage(e.MessageID, + message.ReplyWithMessage(c.Event.MessageID, message.Text("你确定存在这样的单词吗?"), ), ) default: ctx.Send( - message.ReplyWithMessage(e.MessageID, + message.ReplyWithMessage(c.Event.MessageID, message.ImageBytes(img), ), )