From 1ea73e1885835466265ce788d93556b7030ee0e8 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期日, 30 十二月 2018 18:42:00 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(GM工具增加子服服务器维护,文字翻译版)

---
 ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py |   27 +++++++++++++++++++++------
 1 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py
index e94851e..8f0db15 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py
@@ -26,6 +26,8 @@
 import ReadChConfig
 import PlayerFamily
 import IPY_GameServer
+import PlayerFBHelpBattle
+import IpyGameDataPY
 import ShareDefine
 import ChConfig
 
@@ -81,6 +83,14 @@
         curCache.SetPlusDataNoSave(PlusData,len(PlusData))
     curCache.SetNeedSaveDB(isSaveDB) #设置需要保存到数据库
     
+    # 同步更新助战信息
+    if PlayerFBHelpBattle.IsInHelpBattleCheckInList(PlayerID):
+        PropDataDict = eval(PropData)
+        fightPower = PropDataDict.get("FightPower", 0)
+        familyID = PropDataDict.get("FamilyID", 0)
+        playerName = PropDataDict.get("Name", "")
+        PlayerFBHelpBattle.UpdateCheckInPlayerInfo(PlayerID, fightPower, familyID, playerName)
+        
     #暂时关闭
     #===========================================================================
     # FamilyIDKey = "FamilyID"
@@ -109,7 +119,10 @@
 #  @param PlayerID, PlayerLV
 #  @return None
 def IsNeedSaveLogoutPlayer(PlayerID, PlayerLV):
-    SaveDBLimitLV, NeedCheckBillBoardType, HighLadderLimitOrder = ReadChConfig.GetEvalChConfig("CacheSaveLimit")
+    if PlayerFBHelpBattle.IsInHelpBattleCheckInList(PlayerID):
+        return True
+    
+    SaveDBLimitLV = IpyGameDataPY.GetFuncCfg("PlayerViewCache", 1)
     #校验玩家等级
     if PlayerLV < SaveDBLimitLV:
         return False
@@ -118,7 +131,9 @@
 
 # 上榜用户
 def IsNeedSaveViewCacheAllInfo(PlayerID):
-    SaveDBLimitLV, NeedCheckBillBoardType, HighLadderLimitOrder = ReadChConfig.GetEvalChConfig("CacheSaveLimit")
+    if PlayerFBHelpBattle.IsInHelpBattleCheckInList(PlayerID):
+        return True
+    NeedCheckBillBoardType = IpyGameDataPY.GetFuncEvalCfg("PlayerViewCache", 2)
     #校验玩家是否上排行榜
     billboardMgr = GameWorld.GetBillboard()
     for BillBoardType in NeedCheckBillBoardType:
@@ -282,14 +297,14 @@
     NetPackCommon.SendFakePack(curPlayer, answerPack)
     return
 
-def OnPlayerLeaveFamily(playerID):
-    GameWorld.DebugLog("ViewCache->OnPlayerLeaveFamily", playerID)
+def OnPlayerFamilyChange(playerID, familyID, familyName):
+    GameWorld.DebugLog("ViewCache->OnPlayerFamilyChange", playerID)
     curCache = ViewCacheMgr.FindCache(playerID)
     if not curCache:
         return
     PropData = eval(curCache.GetPropData())
-    PropData["FamilyID"] = 0
-    PropData["FamilyName"] = ""
+    PropData["FamilyID"] = familyID
+    PropData["FamilyName"] = familyName
     playerLV = PropData["LV"]
     
     PropData = json.dumps(PropData, ensure_ascii=False)

--
Gitblit v1.8.0