Skip to content

Commit

Permalink
optimize: performance
Browse files Browse the repository at this point in the history
  • Loading branch information
fumiama committed Oct 18, 2023
1 parent 036690d commit 8936edd
Show file tree
Hide file tree
Showing 9 changed files with 25 additions and 21 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ require (
github.com/FloatTech/zbpctrl v1.6.0
github.com/FloatTech/zbputils v1.7.1-0.20231017135158-7e6c839764eb
github.com/disintegration/imaging v1.6.2
github.com/fumiama/NanoBot v0.0.0-20231018063321-f6748029989a
github.com/fumiama/NanoBot v0.0.0-20231018155514-da5cad685a28
github.com/fumiama/go-base16384 v1.7.0
github.com/fumiama/go-registry v0.2.6
github.com/fumiama/unibase2n v0.0.0-20221020155353-02876e777430
Expand Down
5 changes: 2 additions & 3 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ github.com/ericpauley/go-quantize v0.0.0-20200331213906-ae555eb2afa4 h1:BBade+Jl
github.com/ericpauley/go-quantize v0.0.0-20200331213906-ae555eb2afa4/go.mod h1:H7chHJglrhPPzetLdzBleF8d22WYOv7UM/lEKYiwlKM=
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 h1:Yzb9+7DPaBjB8zlTR87/ElzFsnQfuHnVUVqpZZIcV5Y=
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5/go.mod h1:a2zkGnVExMxdzMo3M0Hi/3sEU+cWnZpSni0O6/Yb/P0=
github.com/fumiama/NanoBot v0.0.0-20231018063321-f6748029989a h1:PvvehKtRzag51IqijFLeOOSXdqE9Ubok3th61hmuZQc=
github.com/fumiama/NanoBot v0.0.0-20231018063321-f6748029989a/go.mod h1:uveUWnqIjAod3AI5XHlEuG41bMIVKwEDzLAjAxxHmfw=
github.com/fumiama/NanoBot v0.0.0-20231018155514-da5cad685a28 h1:JTdPj+t8emfMILq4iasN5rcj8KskS9BNeCfNDxzRPC0=
github.com/fumiama/NanoBot v0.0.0-20231018155514-da5cad685a28/go.mod h1:uveUWnqIjAod3AI5XHlEuG41bMIVKwEDzLAjAxxHmfw=
github.com/fumiama/bigfft v0.0.0-20211011143303-6e0bfa3c836b h1:Zt3pFQditAdWTHCOVkiloc9ZauBoWrb37guFV4iIRvE=
github.com/fumiama/bigfft v0.0.0-20211011143303-6e0bfa3c836b/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
github.com/fumiama/cron v1.3.0 h1:ZWlwuexF+HQHl3cYytEE5HNwD99q+3vNZF1GrEiXCFo=
Expand All @@ -60,7 +60,6 @@ github.com/fumiama/unibase2n v0.0.0-20221020155353-02876e777430 h1:XL4SnagpaVHYy
github.com/fumiama/unibase2n v0.0.0-20221020155353-02876e777430/go.mod h1:lEaZsT4FRSqcjnQ5q8y+mkenkzR/r1D3BJmfdp0vqDg=
github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY=
github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
github.com/go-sql-driver/mysql v1.5.0 h1:ozyZYNQW3x3HtqT1jira07DN2PArx2v7/mN66gGcHOs=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe h1:lXe2qZdvpiX5WZkZR4hgp4KJVfY3nMkvmwbVkpv1rVY=
Expand Down
4 changes: 2 additions & 2 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -128,11 +128,11 @@ func main() {

nano.OnMessageCommandGroup([]string{"help", "帮助", "menu", "菜单"}, nano.OnlyToMe).SetBlock(true).
Handle(func(ctx *nano.Ctx) {
_, _ = ctx.SendPlainMessage(false, banner.Banner)
_, _ = ctx.SendChain(nano.Text(banner.Banner))
})
nano.OnMessageFullMatch("查看nbp公告", nano.OnlyToMe, nano.AdminPermission).SetBlock(true).
Handle(func(ctx *nano.Ctx) {
_, _ = ctx.SendPlainMessage(false, strings.ReplaceAll(kanban.Kanban(), "\t", ""))
_, _ = ctx.SendChain(nano.Text(strings.ReplaceAll(kanban.Kanban(), "\t", "")))
})
_ = nano.Run(process.GlobalInitMutex.Unlock, bot...)
}
4 changes: 2 additions & 2 deletions plugin/genshin/ys.go
Original file line number Diff line number Diff line change
Expand Up @@ -95,12 +95,12 @@ func init() {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
}
b, err := imgfactory.ToBase64(img)
b, err := imgfactory.ToBytes(img)
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
}
_, err = ctx.SendImage("base64://"+nano.BytesToString(b), true, func() string {
_, err = ctx.SendImageBytes(b, true, func() string {
if mode {
return "恭喜你抽到了:\n" + str
}
Expand Down
4 changes: 2 additions & 2 deletions plugin/score/sign_in.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ func init() {
}
sdb = initialize(engine.DataFolder() + "score.db")
}()
engine.OnMessageRegex("签到").Limit(ctxext.LimitByUser).SetBlock(true).Handle(func(ctx *nano.Ctx) {
engine.OnMessageFullMatch("签到").Limit(ctxext.LimitByUser).SetBlock(true).Handle(func(ctx *nano.Ctx) {
uid := ctx.Message.Author.ID
if uid == "" {
_, _ = ctx.SendPlainMessage(false, "ERROR: 未获取到用户uid")
Expand Down Expand Up @@ -152,7 +152,7 @@ func init() {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
}
_, err = ctx.SendImage("base64://"+nano.BytesToString(data), false)
_, err = ctx.SendImageBytes(data, false)
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
}
Expand Down
4 changes: 2 additions & 2 deletions plugin/status/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,12 +72,12 @@ func init() { // 插件主体
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
}
sendimg, err := imgfactory.ToBase64(img)
sendimg, err := imgfactory.ToBytes(img)
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
}
if _, err := ctx.SendImage("base64://"+nano.BytesToString(sendimg), false); err != nil {
if _, err := ctx.SendImageBytes(sendimg, false); err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
}
})
Expand Down
10 changes: 8 additions & 2 deletions plugin/tarot/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import (
"github.com/FloatTech/floatbox/file"
"github.com/FloatTech/floatbox/process"
"github.com/FloatTech/floatbox/web"
"github.com/FloatTech/imgfactory"
ctrl "github.com/FloatTech/zbpctrl"

"github.com/FloatTech/NanoBot-Plugin/utils/ctxext"
Expand Down Expand Up @@ -190,12 +191,17 @@ func init() {
build.WriteString(strings.Join(majorArcanaName[14:22], " "))
build.WriteString("\n小阿尔卡纳:\n[圣杯|星币|宝剑|权杖] [0-10|侍从|骑士|王后|国王]")
txt := build.String()
cardList, err := text.RenderToBase64(txt, text.FontFile, 420, 20)
cardList, err := text.Render(txt, text.FontFile, 420, 20)
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
}
_, err = ctx.SendImage("base64://"+nano.BytesToString(cardList), false, "没有找到", match, "噢~")
data, err := imgfactory.ToBytes(cardList)
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
}
_, err = ctx.SendImageBytes(data, false, "没有找到", match, "噢~")
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
}
Expand Down
5 changes: 2 additions & 3 deletions plugin/wife/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
package wife

import (
"encoding/base64"
"encoding/json"
"os"
"strconv"
Expand Down Expand Up @@ -51,13 +50,13 @@ func init() {
data, err := engine.GetLazyData("wives/"+card, true)
card, _, _ = strings.Cut(card, ".")
if err != nil {
_, err = ctx.SendPlainMessage(false, "<@", uid, ">今天的二次元老婆是~【", card, "】哒\n【图片下载失败: ", err, "】")
_, err = ctx.SendChain(nano.At(uid), nano.Text("今天的二次元老婆是~【", card, "】哒\n【图片下载失败: ", err, "】"))
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
}
return
}
_, err = ctx.SendImage("base64://"+base64.StdEncoding.EncodeToString(data), false, "<@", uid, ">今天的二次元老婆是~【", card, "】哒")
_, err = ctx.SendChain(nano.At(uid), nano.Text("今天的二次元老婆是~【", card, "】哒"), nano.ImageBytes(data))
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
}
Expand Down
8 changes: 4 additions & 4 deletions plugin/wordle/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ func init() {
}
game := newWordleGame(target)
_, img, _ := game("")
_, err = ctx.SendImage("base64://"+nano.BytesToString(img), true, "你有", class+1, "次机会猜出单词,单词长度为", class, ",请发送单词")
_, err = ctx.SendImageBytes(img, true, "你有", class+1, "次机会猜出单词,单词长度为", class, ",请发送单词")
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
Expand Down Expand Up @@ -172,7 +172,7 @@ func init() {
case win:
tick.Stop()
after.Stop()
_, err := ctx.SendImage("base64://"+nano.BytesToString(img), true, "太棒了,你猜出来了!答案是: ", target, "(", tt, ")")
_, err := ctx.SendImageBytes(img, true, "太棒了,你猜出来了!答案是: ", target, "(", tt, ")")
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
}
Expand All @@ -198,7 +198,7 @@ func init() {
return
}
default:
_, err := ctx.SendImage("base64://"+nano.BytesToString(img), true)
_, err := ctx.SendImageBytes(img, true)
if err != nil {
_, _ = ctx.SendPlainMessage(false, "ERROR: ", err)
return
Expand Down Expand Up @@ -262,7 +262,7 @@ func newWordleGame(target string) func(string) (bool, []byte, error) {
}
}
}
data, err = imgfactory.ToBase64(ctx.Image())
data, err = imgfactory.ToBytes(ctx.Image())
return
}
}

0 comments on commit 8936edd

Please sign in to comment.