From bdffbfab67e5d771ef9cf44bb1d30f32d6e77579 Mon Sep 17 00:00:00 2001 From: fumiama Date: Thu, 14 Oct 2021 23:07:13 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=8F=EF=B8=8F=20=20=E5=88=86=E7=A6=BB=20da?= =?UTF-8?q?ta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- control/rule.go | 4 ++-- plugin_fortune/fortune.go | 13 +++++++------ plugin_lolicon/lolicon.go | 4 ++-- plugin_manager/manager.go | 4 ++-- plugin_setutime/setu_geter.go | 9 +++++---- {data => utils/dl}/dl.go | 3 ++- {data => utils/math}/math.go | 3 ++- {data => utils/sql}/sqlite.go | 4 ++-- 8 files changed, 24 insertions(+), 20 deletions(-) rename {data => utils/dl}/dl.go (86%) rename {data => utils/math}/math.go (82%) rename {data => utils/sql}/sqlite.go (98%) diff --git a/control/rule.go b/control/rule.go index 8e6036ba..f12bb59d 100644 --- a/control/rule.go +++ b/control/rule.go @@ -11,11 +11,11 @@ import ( "github.com/wdvxdr1123/ZeroBot/extension" "github.com/wdvxdr1123/ZeroBot/message" - "github.com/FloatTech/ZeroBot-Plugin/data" + "github.com/FloatTech/ZeroBot-Plugin/utils/sql" ) var ( - db = &data.Sqlite{DBPath: "data/control/plugins.db"} + db = &sql.Sqlite{DBPath: "data/control/plugins.db"} // managers 每个插件对应的管理 managers = map[string]*Control{} mu = sync.RWMutex{} diff --git a/plugin_fortune/fortune.go b/plugin_fortune/fortune.go index c8a1ee9c..c1d7b1e1 100644 --- a/plugin_fortune/fortune.go +++ b/plugin_fortune/fortune.go @@ -20,7 +20,8 @@ import ( "github.com/wdvxdr1123/ZeroBot/utils/helper" "github.com/FloatTech/ZeroBot-Plugin/control" - "github.com/FloatTech/ZeroBot-Plugin/data" + "github.com/FloatTech/ZeroBot-Plugin/utils/dl" + "github.com/FloatTech/ZeroBot-Plugin/utils/math" ) var ( @@ -76,7 +77,7 @@ func init() { mikuji := base + "运势签文.json" if _, err := os.Stat(mikuji); err != nil && !os.IsExist(err) { ctx.SendChain(message.Text("正在下载签文文件,请稍后...")) - err := data.DownloadTo(site+"运势签文.json", mikuji) + err := dl.DownloadTo(site+"运势签文.json", mikuji) if err != nil { ctx.SendChain(message.Text("ERROR: ", err)) return @@ -87,7 +88,7 @@ func init() { ttf := base + "sakura.ttf" if _, err := os.Stat(ttf); err != nil && !os.IsExist(err) { ctx.SendChain(message.Text("正在下载字体文件,请稍后...")) - err := data.DownloadTo(site+"sakura.ttf", ttf) + err := dl.DownloadTo(site+"sakura.ttf", ttf) if err != nil { ctx.SendChain(message.Text("ERROR: ", err)) return @@ -109,7 +110,7 @@ func init() { if _, err := os.Stat(folder); err != nil && !os.IsExist(err) { ctx.SendChain(message.Text("正在下载背景图片,请稍后...")) zipfile := kind + ".zip" - err := data.DownloadTo(site+zipfile, zipfile) + err := dl.DownloadTo(site+zipfile, zipfile) if err != nil { ctx.SendChain(message.Text("ERROR: ", err)) return @@ -255,7 +256,7 @@ func draw(background, title, text string) ([]byte, error) { default: for i, o := range r { xnow := rowsnum(i+1, 9) - ysum := data.Min(len(r)-(xnow-1)*9, 9) + ysum := math.Min(len(r)-(xnow-1)*9, 9) ynow := i%9 + 1 canvas.DrawString(string(o), -offest(xsum, xnow, tw)+115, offest(ysum, ynow, th)+320.0) } @@ -263,7 +264,7 @@ func draw(background, title, text string) ([]byte, error) { div := rowsnum(len(r), 2) for i, o := range r { xnow := rowsnum(i+1, div) - ysum := data.Min(len(r)-(xnow-1)*div, div) + ysum := math.Min(len(r)-(xnow-1)*div, div) ynow := i%div + 1 switch xnow { case 1: diff --git a/plugin_lolicon/lolicon.go b/plugin_lolicon/lolicon.go index 9c038927..9e3dbeae 100644 --- a/plugin_lolicon/lolicon.go +++ b/plugin_lolicon/lolicon.go @@ -11,7 +11,7 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/FloatTech/ZeroBot-Plugin/control" - "github.com/FloatTech/ZeroBot-Plugin/data" + "github.com/FloatTech/ZeroBot-Plugin/utils/math" ) const ( @@ -31,7 +31,7 @@ func init() { }).OnFullMatch("来份萝莉").SetBlock(true). Handle(func(ctx *zero.Ctx) { go func() { - for i := 0; i < data.Min(cap(queue)-len(queue), 2); i++ { + for i := 0; i < math.Min(cap(queue)-len(queue), 2); i++ { resp, err := http.Get(api) if err != nil { ctx.SendChain(message.Text("ERROR: ", err)) diff --git a/plugin_manager/manager.go b/plugin_manager/manager.go index ab6bf78e..495417fb 100644 --- a/plugin_manager/manager.go +++ b/plugin_manager/manager.go @@ -17,7 +17,7 @@ import ( timer "github.com/FloatTech/ZeroBot-Plugin-Timer" - "github.com/FloatTech/ZeroBot-Plugin/data" + "github.com/FloatTech/ZeroBot-Plugin/utils/math" ) const ( @@ -302,7 +302,7 @@ func init() { // 插件主体 sort.SliceStable(temp, func(i, j int) bool { return temp[i].Get("last_sent_time").Int() < temp[j].Get("last_sent_time").Int() }) - temp = temp[data.Max(0, len(temp)-10):] + temp = temp[math.Max(0, len(temp)-10):] rand.Seed(time.Now().UnixNano()) who := temp[rand.Intn(len(temp))] if who.Get("user_id").Int() == ctx.Event.SelfID { diff --git a/plugin_setutime/setu_geter.go b/plugin_setutime/setu_geter.go index 6e183031..eb9682f6 100644 --- a/plugin_setutime/setu_geter.go +++ b/plugin_setutime/setu_geter.go @@ -18,13 +18,14 @@ import ( "github.com/wdvxdr1123/ZeroBot/message" "github.com/FloatTech/ZeroBot-Plugin/control" - "github.com/FloatTech/ZeroBot-Plugin/data" + "github.com/FloatTech/ZeroBot-Plugin/utils/math" + "github.com/FloatTech/ZeroBot-Plugin/utils/sql" ) // Pools 图片缓冲池 type imgpool struct { Lock sync.Mutex - DB *data.Sqlite + DB *sql.Sqlite Path string Group int64 List []string @@ -40,7 +41,7 @@ const ( // NewPoolsCache 返回一个缓冲池对象 func newPools() *imgpool { cache := &imgpool{ - DB: &data.Sqlite{DBPath: "data/SetuTime/SetuTime.db"}, + DB: &sql.Sqlite{DBPath: "data/SetuTime/SetuTime.db"}, Path: "data/SetuTime/cache/", Group: 0, List: []string{"涩图", "二次元", "风景", "车万"}, // 可以自己加类别,得自己加图片进数据库 @@ -106,7 +107,7 @@ func init() { // 插件主体 var imgtype = ctx.State["regex_matched"].([]string)[1] // 补充池子 go func() { - times := data.Min(pool.Max-pool.size(imgtype), 2) + times := math.Min(pool.Max-pool.size(imgtype), 2) for i := 0; i < times; i++ { illust := &pixiv.Illust{} // 查询出一张图片 diff --git a/data/dl.go b/utils/dl/dl.go similarity index 86% rename from data/dl.go rename to utils/dl/dl.go index 69fb606e..dcc3bea6 100644 --- a/data/dl.go +++ b/utils/dl/dl.go @@ -1,4 +1,5 @@ -package data +// Package dl 下载实用工具 +package dl import ( "io" diff --git a/data/math.go b/utils/math/math.go similarity index 82% rename from data/math.go rename to utils/math/math.go index 0ebb92aa..e364456e 100644 --- a/data/math.go +++ b/utils/math/math.go @@ -1,4 +1,5 @@ -package data +// Package math 计算实用工具 +package math // min 返回两数最大值,该函数将被内联 func Max(a, b int) int { diff --git a/data/sqlite.go b/utils/sql/sqlite.go similarity index 98% rename from data/sqlite.go rename to utils/sql/sqlite.go index c0009db2..a8fcd2b3 100644 --- a/data/sqlite.go +++ b/utils/sql/sqlite.go @@ -1,5 +1,5 @@ -// Package data 数据库/数据处理相关工具 -package data +// Package sql 数据库/数据处理相关工具 +package sql import ( "database/sql"