From 8d824368fd3d1d358c166ad23dbda95bc9ab4454 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 04 九月 2024 11:41:46 +0800
Subject: [PATCH] 10258 【越南】【砍树】新增古宝特殊效果(增加法器每X阶+xx属性)

---
 ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py |  337 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 324 insertions(+), 13 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index 37c7c16..2139897 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -213,6 +213,17 @@
                         ("list", "DayFreeHelpCount", 0),
                         ),
 
+                "FuncTeamSet":(
+                        ("DWORD", "FuncMapID", 1),
+                        ("BYTE", "NeedName", 0),
+                        ("BYTE", "MemberMax", 0),
+                        ("BYTE", "ApplyMax", 0),
+                        ("BYTE", "ReqApplyMax", 0),
+                        ("BYTE", "SortType", 0),
+                        ("BYTE", "SortReverse", 0),
+                        ("BYTE", "OPLimitInAct", 0),
+                        ),
+
                 "ChinMap":(
                         ("DWORD", "MapID", 1),
                         ("char", "MapName", 0),
@@ -494,6 +505,8 @@
                         ("BYTE", "Rank", 0),
                         ("list", "AwardItemList", 0),
                         ("list", "MemAwardItemList", 0),
+                        ("DWORD", "NeedScore", 0),
+                        ("dict", "ScoreAwardEx", 0),
                         ),
 
                 "CrossActBossTrial":(
@@ -510,9 +523,72 @@
                         ("list", "NotifyInfoLoop", 0),
                         ("BYTE", "IsDayReset", 0),
                         ("BYTE", "ResetType", 0),
-                        ("list", "RankLimitList", 0),
                         ("WORD", "PersonalTemplateID", 0),
                         ("WORD", "FamilyTemplateID", 0),
+                        ),
+
+                "ActHorsePetTrain":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("char", "JoinStartTime", 0),
+                        ("char", "JoinEndTime", 0),
+                        ("WORD", "PersonalTemplateID", 0),
+                        ),
+
+                "CrossActHorsePetTrain":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActGroupName", 0),
+                        ("BYTE", "ZoneID", 0),
+                        ("list", "ServerIDRangeList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("char", "JoinStartTime", 0),
+                        ("char", "JoinEndTime", 0),
+                        ("WORD", "PersonalTemplateID", 0),
+                        ),
+
+                "ActHorsePetTrainBillTemp":(
+                        ("DWORD", "TemplateID", 1),
+                        ("BYTE", "Rank", 0),
+                        ("list", "AwardItemList", 0),
+                        ("DWORD", "NeedScore", 0),
+                        ("dict", "ScoreAwardEx", 0),
+                        ),
+
+                "ActGubao":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("char", "JoinStartTime", 0),
+                        ("char", "JoinEndTime", 0),
+                        ("WORD", "PersonalTemplateID", 0),
+                        ),
+
+                "CrossActGubao":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActGroupName", 0),
+                        ("BYTE", "ZoneID", 0),
+                        ("list", "ServerIDRangeList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("char", "JoinStartTime", 0),
+                        ("char", "JoinEndTime", 0),
+                        ("WORD", "PersonalTemplateID", 0),
+                        ),
+
+                "ActGubaoBillTemp":(
+                        ("DWORD", "TemplateID", 1),
+                        ("BYTE", "Rank", 0),
+                        ("list", "AwardItemList", 0),
+                        ("DWORD", "NeedScore", 0),
+                        ("dict", "ScoreAwardEx", 0),
                         ),
 
                 "ActXianXiaMJ":(
@@ -522,10 +598,31 @@
                         ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
-                        ("dict", "NotifyInfoStart", 0),
-                        ("dict", "NotifyInfoEnd", 0),
-                        ("list", "NotifyInfoLoop", 0),
-                        ("BYTE", "ResetType", 0),
+                        ("char", "JoinStartTime", 0),
+                        ("char", "JoinEndTime", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ("WORD", "PersonalTemplateID", 0),
+                        ),
+
+                "CrossActXianXiaMJ":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActGroupName", 0),
+                        ("BYTE", "ZoneID", 0),
+                        ("list", "ServerIDRangeList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("char", "JoinStartTime", 0),
+                        ("char", "JoinEndTime", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ("WORD", "PersonalTemplateID", 0),
+                        ),
+
+                "ActXianXiaMJBillTemp":(
+                        ("DWORD", "TemplateID", 1),
+                        ("BYTE", "Rank", 0),
+                        ("list", "AwardItemList", 0),
+                        ("DWORD", "NeedScore", 0),
+                        ("dict", "ScoreAwardEx", 0),
                         ),
 
                 "ActGodGift":(
@@ -1333,6 +1430,22 @@
     def GetLVLimit(self): return self.attrTuple[4] # 助战等级限制, 0为不限制 WORD
     def GetDayFreeHelpCount(self): return self.attrTuple[5] # 每日免费助战次数,[每日免费助战次数, 是否所有层通用] list
 
+# 功能队伍设定表
+class IPY_FuncTeamSet():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetFuncMapID(self): return self.attrTuple[0] # 功能地图ID DWORD
+    def GetNeedName(self): return self.attrTuple[1] # 需要队伍名 BYTE
+    def GetMemberMax(self): return self.attrTuple[2] # 最大人员数 BYTE
+    def GetApplyMax(self): return self.attrTuple[3] # 最大接受申请数 BYTE
+    def GetReqApplyMax(self): return self.attrTuple[4] # 最大申请数 BYTE
+    def GetSortType(self): return self.attrTuple[5] # 队伍列表排序方案 BYTE
+    def GetSortReverse(self): return self.attrTuple[6] # 是否倒序 BYTE
+    def GetOPLimitInAct(self): return self.attrTuple[7] # 活动期间限制队伍操作 BYTE
+
 # 地图表
 class IPY_ChinMap():
     
@@ -1739,7 +1852,9 @@
     def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD
     def GetRank(self): return self.attrTuple[1] # 名次 BYTE
     def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] 仙盟榜时为盟主奖励,如果没有配置,则统一取成员奖励 list
-    def GetMemAwardItemList(self): return self.attrTuple[3] # 仙盟榜成员奖励物品信息列表[[物品ID,个数,是否拍品], ...] list
+    def GetMemAwardItemList(self): return self.attrTuple[3] # 仙盟榜成员奖励物品信息列表[[物品ID,个数,是否拍品], ...] list
+    def GetNeedScore(self): return self.attrTuple[4] # 上榜所需积分 DWORD
+    def GetScoreAwardEx(self): return self.attrTuple[5] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
 
 # Boss历练跨服活动表
 class IPY_CrossActBossTrial():
@@ -1761,9 +1876,102 @@
     def GetNotifyInfoLoop(self): return self.attrTuple[10] # 全服提示信息 - 循环广播[循环分钟, 广播key, [广播参数列表可选]] list
     def GetIsDayReset(self): return self.attrTuple[11] # 是否每天重置 BYTE
     def GetResetType(self): return self.attrTuple[12] # 重置类型,0-0点重置;1-5点重置 BYTE
-    def GetRankLimitList(self): return self.attrTuple[13] # 上榜个数限制 个人|仙盟 list
-    def GetPersonalTemplateID(self): return self.attrTuple[14] # 个人排行模板编号 WORD
-    def GetFamilyTemplateID(self): return self.attrTuple[15] # 仙盟排行模板编号 WORD
+    def GetPersonalTemplateID(self): return self.attrTuple[13] # 个人排行模板编号 WORD
+    def GetFamilyTemplateID(self): return self.attrTuple[14] # 仙盟排行模板编号 WORD
+
+# 骑宠养成活动时间表
+class IPY_ActHorsePetTrain():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD
+    def GetPlatformList(self): return self.attrTuple[1] # 活动平台列表["平台A", "平台A", ...],配[]代表所有 list
+    def GetServerGroupIDList(self): return self.attrTuple[2] # 服务器ID列表 list
+    def GetActNum(self): return self.attrTuple[3] # 活动分组编号, 活动类型 * 10 + 不同界面编号 BYTE
+    def GetStartDate(self): return self.attrTuple[4] # 开启日期 char
+    def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
+    def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
+    def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
+    def GetPersonalTemplateID(self): return self.attrTuple[8] # 个人排行模板编号 WORD
+
+# 骑宠养成活动跨服表
+class IPY_CrossActHorsePetTrain():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD
+    def GetActGroupName(self): return self.attrTuple[1] # 活动组名(同组活动的名字需相同) char
+    def GetZoneID(self): return self.attrTuple[2] # 组内分组编号 BYTE
+    def GetServerIDRangeList(self): return self.attrTuple[3] # 活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...] list
+    def GetStartDate(self): return self.attrTuple[4] # 开启日期 char
+    def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
+    def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
+    def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
+    def GetPersonalTemplateID(self): return self.attrTuple[8] # 个人排行模板编号 WORD
+
+# 骑宠养成榜单模版表
+class IPY_ActHorsePetTrainBillTemp():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD
+    def GetRank(self): return self.attrTuple[1] # 名次 BYTE
+    def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
+    def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD
+    def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
+
+# 古宝养成活动时间表
+class IPY_ActGubao():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD
+    def GetPlatformList(self): return self.attrTuple[1] # 活动平台列表["平台A", "平台A", ...],配[]代表所有 list
+    def GetServerGroupIDList(self): return self.attrTuple[2] # 服务器ID列表 list
+    def GetActNum(self): return self.attrTuple[3] # 活动分组编号, 活动类型 * 10 + 不同界面编号 BYTE
+    def GetStartDate(self): return self.attrTuple[4] # 开启日期 char
+    def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
+    def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
+    def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
+    def GetPersonalTemplateID(self): return self.attrTuple[8] # 个人排行模板编号 WORD
+
+# 古宝养成活动跨服表
+class IPY_CrossActGubao():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD
+    def GetActGroupName(self): return self.attrTuple[1] # 活动组名(同组活动的名字需相同) char
+    def GetZoneID(self): return self.attrTuple[2] # 组内分组编号 BYTE
+    def GetServerIDRangeList(self): return self.attrTuple[3] # 活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...] list
+    def GetStartDate(self): return self.attrTuple[4] # 开启日期 char
+    def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
+    def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
+    def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
+    def GetPersonalTemplateID(self): return self.attrTuple[8] # 个人排行模板编号 WORD
+
+# 古宝养成榜单模版表
+class IPY_ActGubaoBillTemp():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD
+    def GetRank(self): return self.attrTuple[1] # 名次 BYTE
+    def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
+    def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD
+    def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
 
 # 仙匣秘境活动时间表
 class IPY_ActXianXiaMJ():
@@ -1778,10 +1986,41 @@
     def GetActNum(self): return self.attrTuple[3] # 活动分组编号, 活动类型 * 10 + 不同界面编号 BYTE
     def GetStartDate(self): return self.attrTuple[4] # 开启日期 char
     def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
-    def GetNotifyInfoStart(self): return self.attrTuple[6] # 全服提示信息 - 相对开始时间 dict
-    def GetNotifyInfoEnd(self): return self.attrTuple[7] # 全服提示信息 - 相对结束时间 dict
-    def GetNotifyInfoLoop(self): return self.attrTuple[8] # 全服提示信息 - 循环广播[间隔分钟, 广播key] list
-    def GetResetType(self): return self.attrTuple[9] # 重置类型,0-0点重置;1-5点重置 BYTE
+    def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
+    def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
+    def GetIsDayReset(self): return self.attrTuple[8] # 是否每天重置 BYTE
+    def GetPersonalTemplateID(self): return self.attrTuple[9] # 个人排行模板编号 WORD
+
+# 仙匣秘境活动跨服表
+class IPY_CrossActXianXiaMJ():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD
+    def GetActGroupName(self): return self.attrTuple[1] # 活动组名(同组活动的名字需相同) char
+    def GetZoneID(self): return self.attrTuple[2] # 组内分组编号 BYTE
+    def GetServerIDRangeList(self): return self.attrTuple[3] # 活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...] list
+    def GetStartDate(self): return self.attrTuple[4] # 开启日期 char
+    def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
+    def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
+    def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
+    def GetIsDayReset(self): return self.attrTuple[8] # 是否每天重置 BYTE
+    def GetPersonalTemplateID(self): return self.attrTuple[9] # 个人排行模板编号 WORD
+
+# 仙匣秘境榜单模版表
+class IPY_ActXianXiaMJBillTemp():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD
+    def GetRank(self): return self.attrTuple[1] # 名次 BYTE
+    def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
+    def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD
+    def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
 
 # 天帝礼包活动时间表
 class IPY_ActGodGift():
@@ -2626,6 +2865,7 @@
         self.__LoadFileData("FBFunc", onlyCheck)
         self.__LoadFileData("FBLine", onlyCheck)
         self.__LoadFileData("FBHelpBattle", onlyCheck)
+        self.__LoadFileData("FuncTeamSet", onlyCheck)
         self.__LoadFileData("ChinMap", onlyCheck)
         self.__LoadFileData("BOSSInfo", onlyCheck)
         self.__LoadFileData("BOSSFirstKill", onlyCheck)
@@ -2652,7 +2892,15 @@
         self.__LoadFileData("ActBossTrial", onlyCheck)
         self.__LoadFileData("ActBossTrialTemplate", onlyCheck)
         self.__LoadFileData("CrossActBossTrial", onlyCheck)
+        self.__LoadFileData("ActHorsePetTrain", onlyCheck)
+        self.__LoadFileData("CrossActHorsePetTrain", onlyCheck)
+        self.__LoadFileData("ActHorsePetTrainBillTemp", onlyCheck)
+        self.__LoadFileData("ActGubao", onlyCheck)
+        self.__LoadFileData("CrossActGubao", onlyCheck)
+        self.__LoadFileData("ActGubaoBillTemp", onlyCheck)
         self.__LoadFileData("ActXianXiaMJ", onlyCheck)
+        self.__LoadFileData("CrossActXianXiaMJ", onlyCheck)
+        self.__LoadFileData("ActXianXiaMJBillTemp", onlyCheck)
         self.__LoadFileData("ActGodGift", onlyCheck)
         self.__LoadFileData("ActHorsePetFeast", onlyCheck)
         self.__LoadFileData("ActBossReborn", onlyCheck)
@@ -3047,6 +3295,13 @@
         self.CheckLoadData("FBHelpBattle")
         return self.ipyFBHelpBattleCache[index]
 
+    def GetFuncTeamSetCount(self):
+        self.CheckLoadData("FuncTeamSet")
+        return self.ipyFuncTeamSetLen
+    def GetFuncTeamSetByIndex(self, index):
+        self.CheckLoadData("FuncTeamSet")
+        return self.ipyFuncTeamSetCache[index]
+
     def GetChinMapCount(self):
         self.CheckLoadData("ChinMap")
         return self.ipyChinMapLen
@@ -3229,6 +3484,48 @@
         self.CheckLoadData("CrossActBossTrial")
         return self.ipyCrossActBossTrialCache[index]
 
+    def GetActHorsePetTrainCount(self):
+        self.CheckLoadData("ActHorsePetTrain")
+        return self.ipyActHorsePetTrainLen
+    def GetActHorsePetTrainByIndex(self, index):
+        self.CheckLoadData("ActHorsePetTrain")
+        return self.ipyActHorsePetTrainCache[index]
+
+    def GetCrossActHorsePetTrainCount(self):
+        self.CheckLoadData("CrossActHorsePetTrain")
+        return self.ipyCrossActHorsePetTrainLen
+    def GetCrossActHorsePetTrainByIndex(self, index):
+        self.CheckLoadData("CrossActHorsePetTrain")
+        return self.ipyCrossActHorsePetTrainCache[index]
+
+    def GetActHorsePetTrainBillTempCount(self):
+        self.CheckLoadData("ActHorsePetTrainBillTemp")
+        return self.ipyActHorsePetTrainBillTempLen
+    def GetActHorsePetTrainBillTempByIndex(self, index):
+        self.CheckLoadData("ActHorsePetTrainBillTemp")
+        return self.ipyActHorsePetTrainBillTempCache[index]
+
+    def GetActGubaoCount(self):
+        self.CheckLoadData("ActGubao")
+        return self.ipyActGubaoLen
+    def GetActGubaoByIndex(self, index):
+        self.CheckLoadData("ActGubao")
+        return self.ipyActGubaoCache[index]
+
+    def GetCrossActGubaoCount(self):
+        self.CheckLoadData("CrossActGubao")
+        return self.ipyCrossActGubaoLen
+    def GetCrossActGubaoByIndex(self, index):
+        self.CheckLoadData("CrossActGubao")
+        return self.ipyCrossActGubaoCache[index]
+
+    def GetActGubaoBillTempCount(self):
+        self.CheckLoadData("ActGubaoBillTemp")
+        return self.ipyActGubaoBillTempLen
+    def GetActGubaoBillTempByIndex(self, index):
+        self.CheckLoadData("ActGubaoBillTemp")
+        return self.ipyActGubaoBillTempCache[index]
+
     def GetActXianXiaMJCount(self):
         self.CheckLoadData("ActXianXiaMJ")
         return self.ipyActXianXiaMJLen
@@ -3236,6 +3533,20 @@
         self.CheckLoadData("ActXianXiaMJ")
         return self.ipyActXianXiaMJCache[index]
 
+    def GetCrossActXianXiaMJCount(self):
+        self.CheckLoadData("CrossActXianXiaMJ")
+        return self.ipyCrossActXianXiaMJLen
+    def GetCrossActXianXiaMJByIndex(self, index):
+        self.CheckLoadData("CrossActXianXiaMJ")
+        return self.ipyCrossActXianXiaMJCache[index]
+
+    def GetActXianXiaMJBillTempCount(self):
+        self.CheckLoadData("ActXianXiaMJBillTemp")
+        return self.ipyActXianXiaMJBillTempLen
+    def GetActXianXiaMJBillTempByIndex(self, index):
+        self.CheckLoadData("ActXianXiaMJBillTemp")
+        return self.ipyActXianXiaMJBillTempCache[index]
+
     def GetActGodGiftCount(self):
         self.CheckLoadData("ActGodGift")
         return self.ipyActGodGiftLen

--
Gitblit v1.8.0