diff --git a/gamesrv/fortunemouse/scenepolicy_fortunemouse.go b/gamesrv/fortunemouse/scenepolicy_fortunemouse.go index c330f41..9c1998b 100644 --- a/gamesrv/fortunemouse/scenepolicy_fortunemouse.go +++ b/gamesrv/fortunemouse/scenepolicy_fortunemouse.go @@ -510,7 +510,14 @@ func (this *ScenePolicyFortuneMouse) GetSceneState(s *base.Scene, stateid int) b func FortuneMouseAndSaveLog(sceneEx *FortuneMouseSceneData, playerEx *FortuneMousePlayerData, data assemble.GameEnd) { if !playerEx.IsRob { data.SnId = playerEx.SnId - if data.Results[0].FreeStatus != 1 && data.Results[0].FreeNumMax != 0 { + var respinStatus int + if data.Results[0].ArrSpins[0].Special != nil { + sp, _ := json.Marshal(data.Results[0].ArrSpins[0].Special) + var spinLock SpinLock + json.Unmarshal(sp, &spinLock) + respinStatus = spinLock.ReSpinStatus + } + if respinStatus == 0 || respinStatus == 1 { data.TotalBet = 0 } info, err := model.MarshalGameNoteByROLL(data) @@ -519,10 +526,10 @@ func FortuneMouseAndSaveLog(sceneEx *FortuneMouseSceneData, playerEx *FortuneMou playerEx.currentLogId = logid sceneEx.SaveGameDetailedLog(logid, info, &base.GameDetailedParam{}) var totalin, totalout int64 - if data.Results[0].FreeStatus == 1 || data.Results[0].FreeNumMax == 0 { + if respinStatus == 0 || respinStatus == 1 { totalin = playerEx.totalBet } - if data.Results[0].FreeStatus == 3 || data.Results[0].FreeNumMax == 0 { + if respinStatus == 0 || respinStatus == 3 { totalout = int64(data.RoundReward) + playerEx.taxCoin } validFlow := totalin + totalout diff --git a/gamesrv/fortuneox/scenepolicy_fortuneox.go b/gamesrv/fortuneox/scenepolicy_fortuneox.go index 80de922..bc66c0e 100644 --- a/gamesrv/fortuneox/scenepolicy_fortuneox.go +++ b/gamesrv/fortuneox/scenepolicy_fortuneox.go @@ -517,7 +517,7 @@ func FortuneOxAndSaveLog(sceneEx *FortuneOxSceneData, playerEx *FortuneOxPlayerD json.Unmarshal(sp, &spinLock) respinStatus = spinLock.ReSpinStatus } - if respinStatus != 0 && respinStatus != 1 { + if respinStatus == 0 || respinStatus == 1 { data.TotalBet = 0 } @@ -527,7 +527,7 @@ func FortuneOxAndSaveLog(sceneEx *FortuneOxSceneData, playerEx *FortuneOxPlayerD playerEx.currentLogId = logid sceneEx.SaveGameDetailedLog(logid, info, &base.GameDetailedParam{}) var totalin, totalout int64 - if respinStatus == 1 { + if respinStatus == 0 || respinStatus == 1 { totalin = playerEx.totalBet } if respinStatus == 0 || respinStatus == 3 {