From c0c4a0880e9a0fc5d1482c1260e02ddd1b554bc9 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 12 十月 2022 14:09:02 +0800
Subject: [PATCH] 9719 【越南】【BT7】【主干】跨服全民充值

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossActionControl.py |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossActionControl.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossActionControl.py
index e972b26..81cee13 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossActionControl.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossActionControl.py
@@ -585,6 +585,10 @@
         if actName == ShareDefine.CrossActName_LuckyCloudBuy:
             import CrossLuckyCloudBuy
             CrossLuckyCloudBuy.OnLuckyCloudBuyReset(ipyData, state)
+        elif actName == ShareDefine.CrossActName_AllRecharge:
+            import CrossActAllRecharge
+            CrossActAllRecharge.OnActIDChange(ipyData, state)
+            
     return
 
 def Sync_CrossActInfoToClientServer(serverGroupID=0):
@@ -633,6 +637,26 @@
                 
     return
 
+def GetPlayerCrossActInfo(curPlayer, actName):
+    ## 获取跨服玩家对应的跨服活动信息
+    actInfoDict = PyGameData.g_crossActInfoDict.get(actName, {})
+    if not actInfoDict:
+        return {}
+    playerServerID = GameWorld.GetPlayerServerID(curPlayer)
+    for actInfo in actInfoDict.values():
+        if not actInfo.get(ShareDefine.ActKey_State, 0):
+            continue
+        if ShareDefine.ActKey_ServerIDRangeList not in actInfo:
+            continue
+        serverIDRangeList = actInfo[ShareDefine.ActKey_ServerIDRangeList]
+        if not serverIDRangeList:
+            # 全服开启
+            return actInfo
+        for serverIDA, serverIDB in serverIDRangeList:
+            if serverIDA <= playerServerID <= serverIDB:
+                return actInfo
+    return {}
+
 def SendMapServerCrossActionState():
     # 地图启动成功时通知跨服活动相关状态  - 本服地图,跨服地图不需要通知
     

--
Gitblit v1.8.0