From 0ff8e21c92b39adfdf062b40c4e0147213bba70a Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 26 十一月 2018 23:18:29 +0800
Subject: [PATCH] 4923 【后端】【1.3】神兵技能

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
index a7fac3b..70ac533 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
@@ -49,8 +49,6 @@
 import time
 #---------------------------------------------------------------------
 
-MaxCustomServerDay = 14 # 最大定制开服天数
-
 #年月日时间格式
 Time_YmdFormat = ChConfig.TYPE_Time_YmdFormat
 
@@ -128,7 +126,7 @@
     curDateTimeStr = "%d-%d-%d %02d:%02d:00" % (serverTime.year, serverTime.month, serverTime.day, serverTime.hour, serverTime.minute)
     curDateTime = datetime.datetime.strptime(curDateTimeStr, ChConfig.TYPE_Time_Format)
     
-    customMaxServerDay = MaxCustomServerDay # 定制运营活动最大开服天
+    customMaxServerDay = IpyGameDataPY.GetFuncCfg("OperationAction", 1) # 定制运营活动最大开服天
     operationActionDict = {}
     mapServerOperationActionDict = {}
     serverID = GameWorld.GetServerID()
@@ -347,11 +345,16 @@
     ## 获取运营活动本服务器对应的配置数据列表
     
     # 所有配置先按活动标识归组
+    platform = GameWorld.GetPlatform()
     actGroupDict = {} # {ActMark:{ServerIDTuple:[ipyData, ...], ...}, ...}
     actCfgCount = getattr(ipyDataMgr, "Get%sCount" % actName)()
     for cfgIndex in xrange(actCfgCount):
         ipyData = getattr(ipyDataMgr, "Get%sByIndex" % actName)(cfgIndex)
         actMark = ipyData.GetActMark()
+        platformList = [] if not hasattr(ipyData, "GetPlatformList") else ipyData.GetPlatformList()
+        if platformList and platform not in platformList:
+            GameWorld.Log("非本平台活动,不取!platform=%s,platformList=%s,actName=%s,cfgID=%s" % (platform, platformList, actName, ipyData.GetCfgID()))
+            continue
         serverIDTuple = tuple(ipyData.GetServerIDList())
         
         serverIpyDataDict = actGroupDict.get(actMark, {})
@@ -536,6 +539,7 @@
     multiRealmPointInfo.EndtDate = GameWorld.GetOperationActionDateStr(ipyData.GetEndDate(), openServerDay)
     multiRealmPointInfo.Multiple = ipyData.GetMultiple()
     multiRealmPointInfo.LimitLV = ipyData.GetLVLimit()
+    multiRealmPointInfo.LimitPoint = ipyData.GetPointLimit()
     if not curPlayer:
         # 全服广播在线玩家
         playerManager = GameWorld.GetPlayerManager()
@@ -568,7 +572,7 @@
     curDateStr = GameWorld.ChangeTimeNumToStr(curTime, ChConfig.TYPE_Time_YmdFormat) # 当天日期
     
     openServerWeekday = GameWorldProcess.GetOpenServerWeekday() # 服务器开服时是星期几
-    curMaxCustomServerDay = MaxCustomServerDay - openServerWeekday + 1 # 最大有效定制开服天
+    curMaxCustomServerDay = IpyGameDataPY.GetFuncCfg("OperationAction", 1) - openServerWeekday + 1 # 最大有效定制开服天
     GameWorld.Log("===== 加载今天日常活动信息 =====")
     GameWorld.Log("    开服是星期%s, 开服第%s天, 当前星期%s" % (openServerWeekday, openServerDay, weekDay))
     GameWorld.Log("    最大有效定制开服天: %s" % (curMaxCustomServerDay))
@@ -820,7 +824,7 @@
         GameWorld.ErrLog("获取开服是星期几数据错误!openServerWeekday=%s" % openServerWeekday)
         return []
     
-    curMaxCustomServerDay = MaxCustomServerDay - openServerWeekday + 1 # 最大有效定制开服天
+    curMaxCustomServerDay = IpyGameDataPY.GetFuncCfg("OperationAction", 1) - openServerWeekday + 1 # 最大有效定制开服天
     GameWorld.Log("===== 加载今天副本状态时间表 =====")
     GameWorld.Log("    开服是星期%s, 开服第%s天, 当前星期%s,%s点%s分 !" % (openServerWeekday, openServerDay, curWeekDay, curHour, curMinute))
     GameWorld.Log("    最大有效定制开服天: %s" % (curMaxCustomServerDay))

--
Gitblit v1.8.0