Compare commits

..

No commits in common. "6a9c97c77c8e79723a1726db0d0ded6356e8caa9" and "995a9e010abad552b57f97a7e5275452b3287235" have entirely different histories.

5 changed files with 12 additions and 31 deletions

View File

@ -41,6 +41,8 @@ func init() {
if err = svc.InsertLotteryLogs(log.Platform, log); err != nil { if err = svc.InsertLotteryLogs(log.Platform, log); err != nil {
logger.Logger.Errorf("InsertLotteryLogs error: %v", err) logger.Logger.Errorf("InsertLotteryLogs error: %v", err)
} }
mq.Write(&model.LotteryLog{Platform: log.Platform}, mq.RankLotteryLog)
return return
}, },
}) })

View File

@ -69,8 +69,7 @@ func GetLotteryLogs(plt string, count int) (ret []*model.LotteryLog, err error)
if clog == nil { if clog == nil {
return nil, LotteryLogDBErr return nil, LotteryLogDBErr
} }
now := time.Now().Unix() err = clog.Find(bson.M{"ts": bson.M{"$lt": time.Now().Unix()}}).Sort("-ts").Limit(count).All(&ret)
err = clog.Find(bson.M{"ts": bson.M{"$lt": now}}).Sort("-ts").Limit(count).All(&ret)
if err != nil && !errors.Is(err, mgo.ErrNotFound) { if err != nil && !errors.Is(err, mgo.ErrNotFound) {
return nil, err return nil, err
} }

View File

@ -446,9 +446,6 @@ func (this *SceneStateStartFortuneDragon) OnPlayerOp(s *base.Scene, p *base.Play
} else { } else {
logger.Logger.Error("slots Play err:", err) logger.Logger.Error("slots Play err:", err)
} }
playerEx.SlotsSession.SetCoin(int64(data.FinalCoin) * fortunedragon.NowByte)
pack := &protocol.SCFortuneDragonBilled{ pack := &protocol.SCFortuneDragonBilled{
OpRetCode: proto.Int32(0), OpRetCode: proto.Int32(0),
GameEndStr: proto.String(gameEndStr), GameEndStr: proto.String(gameEndStr),

View File

@ -391,7 +391,6 @@ func (this *SceneStateStartFortuneRabbit) OnPlayerOp(s *base.Scene, p *base.Play
} }
//playerEx.SlotsSession.SetCoin(playerEx.Coin * fortunerabbit.NowByte) //playerEx.SlotsSession.SetCoin(playerEx.Coin * fortunerabbit.NowByte)
//logger.Logger.Trace("=============init dif coin", playerEx.Coin-playerEx.SlotsSession.Coin()/fortunerabbit.NowByte)
//get data //get data
Response, err := slots.SlotsMgrSington.Play(playerEx.SlotsSession, &base.SpinReq{ Response, err := slots.SlotsMgrSington.Play(playerEx.SlotsSession, &base.SpinReq{
@ -408,10 +407,8 @@ func (this *SceneStateStartFortuneRabbit) OnPlayerOp(s *base.Scene, p *base.Play
data = assemble.DataToCli(Response).(assemble.GameEnd) data = assemble.DataToCli(Response).(assemble.GameEnd)
if data.Results[0].FreeStatus == 1 || data.Results[0].FreeNumMax == 0 { if data.Results[0].FreeStatus == 1 || data.Results[0].FreeNumMax == 0 {
//第一次触发或者正常模式 //第一次触发或者正常模式
//logger.Logger.Trace("=============addcoin1111 ", -data.TotalBet)
playerEx.AddCoin(int64(-data.TotalBet), common.GainWay_HundredSceneLost, base.SyncFlag_ToClient, "system", s.GetSceneName()) playerEx.AddCoin(int64(-data.TotalBet), common.GainWay_HundredSceneLost, base.SyncFlag_ToClient, "system", s.GetSceneName())
playerEx.totalBet = int64(data.TotalBet) playerEx.totalBet = int64(data.TotalBet)
//logger.Logger.Trace("=======bet======dif++++ ", float64(playerEx.Coin)-data.BetAfterCoin)
} }
var taxCoin float64 var taxCoin float64
if data.RoundReward > 0 { if data.RoundReward > 0 {
@ -430,9 +427,7 @@ func (this *SceneStateStartFortuneRabbit) OnPlayerOp(s *base.Scene, p *base.Play
gameEndStr = string(pi) gameEndStr = string(pi)
if data.Results[0].FreeStatus == 3 || data.Results[0].FreeNumMax == 0 { if data.Results[0].FreeStatus == 3 || data.Results[0].FreeNumMax == 0 {
//logger.Logger.Trace("===win==========addcoin222 ", data.RoundReward)
playerEx.AddCoin(int64(data.RoundReward), common.GainWay_HundredSceneWin, 0, "system", s.GetSceneName()) playerEx.AddCoin(int64(data.RoundReward), common.GainWay_HundredSceneWin, 0, "system", s.GetSceneName())
//logger.Logger.Trace("=======win======dif++++ ", float64(playerEx.Coin)-data.FinalCoin)
//免费游戏结束或者正常模式 //免费游戏结束或者正常模式
sceneEx.StaticsLaba(&base.StaticLabaParam{ sceneEx.StaticsLaba(&base.StaticLabaParam{
SnId: playerEx.SnId, SnId: playerEx.SnId,
@ -455,13 +450,8 @@ func (this *SceneStateStartFortuneRabbit) OnPlayerOp(s *base.Scene, p *base.Play
} else { } else {
logger.Logger.Error("slots Play err:", err) logger.Logger.Error("slots Play err:", err)
} }
playerEx.SlotsSession.SetCoin(int64(data.FinalCoin) * fortunerabbit.NowByte)
//logger.Logger.Trace("======end=======init dif coin", playerEx.Coin-playerEx.SlotsSession.Coin()/fortunerabbit.NowByte)
if playerEx.Coin != int64(data.FinalCoin) { if playerEx.Coin != int64(data.FinalCoin) {
logger.Logger.Error("==========playerEx.Coin != data.FinalCoin==============", (float64(playerEx.Coin)-data.FinalCoin)/10000) logger.Logger.Error("==========playerEx.Coin != Response.Coin==============", playerEx.Coin, data.FinalCoin)
} }
pack := &protocol.SCFortuneRabbitBilled{ pack := &protocol.SCFortuneRabbitBilled{
OpRetCode: proto.Int32(0), OpRetCode: proto.Int32(0),

View File

@ -104,7 +104,6 @@ func (l *LotteryData) Reset() {
l.CostCard = 0 l.CostCard = 0
l.RobotCodeCount = 0 l.RobotCodeCount = 0
l.PlayerNum = 0 l.PlayerNum = 0
logger.Logger.Tracef("LotteryData Reset: %v", l.CId)
} }
// GetCode 获取抽奖码 // GetCode 获取抽奖码
@ -144,8 +143,8 @@ func (l *LotteryData) GetRemainCode() int {
} }
// 发奖 // 发奖
func (l *LotteryData) sendAward(must bool) { func (l *LotteryData) sendAward() {
if l.isDone || !must { if l.isDone {
return return
} }
@ -154,7 +153,6 @@ func (l *LotteryData) sendAward(must bool) {
return return
} }
l.IsSend = true l.IsSend = true
mq.Write(&model.LotteryLog{Platform: l.Platform}, mq.RankLotteryLog)
var lotteryAward []*welfare.PropInfo var lotteryAward []*welfare.PropInfo
for _, v := range l.Reward { for _, v := range l.Reward {
@ -220,7 +218,6 @@ func (l *LotteryData) Done() {
return return
} }
l.isDone = true l.isDone = true
logger.Logger.Tracef("LotteryData Done1: cid:%v wincode:%v snid:%v", l.CId, l.WinCode, l.SnId)
now := time.Now() now := time.Now()
if l.EndTs <= 0 || l.EndTs >= now.Unix() || l.SnId > 0 || now.Unix()-l.EndTs > 5*60 { if l.EndTs <= 0 || l.EndTs >= now.Unix() || l.SnId > 0 || now.Unix()-l.EndTs > 5*60 {
@ -418,12 +415,11 @@ func (l *LotteryData) Done() {
Ts: l.WinTs, Ts: l.WinTs,
} }
mq.Write(lotteryLog) mq.Write(lotteryLog)
logger.Logger.Tracef("LotteryData 抽奖中奖记录: %+v %p", *lotteryLog, l) logger.Logger.Tracef("LotteryData 抽奖中奖记录: %+v", *lotteryLog)
logger.Logger.Tracef("LotteryData Done2: cid:%v wincode:%v snid:%v", l.CId, l.WinCode, l.SnId)
// 开始发奖 // 开始发奖
l.sendAward(true) l.sendAward()
} }
})).StartByExecutor(fmt.Sprintf("LotterySendAward_%s_%d", l.Platform, l.CId)) }), "LotterySendAward").Start()
} }
type LotteryConfig struct { type LotteryConfig struct {
@ -467,9 +463,8 @@ func (l *LotteryMgr) Init() {
} }
func (l *LotteryMgr) Update() { func (l *LotteryMgr) Update() {
for i := range l.Data { for _, v := range l.Data {
for k := range l.Data[i] { for _, d := range v {
d := l.Data[i][k]
if d == nil { if d == nil {
continue continue
} }
@ -480,11 +475,9 @@ func (l *LotteryMgr) Update() {
// 随机给机器人发放抽奖码 // 随机给机器人发放抽奖码
d.sendRobotCode(1, 5) d.sendRobotCode(1, 5)
// 活动结束,开始抽奖 // 活动结束,开始抽奖
logger.Logger.Tracef("Done1 cid:%v wincode:%v %p", d.CId, d.WinCode, d)
d.Done() d.Done()
logger.Logger.Tracef("Done2 cid:%v wincode:%v %p", d.CId, d.WinCode, d)
// 开始发奖 // 开始发奖
d.sendAward(false) d.sendAward()
} }
} }
} }