From 2bb7c0c9764b3aa2a2ed1e860ceee4e515508926 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 19 五月 2021 11:02:30 +0800
Subject: [PATCH] 5015 【主干】【bt】【bt2】【工具】GM工具支持修改玩家数据(支持运行自定义脚本命令GMT_Execfile)

---
 ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py |  514 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 437 insertions(+), 77 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index 1ea80b1..45ea84a 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -238,6 +238,41 @@
                         ("WORD", "LVLimit", 0),
                         ),
 
+                "ActFeastLogin":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActMark", 0),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ),
+
+                "ActFeastWish":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActMark", 0),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("BYTE", "ResetType", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ),
+
+                "ActFeastTravel":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActMark", 0),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("BYTE", "ResetType", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ),
+
                 "FuncOpenLV":(
                         ("DWORD", "FuncId", 1),
                         ("DWORD", "LimitLV", 0),
@@ -278,9 +313,9 @@
 
                 "ActSpringSale":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("list", "StartTimeList", 0),
@@ -295,9 +330,9 @@
 
                 "ActFlashGiftbag":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("list", "StartTimeList", 0),
@@ -306,6 +341,7 @@
                         ("dict", "NotifyInfoStart", 0),
                         ("dict", "NotifyInfoEnd", 0),
                         ("list", "NotifyInfoLoop", 0),
+                        ("WORD", "LimitWorldLV", 0),
                         ("WORD", "LVLimit", 0),
                         ("BYTE", "IsDayReset", 0),
                         ),
@@ -336,9 +372,9 @@
 
                 "ActCostRebate":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("dict", "NotifyInfoStart", 0),
@@ -349,9 +385,9 @@
 
                 "ActCollectWords":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("dict", "NotifyInfoStart", 0),
@@ -359,16 +395,30 @@
                         ("list", "NotifyInfoLoop", 0),
                         ),
 
-                "ActCollectWords2":(
+                "ActGarbageSorting":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("dict", "NotifyInfoStart", 0),
                         ("dict", "NotifyInfoEnd", 0),
                         ("list", "NotifyInfoLoop", 0),
+                        ),
+
+                "ActHorsePetFeast":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("list", "StartTimeList", 0),
+                        ("list", "EndTimeList", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("BYTE", "IsDayReset", 0),
                         ),
 
                 "ActBossReborn":(
@@ -420,9 +470,9 @@
 
                 "ActFlashSale":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("list", "StartTimeList", 0),
@@ -470,19 +520,7 @@
                         ("BYTE", "IsDayReset", 0),
                         ),
 
-                "ActGrowupBuy":(
-                        ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
-                        ("list", "PlatformList", 0),
-                        ("list", "ServerGroupIDList", 0),
-                        ("char", "StartDate", 0),
-                        ("char", "EndDate", 0),
-                        ("dict", "NotifyInfoStart", 0),
-                        ("dict", "NotifyInfoEnd", 0),
-                        ("list", "NotifyInfoLoop", 0),
-                        ),
-
-                "ActTotalRecharge":(
+                "ActRechargeRebateGold":(
                         ("DWORD", "CfgID", 1),
                         ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
@@ -495,11 +533,58 @@
                         ("BYTE", "IsDayReset", 0),
                         ),
 
-                "ActTotalRecharge2":(
+                "ActGrowupBuy":(
                         ("DWORD", "CfgID", 1),
                         ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ),
+
+                "ActSingleRecharge":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ),
+
+                "ActTurntable":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ),
+
+                "ActManyDayRecharge":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ),
+
+                "ActTotalRecharge":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("dict", "NotifyInfoStart", 0),
@@ -533,7 +618,6 @@
                 "CrossRealmPKDan":(
                         ("BYTE", "DanLV", 1),
                         ("WORD", "LVUpScore", 0),
-                        ("list", "MatchRange", 0),
                         ("BYTE", "MatchRobotRate", 0),
                         ("BYTE", "MatchRobotRateEx", 0),
                         ),
@@ -622,6 +706,27 @@
                         ("dict", "NotifyInfoEnd", 0),
                         ("list", "NotifyInfoLoop", 0),
                         ("WORD", "LVLimit", 0),
+                        ),
+
+                "CrossActCTGBillboard":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActGroupName", 0),
+                        ("list", "ServerIDRangeList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ("list", "TemplateIDList", 0),
+                        ),
+
+                "CrossActCTGBillboardOrder":(
+                        ("DWORD", "TemplateID", 1),
+                        ("WORD", "OrderA", 0),
+                        ("WORD", "OrderB", 0),
+                        ("float", "CTGAtleast", 0),
+                        ("list", "AwardItemList", 0),
                         ),
 
                 "EquipStarUp":(
@@ -1087,6 +1192,79 @@
     def GetRedPacketIDList(self): return self.RedPacketIDList # 每日对应红包ID列表[[第一天红包ID列表], ...]
     def GetLVLimit(self): return self.LVLimit # 限制等级
 
+# 节日登录奖励时间表
+class IPY_ActFeastLogin():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.ActMark = ""
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.StartDate = ""
+        self.EndDate = ""
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetActMark(self): return self.ActMark # 活动组标记
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+
+# 节日祝福时间表
+class IPY_ActFeastWish():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.ActMark = ""
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.StartDate = ""
+        self.EndDate = ""
+        self.ResetType = 0
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetActMark(self): return self.ActMark # 活动组标记
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetResetType(self): return self.ResetType # 重置类型,0-0点重置;1-5点重置
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+
+# 节日游历时间表
+class IPY_ActFeastTravel():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.ActMark = ""
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.StartDate = ""
+        self.EndDate = ""
+        self.ResetType = 0
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetActMark(self): return self.ActMark # 活动组标记
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetResetType(self): return self.ResetType # 重置类型,0-0点重置;1-5点重置
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+
 # 等级开启功能
 class IPY_FuncOpenLV():
     
@@ -1172,9 +1350,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.StartTimeList = []
@@ -1188,9 +1366,9 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
@@ -1207,9 +1385,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.StartTimeList = []
@@ -1218,14 +1396,15 @@
         self.NotifyInfoStart = {}
         self.NotifyInfoEnd = {}
         self.NotifyInfoLoop = []
+        self.LimitWorldLV = 0
         self.LVLimit = 0
         self.IsDayReset = 0
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
@@ -1234,6 +1413,7 @@
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
     def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetLimitWorldLV(self): return self.LimitWorldLV # 限制开启的最低世界等级
     def GetLVLimit(self): return self.LVLimit # 限制等级
     def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
@@ -1292,9 +1472,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.NotifyInfoStart = {}
@@ -1304,9 +1484,9 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
@@ -1319,9 +1499,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.NotifyInfoStart = {}
@@ -1330,23 +1510,23 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
     def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
 
-# 集字活动时间表2
-class IPY_ActCollectWords2():
+# 垃圾分类活动时间表
+class IPY_ActGarbageSorting():
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.NotifyInfoStart = {}
@@ -1355,14 +1535,43 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
     def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+
+# 骑宠盛宴活动
+class IPY_ActHorsePetFeast():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.StartTimeList = []
+        self.EndTimeList = []
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
+    def GetEndTimeList(self): return self.EndTimeList # 结束时间列表, 支持多个时段
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
 # BOSS复活活动时间表
 class IPY_ActBossReborn():
@@ -1467,9 +1676,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.StartTimeList = []
@@ -1484,9 +1693,9 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
@@ -1570,33 +1779,8 @@
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
     def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
-# 成长必买活动表
-class IPY_ActGrowupBuy():
-    
-    def __init__(self):
-        self.CfgID = 0
-        self.ActMark = ""
-        self.PlatformList = []
-        self.ServerGroupIDList = []
-        self.StartDate = ""
-        self.EndDate = ""
-        self.NotifyInfoStart = {}
-        self.NotifyInfoEnd = {}
-        self.NotifyInfoLoop = []
-        return
-        
-    def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
-    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
-    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
-    def GetStartDate(self): return self.StartDate # 开启日期
-    def GetEndDate(self): return self.EndDate # 结束日期
-    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
-    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
-    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
-
-# 累计充值活动表
-class IPY_ActTotalRecharge():
+# 累计充值返利仙玉活动表
+class IPY_ActRechargeRebateGold():
     
     def __init__(self):
         self.CfgID = 0
@@ -1622,8 +1806,8 @@
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
     def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
-# 累计充值活动表2
-class IPY_ActTotalRecharge2():
+# 成长必买活动表
+class IPY_ActGrowupBuy():
     
     def __init__(self):
         self.CfgID = 0
@@ -1634,14 +1818,112 @@
         self.EndDate = ""
         self.NotifyInfoStart = {}
         self.NotifyInfoEnd = {}
-        self.NotifyInfoLoop = []
-        self.IsDayReset = 0
+        self.NotifyInfoLoop = []
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
     def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+
+# 单笔累充活动表
+class IPY_ActSingleRecharge():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
+
+# 转盘活动表
+class IPY_ActTurntable():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
+
+# 多日连充活动表
+class IPY_ActManyDayRecharge():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+
+# 累计充值活动表
+class IPY_ActTotalRecharge():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
@@ -1702,14 +1984,12 @@
     def __init__(self):
         self.DanLV = 0
         self.LVUpScore = 0
-        self.MatchRange = []
         self.MatchRobotRate = 0
         self.MatchRobotRateEx = 0
         return
         
     def GetDanLV(self): return self.DanLV # 段位等级
     def GetLVUpScore(self): return self.LVUpScore # 升段位所需积分
-    def GetMatchRange(self): return self.MatchRange # 可匹配到的玩家段位区间 [从段位A, 到段位B],配[]代表只匹配本段位的
     def GetMatchRobotRate(self): return self.MatchRobotRate # 匹配机器人基础概率,百分率
     def GetMatchRobotRateEx(self): return self.MatchRobotRateEx # 匹配机器人失败次数附加概率,百分率
 
@@ -1892,6 +2172,50 @@
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
     def GetLVLimit(self): return self.LVLimit # 限制等级
 
+# 跨服充值排行活动时间表
+class IPY_CrossActCTGBillboard():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.ActGroupName = ""
+        self.ServerIDRangeList = []
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.IsDayReset = 0
+        self.TemplateIDList = []
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetActGroupName(self): return self.ActGroupName # 活动组名(同组活动的名字需相同)
+    def GetServerIDRangeList(self): return self.ServerIDRangeList # 活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...]
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[循环分钟, 广播key, [广播参数列表可选]]
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
+    def GetTemplateIDList(self): return self.TemplateIDList # 模板ID列表
+
+# 跨服充值排行模板名次奖励表
+class IPY_CrossActCTGBillboardOrder():
+    
+    def __init__(self):
+        self.TemplateID = 0
+        self.OrderA = 0
+        self.OrderB = 0
+        self.CTGAtleast = 0.0
+        self.AwardItemList = []
+        return
+        
+    def GetTemplateID(self): return self.TemplateID # 模板ID
+    def GetOrderA(self): return self.OrderA # 名次A
+    def GetOrderB(self): return self.OrderB # 至名次B
+    def GetCTGAtleast(self): return self.CTGAtleast # 至少充值RMB
+    def GetAwardItemList(self): return self.AwardItemList # 奖励物品列表[[物品ID,个数,是否拍品], ...]
+
 # 装备升星表
 class IPY_EquipStarUp():
     
@@ -2018,6 +2342,12 @@
         self.ipyFamilyRedPackLen = len(self.ipyFamilyRedPackCache)
         self.ipyActFeastRedPacketCache = self.__LoadFileData("ActFeastRedPacket", IPY_ActFeastRedPacket)
         self.ipyActFeastRedPacketLen = len(self.ipyActFeastRedPacketCache)
+        self.ipyActFeastLoginCache = self.__LoadFileData("ActFeastLogin", IPY_ActFeastLogin)
+        self.ipyActFeastLoginLen = len(self.ipyActFeastLoginCache)
+        self.ipyActFeastWishCache = self.__LoadFileData("ActFeastWish", IPY_ActFeastWish)
+        self.ipyActFeastWishLen = len(self.ipyActFeastWishCache)
+        self.ipyActFeastTravelCache = self.__LoadFileData("ActFeastTravel", IPY_ActFeastTravel)
+        self.ipyActFeastTravelLen = len(self.ipyActFeastTravelCache)
         self.ipyFuncOpenLVCache = self.__LoadFileData("FuncOpenLV", IPY_FuncOpenLV)
         self.ipyFuncOpenLVLen = len(self.ipyFuncOpenLVCache)
         self.ipyChinNPCCache = self.__LoadFileData("ChinNPC", IPY_ChinNPC)
@@ -2038,8 +2368,10 @@
         self.ipyActCostRebateLen = len(self.ipyActCostRebateCache)
         self.ipyActCollectWordsCache = self.__LoadFileData("ActCollectWords", IPY_ActCollectWords)
         self.ipyActCollectWordsLen = len(self.ipyActCollectWordsCache)
-        self.ipyActCollectWords2Cache = self.__LoadFileData("ActCollectWords2", IPY_ActCollectWords2)
-        self.ipyActCollectWords2Len = len(self.ipyActCollectWords2Cache)
+        self.ipyActGarbageSortingCache = self.__LoadFileData("ActGarbageSorting", IPY_ActGarbageSorting)
+        self.ipyActGarbageSortingLen = len(self.ipyActGarbageSortingCache)
+        self.ipyActHorsePetFeastCache = self.__LoadFileData("ActHorsePetFeast", IPY_ActHorsePetFeast)
+        self.ipyActHorsePetFeastLen = len(self.ipyActHorsePetFeastCache)
         self.ipyActBossRebornCache = self.__LoadFileData("ActBossReborn", IPY_ActBossReborn)
         self.ipyActBossRebornLen = len(self.ipyActBossRebornCache)
         self.ipyActFairyCeremonyCache = self.__LoadFileData("ActFairyCeremony", IPY_ActFairyCeremony)
@@ -2056,12 +2388,18 @@
         self.ipyActWishingWellLen = len(self.ipyActWishingWellCache)
         self.ipyActRechargePrizeCache = self.__LoadFileData("ActRechargePrize", IPY_ActRechargePrize)
         self.ipyActRechargePrizeLen = len(self.ipyActRechargePrizeCache)
+        self.ipyActRechargeRebateGoldCache = self.__LoadFileData("ActRechargeRebateGold", IPY_ActRechargeRebateGold)
+        self.ipyActRechargeRebateGoldLen = len(self.ipyActRechargeRebateGoldCache)
         self.ipyActGrowupBuyCache = self.__LoadFileData("ActGrowupBuy", IPY_ActGrowupBuy)
         self.ipyActGrowupBuyLen = len(self.ipyActGrowupBuyCache)
+        self.ipyActSingleRechargeCache = self.__LoadFileData("ActSingleRecharge", IPY_ActSingleRecharge)
+        self.ipyActSingleRechargeLen = len(self.ipyActSingleRechargeCache)
+        self.ipyActTurntableCache = self.__LoadFileData("ActTurntable", IPY_ActTurntable)
+        self.ipyActTurntableLen = len(self.ipyActTurntableCache)
+        self.ipyActManyDayRechargeCache = self.__LoadFileData("ActManyDayRecharge", IPY_ActManyDayRecharge)
+        self.ipyActManyDayRechargeLen = len(self.ipyActManyDayRechargeCache)
         self.ipyActTotalRechargeCache = self.__LoadFileData("ActTotalRecharge", IPY_ActTotalRecharge)
         self.ipyActTotalRechargeLen = len(self.ipyActTotalRechargeCache)
-        self.ipyActTotalRecharge2Cache = self.__LoadFileData("ActTotalRecharge2", IPY_ActTotalRecharge2)
-        self.ipyActTotalRecharge2Len = len(self.ipyActTotalRecharge2Cache)
         self.ipyCrossZoneCommCache = self.__LoadFileData("CrossZoneComm", IPY_CrossZoneComm)
         self.ipyCrossZoneCommLen = len(self.ipyCrossZoneCommCache)
         self.ipyCrossZonePKCache = self.__LoadFileData("CrossZonePK", IPY_CrossZonePK)
@@ -2084,6 +2422,10 @@
         self.ipyNewUniquenessArriveLen = len(self.ipyNewUniquenessArriveCache)
         self.ipyActLuckyTreasureCache = self.__LoadFileData("ActLuckyTreasure", IPY_ActLuckyTreasure)
         self.ipyActLuckyTreasureLen = len(self.ipyActLuckyTreasureCache)
+        self.ipyCrossActCTGBillboardCache = self.__LoadFileData("CrossActCTGBillboard", IPY_CrossActCTGBillboard)
+        self.ipyCrossActCTGBillboardLen = len(self.ipyCrossActCTGBillboardCache)
+        self.ipyCrossActCTGBillboardOrderCache = self.__LoadFileData("CrossActCTGBillboardOrder", IPY_CrossActCTGBillboardOrder)
+        self.ipyCrossActCTGBillboardOrderLen = len(self.ipyCrossActCTGBillboardOrderCache)
         self.ipyEquipStarUpCache = self.__LoadFileData("EquipStarUp", IPY_EquipStarUp)
         self.ipyEquipStarUpLen = len(self.ipyEquipStarUpCache)
         self.ipyFamilyWarRankAwardCache = self.__LoadFileData("FamilyWarRankAward", IPY_FamilyWarRankAward)
@@ -2302,6 +2644,12 @@
     def GetFamilyRedPackByIndex(self, index): return self.ipyFamilyRedPackCache[index]
     def GetActFeastRedPacketCount(self): return self.ipyActFeastRedPacketLen
     def GetActFeastRedPacketByIndex(self, index): return self.ipyActFeastRedPacketCache[index]
+    def GetActFeastLoginCount(self): return self.ipyActFeastLoginLen
+    def GetActFeastLoginByIndex(self, index): return self.ipyActFeastLoginCache[index]
+    def GetActFeastWishCount(self): return self.ipyActFeastWishLen
+    def GetActFeastWishByIndex(self, index): return self.ipyActFeastWishCache[index]
+    def GetActFeastTravelCount(self): return self.ipyActFeastTravelLen
+    def GetActFeastTravelByIndex(self, index): return self.ipyActFeastTravelCache[index]
     def GetFuncOpenLVCount(self): return self.ipyFuncOpenLVLen
     def GetFuncOpenLVByIndex(self, index): return self.ipyFuncOpenLVCache[index]
     def GetChinNPCCount(self): return self.ipyChinNPCLen
@@ -2322,8 +2670,10 @@
     def GetActCostRebateByIndex(self, index): return self.ipyActCostRebateCache[index]
     def GetActCollectWordsCount(self): return self.ipyActCollectWordsLen
     def GetActCollectWordsByIndex(self, index): return self.ipyActCollectWordsCache[index]
-    def GetActCollectWords2Count(self): return self.ipyActCollectWords2Len
-    def GetActCollectWords2ByIndex(self, index): return self.ipyActCollectWords2Cache[index]
+    def GetActGarbageSortingCount(self): return self.ipyActGarbageSortingLen
+    def GetActGarbageSortingByIndex(self, index): return self.ipyActGarbageSortingCache[index]
+    def GetActHorsePetFeastCount(self): return self.ipyActHorsePetFeastLen
+    def GetActHorsePetFeastByIndex(self, index): return self.ipyActHorsePetFeastCache[index]
     def GetActBossRebornCount(self): return self.ipyActBossRebornLen
     def GetActBossRebornByIndex(self, index): return self.ipyActBossRebornCache[index]
     def GetActFairyCeremonyCount(self): return self.ipyActFairyCeremonyLen
@@ -2340,12 +2690,18 @@
     def GetActWishingWellByIndex(self, index): return self.ipyActWishingWellCache[index]
     def GetActRechargePrizeCount(self): return self.ipyActRechargePrizeLen
     def GetActRechargePrizeByIndex(self, index): return self.ipyActRechargePrizeCache[index]
+    def GetActRechargeRebateGoldCount(self): return self.ipyActRechargeRebateGoldLen
+    def GetActRechargeRebateGoldByIndex(self, index): return self.ipyActRechargeRebateGoldCache[index]
     def GetActGrowupBuyCount(self): return self.ipyActGrowupBuyLen
     def GetActGrowupBuyByIndex(self, index): return self.ipyActGrowupBuyCache[index]
+    def GetActSingleRechargeCount(self): return self.ipyActSingleRechargeLen
+    def GetActSingleRechargeByIndex(self, index): return self.ipyActSingleRechargeCache[index]
+    def GetActTurntableCount(self): return self.ipyActTurntableLen
+    def GetActTurntableByIndex(self, index): return self.ipyActTurntableCache[index]
+    def GetActManyDayRechargeCount(self): return self.ipyActManyDayRechargeLen
+    def GetActManyDayRechargeByIndex(self, index): return self.ipyActManyDayRechargeCache[index]
     def GetActTotalRechargeCount(self): return self.ipyActTotalRechargeLen
     def GetActTotalRechargeByIndex(self, index): return self.ipyActTotalRechargeCache[index]
-    def GetActTotalRecharge2Count(self): return self.ipyActTotalRecharge2Len
-    def GetActTotalRecharge2ByIndex(self, index): return self.ipyActTotalRecharge2Cache[index]
     def GetCrossZoneCommCount(self): return self.ipyCrossZoneCommLen
     def GetCrossZoneCommByIndex(self, index): return self.ipyCrossZoneCommCache[index]
     def GetCrossZonePKCount(self): return self.ipyCrossZonePKLen
@@ -2368,6 +2724,10 @@
     def GetNewUniquenessArriveByIndex(self, index): return self.ipyNewUniquenessArriveCache[index]
     def GetActLuckyTreasureCount(self): return self.ipyActLuckyTreasureLen
     def GetActLuckyTreasureByIndex(self, index): return self.ipyActLuckyTreasureCache[index]
+    def GetCrossActCTGBillboardCount(self): return self.ipyCrossActCTGBillboardLen
+    def GetCrossActCTGBillboardByIndex(self, index): return self.ipyCrossActCTGBillboardCache[index]
+    def GetCrossActCTGBillboardOrderCount(self): return self.ipyCrossActCTGBillboardOrderLen
+    def GetCrossActCTGBillboardOrderByIndex(self, index): return self.ipyCrossActCTGBillboardOrderCache[index]
     def GetEquipStarUpCount(self): return self.ipyEquipStarUpLen
     def GetEquipStarUpByIndex(self, index): return self.ipyEquipStarUpCache[index]
     def GetFamilyWarRankAwardCount(self): return self.ipyFamilyWarRankAwardLen

--
Gitblit v1.8.0