拉霸缓存游戏记录

This commit is contained in:
sk 2024-12-09 16:51:53 +08:00
parent b342e0ad61
commit 779d8a64a4
1 changed files with 25 additions and 5 deletions

View File

@ -223,10 +223,11 @@ func (s *SaveGameDetailedCopy) Save() {
}
}
// LabaLog 拉霸缓存游戏记录
// LabaLog 拉霸缓存游戏记录,为了统计游戏时长
type LabaLog struct {
PlayerListLog *SaveGamePlayerListLogCopy
GameDetailLog *SaveGameDetailedCopy
CacheTime time.Time // 缓存时间
}
// Cache 临时缓存
@ -238,13 +239,31 @@ func (l *LabaLog) Cache(s *Scene, detailLog *SaveGameDetailedParam, playerListLo
playerListLog.OnlyLog = true
l.GameDetailLog = s.SaveGameDetailedLog(detailLog)
l.PlayerListLog = s.SaveGamePlayerListLog(playerListLog)
l.CacheTime = time.Now()
}
// Save 保存
func (l *LabaLog) Save(f func(log *LabaLog)) {
f(l)
l.PlayerListLog.Save()
l.GameDetailLog.Save()
func (l *LabaLog) Save(second int32) {
if second <= 0 {
second = int32(time.Now().Sub(l.CacheTime).Seconds())
}
if l.PlayerListLog != nil {
if l.PlayerListLog.UpLog != nil {
for _, v := range l.PlayerListLog.UpLog.Log {
v.GamingTime = second
}
}
l.PlayerListLog.Save()
}
if l.GameDetailLog != nil {
for _, v := range l.GameDetailLog.Log {
v.GameTiming = second
}
l.GameDetailLog.Save()
}
l.Clear()
}
@ -252,4 +271,5 @@ func (l *LabaLog) Save(f func(log *LabaLog)) {
func (l *LabaLog) Clear() {
l.PlayerListLog = nil
l.GameDetailLog = nil
l.CacheTime = time.Time{}
}