From 0d2578daffd3b32fb0fa05e7dd92e88aa2d92ffa Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 01 三月 2019 16:23:06 +0800
Subject: [PATCH] 3039 【主干】【1.6】合服定制活动期间资源找回异常

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py |   40 ++++++++++++++++++++++------------------
 1 files changed, 22 insertions(+), 18 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
index 0dc634d..f53d752 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
@@ -660,19 +660,21 @@
         GameWorld.Log("    本周定制的开服日常活动ID列表: %s" % (customDailyIDList))
         GameWorld.Log("    今天定制的开服日常表ID列表=%s" % (todayCustomIDList))
     elif isMixServer and mixServerDay <= maxCustomServerDayMix:
-        customIpyDataList = IpyGameDataPY.GetIpyGameDataListNotLog("DailyActionCustomMix", mixServerDay)
-        if not customIpyDataList:
-            customIpyDataList = []
-        GameWorld.Log("    今天定制的合服日常活动条数: %s" % len(customIpyDataList))
-        for customIpyData in customIpyDataList:
+        todayCustomIDList = [] # 今天定制的数据表ID
+        ipyDataMgr = IpyGameDataPY.IPY_Data()
+        for i in xrange(ipyDataMgr.GetDailyActionCustomMixCount()):
+            customIpyData = ipyDataMgr.GetDailyActionCustomMixByIndex(i)
             dataID = customIpyData.GetID()
             dailyID = customIpyData.GetDailyID()
             if dailyID not in customDailyIDList:
                 customDailyIDList.append(dailyID)
-            customType = 2
-            dailyTimeInfoList.append([customType, customIpyData.GetOpenTimeList(), customIpyData])
-            GameWorld.Log("    增加本日合服日常活动信息: customType=%s,dailyID=%s,dataID=%s" % (customType, dailyID, dataID))
-        GameWorld.Log("    今天定制的合服日常活动ID列表: %s" % (customDailyIDList))
+            if customIpyData.GetMixServerDay() == mixServerDay:
+                todayCustomIDList.append(dataID)
+                customType = 2
+                dailyTimeInfoList.append([customType, customIpyData.GetOpenTimeList(), customIpyData])
+                GameWorld.Log("    增加本日合服日常活动信息: customType=%s,dailyID=%s,dataID=%s" % (customType, dailyID, dataID))
+        GameWorld.Log("    定制的合服日常活动ID列表: %s" % (customDailyIDList))
+        GameWorld.Log("    今天定制的合服日常表ID列表=%s" % (todayCustomIDList))
     else:
         GameWorld.Log("    超过最大定制开服天,不定制,走常规日常配置!")
     
@@ -960,19 +962,21 @@
         GameWorld.Log("    本周定制的开服副本地图列表: %s" % (customMapIDList))
         GameWorld.Log("    今天定制的开服副本表ID列表=%s" % (todayCustomIDList))
     elif isMixServer and mixServerDay <= maxCustomServerDayMix:
-        customIpyDataList = IpyGameDataPY.GetIpyGameDataListNotLog("FBStateTimeCustomMix", mixServerDay)
-        if not customIpyDataList:
-            customIpyDataList = []
-        GameWorld.Log("    本日定制的合服副本活动条数: %s" % len(customIpyDataList))
-        for customIpyData in customIpyDataList:
+        todayCustomIDList = [] # 今天定制的数据表ID
+        ipyDataMgr = IpyGameDataPY.IPY_Data()
+        for i in xrange(ipyDataMgr.GetFBStateTimeCustomMixCount()):
+            customIpyData = ipyDataMgr.GetFBStateTimeCustomMixByIndex(i)
             dataID = customIpyData.GetID()
             dataMapID = customIpyData.GetDataMapID()
             if dataMapID not in customMapIDList:
                 customMapIDList.append(dataMapID)
-            customType, startWeekDay, endWeekDay = 2, curWeekDay, curWeekDay
-            fbStateTimeInfoList.append([customType, startWeekDay, endWeekDay, customIpyData])
-            GameWorld.Log("    今天要处理的合服副本状态配置: customType=%s,dataID=%s" % (customType, dataID))
-        GameWorld.Log("    本日定制的合服副本地图列表: %s" % (customMapIDList))
+            if customIpyData.GetMixServerDay() == mixServerDay:
+                todayCustomIDList.append(dataID)
+                customType, startWeekDay, endWeekDay = 2, curWeekDay, curWeekDay
+                fbStateTimeInfoList.append([customType, startWeekDay, endWeekDay, customIpyData])
+                GameWorld.Log("    今天要处理的合服副本状态配置: customType=%s,dataID=%s" % (customType, dataID))
+        GameWorld.Log("    定制的合服副本地图列表: %s" % (customMapIDList))
+        GameWorld.Log("    今天定制的合服副本表ID列表=%s" % (todayCustomIDList))
     else:
         GameWorld.Log("    超过最大定制开服天,不定制,走常规副本状态时间!")
         

--
Gitblit v1.8.0