From d0ca0785ed39575e0e4424fdd194e96d7665adfc Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 26 五月 2021 16:10:18 +0800
Subject: [PATCH] 0312 增加错误信息输出

---
 ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py |   20 +++++++++++++++++---
 1 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py
index b563069..2797827 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py
@@ -21,6 +21,7 @@
 import GameWorld
 import PlayerControl
 import NetPackCommon
+import GameWorldArena
 import ChPyNetSendPack
 import PlayerFBHelpBattle
 import PyGameDataStruct
@@ -31,13 +32,16 @@
 import json
 import time
 
-def DoOnDay():
+def DoOnDayEx():
     DelOutofTimeViewCacheData()
     return
 
 def IsSaveDBViewCache(playerID, playerLV):
     ## 是否保存基本的缓存数据
     if PlayerFBHelpBattle.IsInHelpBattleCheckInList(playerID):
+        return True
+    
+    if GameWorldArena.IsArenaBattlePlayer(playerID):
         return True
     
     SaveDBLimitLV = IpyGameDataPY.GetFuncCfg("PlayerViewCache", 1)
@@ -49,6 +53,12 @@
 
 def IsSaveAllViewCache(playerID):
     ## 是否保存所有缓存数据
+    
+    if PlayerFBHelpBattle.IsInHelpBattleCheckInList(playerID):
+        return True
+    
+    if GameWorldArena.IsArenaBattlePlayer(playerID):
+        return True
     
     NeedCheckBillBoardType = IpyGameDataPY.GetFuncEvalCfg("PlayerViewCache", 2)
     #校验玩家是否上排行榜
@@ -85,7 +95,7 @@
     ## 删除玩家缓存
     pyViewCacheMgr = PyDataManager.GetPlayerViewCachePyManager()
     playerViewCachePyDict = pyViewCacheMgr.playerViewCachePyDict
-    playerViewCachePyDict.pop(playerID)
+    playerViewCachePyDict.pop(playerID, None)
     GameWorld.DebugLog("删除查看缓存!", playerID)
     return
 
@@ -263,7 +273,11 @@
             answerPack.LV = cacheDict["LV"]
             answerPack.RealmLV = cacheDict["RealmLV"]
             answerPack.OnlineType = ChConfig.Def_Offline
-            answerPack.ServerGroupID = cacheDict.get("ServerGroupID", 0)
+            
+            if GameWorld.IsCrossServer():
+                answerPack.ServerGroupID = cacheDict.get("ServerGroupID", 0)
+            else:
+                answerPack.ServerGroupID = GameWorld.GetServerGroupID()
     else:
         answerPack.PlayerID = clientPack.PlayerID
         answerPack.PlayerName = tagPlayer.GetName()

--
Gitblit v1.8.0