diff --git a/go.mod b/go.mod index 82e5c91946..3f6d622fdb 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,7 @@ go 1.20 require ( github.com/Baidu-AIP/golang-sdk v1.1.1 - github.com/FloatTech/AnimeAPI v1.7.1-0.20241106152938-2a63f2f5f8ce + github.com/FloatTech/AnimeAPI v1.7.1-0.20250112071824-df647215d106 github.com/FloatTech/floatbox v0.0.0-20241106130736-5aea0a935024 github.com/FloatTech/gg v1.1.3 github.com/FloatTech/imgfactory v0.2.2-0.20230413152719-e101cc3606ef diff --git a/go.sum b/go.sum index 6c3888e2e7..3af89c1a0d 100644 --- a/go.sum +++ b/go.sum @@ -1,8 +1,8 @@ github.com/Baidu-AIP/golang-sdk v1.1.1 h1:RQsAmgDSAkiq22I6n7XJ2t3afgzFeqjY46FGhvrx4cw= github.com/Baidu-AIP/golang-sdk v1.1.1/go.mod h1:bXnGw7xPeKt8aF7UCELKrV6UZ/46spItONK1RQBQj1Y= github.com/DATA-DOG/go-sqlmock v1.3.3/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= -github.com/FloatTech/AnimeAPI v1.7.1-0.20241106152938-2a63f2f5f8ce h1:qdCHsbiClRabCgaqlnpnwzgCZhJLzc5jxhRgpNbe4Uc= -github.com/FloatTech/AnimeAPI v1.7.1-0.20241106152938-2a63f2f5f8ce/go.mod h1:PLvoLJU+v3/44UXtixfcjVrnXeK4H9m9cRCsmXA4+l8= +github.com/FloatTech/AnimeAPI v1.7.1-0.20250112071824-df647215d106 h1:dRIAtylFQjHRB6jaisinjkSc3VCdMAHEuJQ66sWxndc= +github.com/FloatTech/AnimeAPI v1.7.1-0.20250112071824-df647215d106/go.mod h1:PLvoLJU+v3/44UXtixfcjVrnXeK4H9m9cRCsmXA4+l8= github.com/FloatTech/floatbox v0.0.0-20241106130736-5aea0a935024 h1:mrvWpiwfRklt9AyiQjKgDGJjf4YL6FZ3yC+ydbkuF2o= github.com/FloatTech/floatbox v0.0.0-20241106130736-5aea0a935024/go.mod h1:+P3hs+Cvl10/Aj3SNE96TuBvKAXCe+XD1pKphTZyiwk= github.com/FloatTech/gg v1.1.3 h1:+GlL02lTKsxJQr4WCuNwVxC1/eBZrCvypCIBtxuOFb4= diff --git a/gomod2nix.toml b/gomod2nix.toml index 1fdcd950b8..b48c2fc287 100644 --- a/gomod2nix.toml +++ b/gomod2nix.toml @@ -5,8 +5,8 @@ schema = 3 version = "v1.1.1" hash = "sha256-hKshA0K92bKuK92mmtM0osVmqLJcSbeobeWSDpQoRCo=" [mod."github.com/FloatTech/AnimeAPI"] - version = "v1.7.1-0.20241106152938-2a63f2f5f8ce" - hash = "sha256-gLgM4mnofQmcqE1ylHa06Eh3czMkJ10nCfsnu4Cyxas=" + version = "v1.7.1-0.20250112071824-df647215d106" + hash = "sha256-z2g+JVlY+X8zEPMNuqJx3A/+Eu1FDFtbh/3jdkPPDrs=" [mod."github.com/FloatTech/floatbox"] version = "v0.0.0-20241106130736-5aea0a935024" hash = "sha256-hSKmkzpNZwXRo0qm4G+1lXkNzWMwV9leYlYLQuzWx3M=" diff --git a/plugin/mcfish/main.go b/plugin/mcfish/main.go index 1b8d6a7887..85a82a46a8 100644 --- a/plugin/mcfish/main.go +++ b/plugin/mcfish/main.go @@ -29,7 +29,7 @@ type fishdb struct { const FishLimit = 50 // version 规则版本号 -const version = "5.6.0" +const version = "5.6.1" // 各物品信息 type jsonInfo struct { @@ -129,26 +129,20 @@ var ( engine = control.AutoRegister(&ctrl.Options[*zero.Ctx]{ DisableOnDefault: false, Brief: "钓鱼", - Help: "一款钓鱼模拟器\n----------指令----------\n" + - "- 钓鱼看板/钓鱼商店\n- 购买xxx\n- 购买xxx [数量]\n- 出售xxx\n- 出售xxx [数量]\n- 出售所有垃圾\n" + - "- 钓鱼背包\n- 装备[xx竿|三叉戟|美西螈]\n- 附魔[诱钓|海之眷顾]\n- 修复鱼竿\n- 合成[xx竿|三叉戟]\n- 消除[绑定|宝藏]诅咒\n- 消除[绑定|宝藏]诅咒 [数量]\n" + - "- 进行钓鱼\n- 进行n次钓鱼\n- 当前装备概率明细\n" + - "规则V" + version + ":\n" + - "1.每日的商店价格是波动的!!如何最大化收益自己考虑一下喔\n" + - "2.装备信息:\n-> 木竿 : 耐久上限:30 均价:100 上钩概率:0.7%\n-> 铁竿 : 耐久上限:50 均价:300 上钩概率:0.2%\n-> 金竿 : 耐久上限:70 均价700 上钩概率:0.06%\n" + - "-> 钻石竿 : 耐久上限:100 均价1500 上钩概率:0.03%\n-> 下界合金竿 : 耐久上限:150 均价3100 上钩概率:0.01%\n-> 三叉戟 : 可使1次钓鱼视为3次钓鱼. 耐久上限:300 均价4000 只能合成、修复和交易\n" + - "3.附魔书信息:\n-> 诱钓 : 减少上钩时间. 均价:1000, 上钩概率:0.25%\n-> 海之眷顾 : 增加宝藏上钩概率. 均价:2500, 上钩概率:0.10%\n" + - "4.稀有物品:\n-> 唱片 : 出售物品时使用该物品使价格翻倍. 均价:3000, 上钩概率:0.01%\n" + - "-> 美西螈 : 可装备,获得隐形[钓鱼佬]buff,并让钓到除鱼竿和美西螈外的物品数量变成5,无耐久上限.不可修复/附魔,每次钓鱼消耗3条鱼. 均价:3000, 上钩概率:0.01%\n" + - "-> 海豚 : 使空竿概率变成垃圾概率. 均价:1000, 上钩概率:0.19%\n" + - "-> 宝藏诅咒 : 无法交易,每一层就会增加购买时10%价格和减少出售时10%价格(超过10层会变为倒贴钱). 上钩概率:0.25%\n-> 净化书 : 用于消除宝藏诅咒. 均价:5000, 上钩概率:0.19%\n" + - "5.鱼类信息:\n-> 鳕鱼 : 均价:10 上钩概率:0.69%\n-> 鲑鱼 : 均价:50 上钩概率:0.2%\n-> 热带鱼 : 均价:100 上钩概率:0.06%\n-> 河豚 : 均价:300 上钩概率:0.03%\n-> 鹦鹉螺 : 均价:500 上钩概率:0.01%\n-> 墨鱼 : 均价:500 上钩概率:0.01%\n" + - "6.垃圾:\n-> 均价:10 上钩概率:30%\n" + - "7.物品BUFF:\n-> 钓鱼佬 : 当背包名字含有'鱼'的物品数量超过100时激活,钓到物品概率提高至90%\n-> 修复大师 : 当背包鱼竿数量超过10时激活,修复物品时耐久百分百继承\n" + - "8.合成:\n-> 铁竿 : 3x木竿\n-> 金竿 : 3x铁竿\n-> 钻石竿 : 3x金竿\n-> 下界合金竿 : 3x钻石竿\n-> 三叉戟 : 3x下界合金竿\n注:合成成功率90%(包括梭哈),合成鱼竿的附魔等级=(附魔等级合/合成鱼竿数量)\n" + - "9.杂项:\n-> 无装备的情况下,每人最多可以购买3次100块钱的鱼竿\n-> 默认状态钓鱼上钩概率为60%(理论值!!!)\n-> 附魔的鱼竿会因附魔变得昂贵,每个附魔最高3级\n-> 三叉戟不算鱼竿,修复时可直接满耐久\n" + - "-> 鱼竿数量大于50的不能买东西;\n 鱼竿数量大于30的不能钓鱼;\n 每购/售10次鱼竿获得1层宝藏诅咒;\n 每购买20次物品将获得3次价格减半福利;\n 每钓鱼75次获得1本净化书;\n" + - " 每天可交易鱼竿10个,物品150件(垃圾除外).", + Help: "一款钓鱼模拟器,规则:V" + version + + "\n----------指令----------\n" + + "- 钓鱼背包\n" + + "- 进行钓鱼 / 进行n次钓鱼\n" + + "- 修复鱼竿\n" + + "- 钓鱼商店 / 钓鱼看板\n" + + "- 购买xxx / 购买xxx [数量]\n- 出售xxx / 出售xxx [数量]\n" + + "- 消除[绑定|宝藏]诅咒 / 消除[绑定|宝藏]诅咒 [数量]\n" + + "- 装备[xx竿|三叉戟|美西螈]\n" + + "- 附魔[诱钓|海之眷顾]\n" + + "- 合成[xx竿|三叉戟]\n" + + "- 出售所有垃圾\n" + + "- 当前装备概率明细\n" + + "- 查看钓鱼规则\n", PublicDataFolder: "McFish", }).ApplySingle(ctxext.DefaultSingle) getdb = fcext.DoOnceOnSuccess(func(ctx *zero.Ctx) bool { @@ -796,7 +790,7 @@ func (sql *fishdb) checkCanSalesFor(uid int64, saleName string, salesNum int) (i salesNum = -1 } } else if !checkIsWaste(saleName) { - maxSales := 150 - userInfo.BuyTing + maxSales := 30 - userInfo.BuyTing if maxSales < 0 { salesNum = 0 } diff --git a/plugin/mcfish/pack.go b/plugin/mcfish/pack.go index c873e391f3..f1d7162b01 100644 --- a/plugin/mcfish/pack.go +++ b/plugin/mcfish/pack.go @@ -171,6 +171,31 @@ func init() { msg = append(msg, message.Text("-----------")) ctx.Send(msg) }) + engine.OnFullMatch("查看钓鱼规则", getdb).SetBlock(true).Limit(ctxext.LimitByUser).Handle(func(ctx *zero.Ctx) { + msg := "一款钓鱼模拟器\n----------指令----------\n" + + "- 钓鱼看板/钓鱼商店\n- 购买xxx\n- 购买xxx [数量]\n- 出售xxx\n- 出售xxx [数量]\n- 出售所有垃圾\n" + + "- 钓鱼背包\n- 装备[xx竿|三叉戟|美西螈]\n- 附魔[诱钓|海之眷顾]\n- 修复鱼竿\n- 合成[xx竿|三叉戟]\n- 消除[绑定|宝藏]诅咒\n- 消除[绑定|宝藏]诅咒 [数量]\n" + + "- 进行钓鱼\n- 进行n次钓鱼\n- " + + "当前装备概率明细\n" + + "规则V" + version + ":\n" + + "1.每日的商店价格是波动的!!如何最大化收益自己考虑一下喔\n" + + "2.装备信息:\n-> 木竿 : 耐久上限:30 均价:100 上钩概率:0.7%\n-> 铁竿 : 耐久上限:50 均价:300 上钩概率:0.2%\n-> 金竿 : 耐久上限:70 均价700 上钩概率:0.06%\n" + + "-> 钻石竿 : 耐久上限:100 均价1500 上钩概率:0.03%\n-> 下界合金竿 : 耐久上限:150 均价3100 上钩概率:0.01%\n-> 三叉戟 : 可使1次钓鱼视为3次钓鱼. 耐久上限:300 均价4000 只能合成、修复和交易\n" + + "3.附魔书信息:\n-> 诱钓 : 减少上钩时间. 均价:1000, 上钩概率:0.25%\n-> 海之眷顾 : 增加宝藏上钩概率. 均价:2500, 上钩概率:0.10%\n" + + "4.稀有物品:\n-> 唱片 : 出售物品时使用该物品使价格翻倍. 均价:3000, 上钩概率:0.01%\n" + + "-> 美西螈 : 可装备,获得隐形[钓鱼佬]buff,并让钓到除鱼竿和美西螈外的物品数量变成5,无耐久上限.不可修复/附魔,每次钓鱼消耗3条鱼. 均价:3000, 上钩概率:0.01%\n" + + "-> 海豚 : 使空竿概率变成垃圾概率. 均价:1000, 上钩概率:0.19%\n" + + "-> 宝藏诅咒 : 无法交易,每一层就会增加购买时10%价格和减少出售时10%价格(超过10层会变为倒贴钱). 上钩概率:0.25%\n-> 净化书 : 用于消除宝藏诅咒. 均价:5000, 上钩概率:0.19%\n" + + "5.鱼类信息:\n-> 鳕鱼 : 均价:10 上钩概率:0.69%\n-> 鲑鱼 : 均价:50 上钩概率:0.2%\n-> 热带鱼 : 均价:100 上钩概率:0.06%\n-> 河豚 : 均价:300 上钩概率:0.03%\n-> 鹦鹉螺 : 均价:500 上钩概率:0.01%\n-> 墨鱼 : 均价:500 上钩概率:0.01%\n" + + "6.垃圾:\n-> 均价:10 上钩概率:30%\n" + + "7.物品BUFF:\n-> 钓鱼佬 : 当背包名字含有'鱼'的物品数量超过100时激活,钓到物品概率提高至90%\n-> 修复大师 : 当背包鱼竿数量超过10时激活,修复物品时耐久百分百继承\n" + + "8.合成:\n-> 铁竿 : 3x木竿\n-> 金竿 : 3x铁竿\n-> 钻石竿 : 3x金竿\n-> 下界合金竿 : 3x钻石竿\n-> 三叉戟 : 3x下界合金竿\n注:合成成功率90%(包括梭哈),合成鱼竿的附魔等级=(附魔等级合/合成鱼竿数量)\n" + + "9.杂项:\n-> 无装备的情况下,每人最多可以购买3次100块钱的鱼竿\n-> 默认状态钓鱼上钩概率为60%(理论值!!!)\n-> 附魔的鱼竿会因附魔变得昂贵,每个附魔最高3级\n-> 三叉戟不算鱼竿,修复时可直接满耐久\n" + + "-> 鱼竿数量大于50的不能买东西;\n 鱼竿数量大于30的不能钓鱼;\n 每购/售10次鱼竿获得1层宝藏诅咒;\n 每购买20次物品将获得3次价格减半福利;\n 每钓鱼75次获得1本净化书;\n" + + " 每天可交易鱼竿10个,购买物品30件(垃圾除外)." + + ctx.Send(msg) + }) } func drawPackImage(uid int64, equipInfo equip, articles []article) (imagePicByte []byte, err error) { diff --git a/plugin/mcfish/store.go b/plugin/mcfish/store.go index 752331008d..0878ea5f5c 100644 --- a/plugin/mcfish/store.go +++ b/plugin/mcfish/store.go @@ -76,20 +76,16 @@ func init() { } // 检测物品交易次数 - number, err := dbdata.checkCanSalesFor(uid, thingName, number) - if err != nil { - ctx.SendChain(message.Text("[ERROR at store.go.75]:", err)) - return - } - if number <= 0 { - var msg string - if strings.Contains(thingName, "竿") { - msg = "一天只能交易10把鱼竿,明天再来售卖吧" - } else { - msg = "一天只能交易150次物品(垃圾除外),明天再来吧~" + if strings.Contains(thingName, "竿") { + number, err := dbdata.checkCanSalesFor(uid, thingName, number) + if err != nil { + ctx.SendChain(message.Text("[ERROR,查询购买资质失败]:", err)) + return + } + if number <= 0 { + ctx.SendChain(message.Text("一天只能交易10把鱼竿,明天再来售卖吧")) + return } - ctx.SendChain(message.Text(msg)) - return } articles, err := dbdata.getUserThingInfo(uid, thingName) @@ -424,9 +420,9 @@ func init() { if number <= 0 { var msg string if strings.Contains(thingName, "竿") { - msg = "一天只能交易10把鱼竿,明天再来售卖吧" + msg = "一天只能交易10把鱼竿,明天再来购买吧" } else { - msg = "一天只能交易150次物品,明天再来吧~" + msg = "一天只能购买30次物品,明天再来吧~" } ctx.SendChain(message.Text(msg)) return