From 58f0f982621b332ec2f0d742fd0171fec3e38340 Mon Sep 17 00:00:00 2001 From: xinian Date: Fri, 27 Mar 2026 18:02:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=89=AD=E8=9B=8B?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E6=A3=80=E6=9F=A5=E9=80=BB=E8=BE=91=E9=94=99?= =?UTF-8?q?=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/player/controller/robot/egg.go | 78 +++++++++++++------------- 1 file changed, 38 insertions(+), 40 deletions(-) diff --git a/modules/player/controller/robot/egg.go b/modules/player/controller/robot/egg.go index 47c3ecc2f..38ae47f3b 100644 --- a/modules/player/controller/robot/egg.go +++ b/modules/player/controller/robot/egg.go @@ -19,51 +19,49 @@ func init() { Handle(func(ctx *zero.Ctx) { msgs := strings.Fields(ctx.Event.Message.String()) - count := 1 + if len(msgs) > 1 { - count = gconv.Int(msgs[1]) - } else { - ctx.Send("参数错误") - } - if count > 10 { - count = 10 - } - user := base.NewBaseSysUserService().GetQQ(ctx.Event.Sender.ID) - if user == nil { - ctx.Send("未绑定,请个人中心复制token发给机器人") - return - } - itemservice := service.NewItemService(uint32(user.ID)) - havs := itemservice.CheakItem(400501) - if havs < int64(count) { - ctx.Send("扭蛋币不足,当前扭蛋币数量:" + gconv.String(havs)) - return - } - var buf strings.Builder - buf.WriteString("当前扭蛋币数量:" + gconv.String(havs)) - if grand.Meet(int(count), 100) { - r := config.NewPetRewardService().GetEgg() - newPet := model.GenPetInfo(int(r.MonID), int(r.DV), int(r.Nature), int(r.Effect), int(r.Lv), nil, 0) - if grand.Meet(1, 500) { - newPet.RandomByWeightShiny() + count := gconv.Int(msgs[1]) + if count > 10 { + count = 10 } - service.NewPetService(uint32(user.ID)).PetAdd(newPet, 0) - buf.WriteString("恭喜你获得" + xmlres.PetMAP[int(newPet.ID)].DefName + "\n") + user := base.NewBaseSysUserService().GetQQ(ctx.Event.Sender.ID) + if user == nil { + ctx.Send("未绑定,请个人中心复制token发给机器人") + return + } + itemservice := service.NewItemService(uint32(user.ID)) + havs := itemservice.CheakItem(400501) + if havs < int64(count) { + ctx.Send("扭蛋币不足,当前扭蛋币数量:" + gconv.String(havs)) + return + } + var buf strings.Builder + buf.WriteString("当前扭蛋币数量:" + gconv.String(havs)) + if grand.Meet(int(count), 100) { + r := config.NewPetRewardService().GetEgg() + newPet := model.GenPetInfo(int(r.MonID), int(r.DV), int(r.Nature), int(r.Effect), int(r.Lv), nil, 0) + if grand.Meet(1, 500) { + newPet.RandomByWeightShiny() + } + service.NewPetService(uint32(user.ID)).PetAdd(newPet, 0) + buf.WriteString("恭喜你获得" + xmlres.PetMAP[int(newPet.ID)].DefName + "\n") + } + + items := config.NewItemService().GetEgg(int(count)) + + for _, item := range items { + + itemservice.UPDATE(uint32(item.ItemId), int(item.ItemCnt)) + buf.WriteString("恭喜你获得" + xmlres.ItemsMAP[int(item.ItemId)].Name + ":" + gconv.String(item.ItemCnt) + "\n") + } + + itemservice.UPDATE(400501, int(-count)) + + ctx.SendChain(message.At(ctx.Event.Sender.ID), message.Reply(ctx.Event.MessageID), message.Text(buf.String())) } - items := config.NewItemService().GetEgg(int(count)) - - for _, item := range items { - - itemservice.UPDATE(uint32(item.ItemId), int(item.ItemCnt)) - buf.WriteString("恭喜你获得" + xmlres.ItemsMAP[int(item.ItemId)].Name + ":" + gconv.String(item.ItemCnt) + "\n") - } - - itemservice.UPDATE(400501, int(-count)) - - ctx.SendChain(message.At(ctx.Event.Sender.ID), message.Reply(ctx.Event.MessageID), message.Text(buf.String())) - }) }