From 5b48407be93e85ebf82ccc8ff13e9f4c561195c4 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 16 四月 2021 14:14:37 +0800
Subject: [PATCH] 8906 【主干】【BT2】【后端】线下单笔充值活动逻辑调整(支持三种领奖模式设定;0-向下兼容,1-匹配最高档,2-精确匹配档次)
---
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