Compare commits

...

2 Commits

Author SHA1 Message Date
sk 6265822463 fix 推币机奖池抽奖 2025-01-18 15:03:37 +08:00
sk 532c7574ad no message 2025-01-18 14:30:11 +08:00
1 changed files with 16 additions and 9 deletions

View File

@ -510,7 +510,7 @@ func PushCoinDraw(p *Player) {
p.WelfData.PushCoin.PoolV[i] = poolInfo.Version p.WelfData.PushCoin.PoolV[i] = poolInfo.Version
// 下次中奖位置 // 下次中奖位置
p.WelfData.PushCoin.Next = int32(PoolIndex[i]) p.WelfData.PushCoin.Next = int32(PoolIndex[i])
logger.Logger.Tracef("下次中奖池:%v", p.WelfData.PushCoin) logger.Logger.Tracef("下次中奖池:%+v", p.WelfData.PushCoin)
return true return true
} }
} }
@ -562,7 +562,7 @@ func PushCoinDraw(p *Player) {
if i < len(list) { if i < len(list) {
for _, v := range list[i].GetAward() { for _, v := range list[i].GetAward() {
draw = &activity.DrawInfo{ draw = &activity.DrawInfo{
Id: p.WelfData.PushCoin.Next, Id: k,
ItemId: v.GetItemId(), ItemId: v.GetItemId(),
ItemNum: v.GetItemNum(), ItemNum: v.GetItemNum(),
} }
@ -582,7 +582,7 @@ func PushCoinDraw(p *Player) {
ItemId: v.GetItemId(), ItemId: v.GetItemId(),
ItemNum: v.GetItemNum(), ItemNum: v.GetItemNum(),
}) })
logger.Logger.Tracef("刷新奖池奖品:%v", draw) logger.Logger.Tracef("刷新奖池奖品:%v", draw1)
break break
} }
} else { } else {
@ -620,6 +620,11 @@ func PushCoinDraw(p *Player) {
break break
} }
} }
if has && index == int(curIndex) {
// 重复
has = false
}
if !has { if !has {
// 替换 // 替换
if slices.Contains(PoolIndex, index) { if slices.Contains(PoolIndex, index) {
@ -633,12 +638,14 @@ func PushCoinDraw(p *Player) {
}) })
p.WelfData.PushCoin.Turn[index] = e.GetId() p.WelfData.PushCoin.Turn[index] = e.GetId()
} else { } else {
p.WelfData.PushCoin.Turn[curIndex] = e1.GetId() if !slices.Contains(PoolIndex, int(curIndex)) {
draw1 = append(draw1, &activity.DrawInfo{ p.WelfData.PushCoin.Turn[curIndex] = e1.GetId()
Id: curIndex, draw1 = append(draw1, &activity.DrawInfo{
ItemId: e1.GetItemId(), Id: curIndex,
ItemNum: e1.GetItemNum(), ItemId: e1.GetItemId(),
}) ItemNum: e1.GetItemNum(),
})
}
} }
p.WelfData.PushCoin.Next = int32(index) p.WelfData.PushCoin.Next = int32(index)
logger.Logger.Tracef("下次中普通奖品index:%v ItemId:%v Num:%v", index, e.GetItemId(), e.GetItemNum()) logger.Logger.Tracef("下次中普通奖品index:%v ItemId:%v Num:%v", index, e.GetItemId(), e.GetItemNum())