From 36cbb5bf8109c57108579156e9930b2c07f68443 Mon Sep 17 00:00:00 2001 From: xinian Date: Mon, 23 Feb 2026 04:07:23 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=B8=BA=E6=80=AA=E7=89=A9=E7=94=9F?= =?UTF-8?q?=E6=88=90=E5=92=8C=E5=AE=A0=E7=89=A9=E4=BF=A1=E6=81=AF=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E9=9A=8F=E6=9C=BA=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- logic/service/player/Monster.go | 4 ++-- logic/service/player/player.go | 10 ++++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/logic/service/player/Monster.go b/logic/service/player/Monster.go index 57388960..90191e43 100644 --- a/logic/service/player/Monster.go +++ b/logic/service/player/Monster.go @@ -46,7 +46,7 @@ func (p *Player) GenMonster() { mapss, ok := xmlres.MonsterMap[gconv.Int(p.Info.MapID)] if ok && mapss.Monsters != nil { - ok := grand.Meet(3, 10) + for i, m := range mapss.Monsters.Monsters { //这里是9个 _, rok := lo.Find(replce, func(it int) bool { @@ -90,7 +90,7 @@ func (p *Player) GenMonster() { } } - if ok && len(mapinfo.DropItemIds) > 0 { + if grand.Meet(3, 10) && len(mapinfo.DropItemIds) > 0 { p.OgreInfo.Data[i].Item = append(p.OgreInfo.Data[i].Item, int64(mapinfo.DropItemIds[grand.Intn(len(mapinfo.DropItemIds))])) diff --git a/logic/service/player/player.go b/logic/service/player/player.go index 34102673..2bfea14d 100644 --- a/logic/service/player/player.go +++ b/logic/service/player/player.go @@ -21,6 +21,7 @@ import ( "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/util/gconv" + "github.com/gogf/gf/v2/util/grand" csmap "github.com/mhmtszr/concurrent-swiss-map" "github.com/panjf2000/gnet/v2" ) @@ -46,7 +47,10 @@ func (o *OgrePetInfo) FixSHiny() { if co != nil && len(o.ShinyInfo) == 0 { o.ShinyInfo = append(o.ShinyInfo, *co) - o.Item = append(o.Item, 400686+int64(xmlres.PetMAP[int(o.ID)].Type)) + if grand.Meet(1, 2) { + o.Item = append(o.Item, 400686+int64(xmlres.PetMAP[int(o.ID)].Type)) + } + } } @@ -59,7 +63,9 @@ func (o *OgrePetInfo) RandomByWeightShiny() { if co != nil && len(o.ShinyInfo) == 0 { o.ShinyInfo = append(o.ShinyInfo, *co) - o.Item = append(o.Item, 400686+int64(xmlres.PetMAP[int(o.ID)].Type)) + if grand.Meet(1, 2) { + o.Item = append(o.Item, 400686+int64(xmlres.PetMAP[int(o.ID)].Type)) + } } }