From f38f1d13f83bd005eab8a101173c916d03163dc7 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 09 一月 2020 17:20:27 +0800
Subject: [PATCH] 8346 【恺英】【后端】协助系统(修复封魔坛协助进错线路bug)

---
 ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py |  133 ++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 126 insertions(+), 7 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index ef4336f..4409089 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -41,6 +41,11 @@
                         ("char", "Numerical5", 0),
                         ),
 
+                "CreateRoleLimitServer":(
+                        ("list", "LimitServerGroupIDRangeList", 0),
+                        ("list", "LimitServerGroupIDList", 0),
+                        ),
+
                 "WorldLV":(
                         ("WORD", "WorldLV", 1),
                         ("DWORD", "OpenServerSecond", 0),
@@ -79,6 +84,13 @@
                         ("char", "EndDate", 0),
                         ("char", "StartTime", 0),
                         ("char", "EndTime", 0),
+                        ("list", "WorldLVRange", 0),
+                        ("list", "AddRandSecondRange", 0),
+                        ("WORD", "ReplenishCDMinutes", 0),
+                        ("BYTE", "ReplenishAuctionCount", 0),
+                        ("DWORD", "ReplenishItemID", 0),
+                        ("list", "ReplenishEquipInfo", 0),
+                        ("list", "ReplenishEquipPlaces", 0),
                         ("BYTE", "AuctionCount", 0),
                         ("list", "RandMinuteRange", 0),
                         ("list", "ItemCountWeightList", 0),
@@ -189,6 +201,12 @@
                         ("DWORD", "StoneNPCID", 0),
                         ("WORD", "RebornPreNotifyTime", 0),
                         ("char", "SourceName", 0),
+                        ("BYTE", "CanAssist", 0),
+                        ),
+
+                "BOSSFirstKill":(
+                        ("DWORD", "NPCID", 1),
+                        ("list", "ServerFirstKillPlayerAward", 0),
                         ),
 
                 "QuestionBank":(
@@ -535,10 +553,25 @@
                         ("WORD", "LVLimit", 0),
                         ),
 
+                "EquipStarUp":(
+                        ("BYTE", "ClassLV", 1),
+                        ("BYTE", "EquipPlace", 1),
+                        ("BYTE", "Star", 1),
+                        ("list", "CostEquipPlace", 0),
+                        ("BYTE", "IsJobLimit", 0),
+                        ("list", "CostEquipColor", 0),
+                        ("BYTE", "UnSuitRate", 0),
+                        ),
+
                 "FamilyWarRankAward":(
                         ("WORD", "WarWorldLV", 1),
                         ("BYTE", "WarRank", 0),
                         ("list", "RankAuctionItem", 0),
+                        ),
+
+                "AssistThanksGift":(
+                        ("DWORD", "GiftID", 1),
+                        ("BYTE", "AssistAwardCount", 0),
                         ),
 
                 "FairyDomain":(
@@ -567,6 +600,17 @@
     def GetNumerical3(self): return self.Numerical3 # 数据3
     def GetNumerical4(self): return self.Numerical4 # 数据4
     def GetNumerical5(self): return self.Numerical5 # 数据5
+
+# 创角限制服务器配置表
+class IPY_CreateRoleLimitServer():
+    
+    def __init__(self):
+        self.LimitServerGroupIDRangeList = []
+        self.LimitServerGroupIDList = []
+        return
+        
+    def GetLimitServerGroupIDRangeList(self): return self.LimitServerGroupIDRangeList # 限制创角的服务器组ID范围列表
+    def GetLimitServerGroupIDList(self): return self.LimitServerGroupIDList # 限制创角的服务器组ID列表
 
 # 世界等级表格
 class IPY_WorldLV():
@@ -645,6 +689,13 @@
         self.EndDate = ""
         self.StartTime = ""
         self.EndTime = ""
+        self.WorldLVRange = []
+        self.AddRandSecondRange = []
+        self.ReplenishCDMinutes = 0
+        self.ReplenishAuctionCount = 0
+        self.ReplenishItemID = 0
+        self.ReplenishEquipInfo = []
+        self.ReplenishEquipPlaces = []
         self.AuctionCount = 0
         self.RandMinuteRange = []
         self.ItemCountWeightList = []
@@ -657,11 +708,18 @@
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetStartTime(self): return self.StartTime # 开启时间
     def GetEndTime(self): return self.EndTime # 结束时间
-    def GetAuctionCount(self): return self.AuctionCount # 上架次数
-    def GetRandMinuteRange(self): return self.RandMinuteRange # 上架随机间隔分钟下限|上限
-    def GetItemCountWeightList(self): return self.ItemCountWeightList # 上架随机件数权重列表, [[权重, 件数], ...]
-    def GetAuctionItemWeightList(self): return self.AuctionItemWeightList # 上架物品随机权重, [[权重, 物品ID],[权重, [阶,颜色,部位集合,是否套装,星级]] ...]
-    def GetRandMailKeyList(self): return self.RandMailKeyList # 上架随机邮件列表,有配置时上架的时候在线玩家会收到一封上架邮件提醒
+    def GetWorldLVRange(self): return self.WorldLVRange # 世界等级范围限制
+    def GetAddRandSecondRange(self): return self.AddRandSecondRange # 每件拍品随机间隔上架秒数 上限|下限
+    def GetReplenishCDMinutes(self): return self.ReplenishCDMinutes # 动态补充拍品间隔分钟
+    def GetReplenishAuctionCount(self): return self.ReplenishAuctionCount # 动态补充拍品保底数
+    def GetReplenishItemID(self): return self.ReplenishItemID # 动态补充物品ID
+    def GetReplenishEquipInfo(self): return self.ReplenishEquipInfo # 动态补充装备信息 [阶,颜色,是否套装]
+    def GetReplenishEquipPlaces(self): return self.ReplenishEquipPlaces # 动态补充上架装备位列表
+    def GetAuctionCount(self): return self.AuctionCount # 指定上架次数
+    def GetRandMinuteRange(self): return self.RandMinuteRange # 指定上架随机间隔分钟下限|上限
+    def GetItemCountWeightList(self): return self.ItemCountWeightList # 指定上架随机件数权重列表, [[权重, 件数], ...]
+    def GetAuctionItemWeightList(self): return self.AuctionItemWeightList # 指定上架物品随机权重, [[权重, 物品ID],[权重, [阶,颜色,部位集合,是否套装,星级]] ...]
+    def GetRandMailKeyList(self): return self.RandMailKeyList # 指定上架随机邮件列表,有配置时上架的时候在线玩家会收到一封上架邮件提醒
 
 # 日常活动表
 class IPY_DailyAction():
@@ -871,7 +929,8 @@
         self.NoUpdataCnt = 0
         self.StoneNPCID = 0
         self.RebornPreNotifyTime = 0
-        self.SourceName = ""
+        self.SourceName = ""
+        self.CanAssist = 0
         return
         
     def GetNPCID(self): return self.NPCID # ID
@@ -882,7 +941,19 @@
     def GetNoUpdataCnt(self): return self.NoUpdataCnt # 多少次未更新实时在线数量字段时强制更新
     def GetStoneNPCID(self): return self.StoneNPCID # 墓碑NPCID
     def GetRebornPreNotifyTime(self): return self.RebornPreNotifyTime # 复活前X秒通知
-    def GetSourceName(self): return self.SourceName # BOSS来源
+    def GetSourceName(self): return self.SourceName # BOSS来源
+    def GetCanAssist(self): return self.CanAssist # 是否可协助
+
+# Boss首杀
+class IPY_BOSSFirstKill():
+    
+    def __init__(self):
+        self.NPCID = 0
+        self.ServerFirstKillPlayerAward = []
+        return
+        
+    def GetNPCID(self): return self.NPCID # ID
+    def GetServerFirstKillPlayerAward(self): return self.ServerFirstKillPlayerAward #  全服首杀玩家奖励 [[物品ID,个数,是否拍品], ...]
 
 # 宴会题库表
 class IPY_QuestionBank():
@@ -1602,6 +1673,27 @@
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
     def GetLVLimit(self): return self.LVLimit # 限制等级
 
+# 装备升星表
+class IPY_EquipStarUp():
+    
+    def __init__(self):
+        self.ClassLV = 0
+        self.EquipPlace = 0
+        self.Star = 0
+        self.CostEquipPlace = []
+        self.IsJobLimit = 0
+        self.CostEquipColor = []
+        self.UnSuitRate = 0
+        return
+        
+    def GetClassLV(self): return self.ClassLV # 阶级
+    def GetEquipPlace(self): return self.EquipPlace # 装备位
+    def GetStar(self): return self.Star # 星数
+    def GetCostEquipPlace(self): return self.CostEquipPlace # 可用装备部位
+    def GetIsJobLimit(self): return self.IsJobLimit # 是否只用本职业装备材料
+    def GetCostEquipColor(self): return self.CostEquipColor # 可用装备品质
+    def GetUnSuitRate(self): return self.UnSuitRate # 单件非套装加成概率
+
 # 仙盟联赛排名奖励表
 class IPY_FamilyWarRankAward():
     
@@ -1614,6 +1706,17 @@
     def GetWarWorldLV(self): return self.WarWorldLV # 联赛世界等级
     def GetWarRank(self): return self.WarRank # 联赛排名
     def GetRankAuctionItem(self): return self.RankAuctionItem # 拍品奖励[[拍品ID,个数], ...]
+
+# 协助感谢礼盒表
+class IPY_AssistThanksGift():
+    
+    def __init__(self):
+        self.GiftID = 0
+        self.AssistAwardCount = 0
+        return
+        
+    def GetGiftID(self): return self.GiftID # 礼盒物品ID
+    def GetAssistAwardCount(self): return self.AssistAwardCount #  协助奖励每日次数
 
 # 缥缈仙域表
 class IPY_FairyDomain():
@@ -1654,6 +1757,8 @@
         self.ipyConfigEx = {}
         self.ipyFuncConfigCache = self.__LoadFileData("FuncConfig", IPY_FuncConfig)
         self.ipyFuncConfigLen = len(self.ipyFuncConfigCache)
+        self.ipyCreateRoleLimitServerCache = self.__LoadFileData("CreateRoleLimitServer", IPY_CreateRoleLimitServer)
+        self.ipyCreateRoleLimitServerLen = len(self.ipyCreateRoleLimitServerCache)
         self.ipyWorldLVCache = self.__LoadFileData("WorldLV", IPY_WorldLV)
         self.ipyWorldLVLen = len(self.ipyWorldLVCache)
         self.ipyFamilyCache = self.__LoadFileData("Family", IPY_Family)
@@ -1686,6 +1791,8 @@
         self.ipyChinMapLen = len(self.ipyChinMapCache)
         self.ipyBOSSInfoCache = self.__LoadFileData("BOSSInfo", IPY_BOSSInfo)
         self.ipyBOSSInfoLen = len(self.ipyBOSSInfoCache)
+        self.ipyBOSSFirstKillCache = self.__LoadFileData("BOSSFirstKill", IPY_BOSSFirstKill)
+        self.ipyBOSSFirstKillLen = len(self.ipyBOSSFirstKillCache)
         self.ipyQuestionBankCache = self.__LoadFileData("QuestionBank", IPY_QuestionBank)
         self.ipyQuestionBankLen = len(self.ipyQuestionBankCache)
         self.ipyFamilyRedPackCache = self.__LoadFileData("FamilyRedPack", IPY_FamilyRedPack)
@@ -1746,8 +1853,12 @@
         self.ipyNewUniquenessArriveLen = len(self.ipyNewUniquenessArriveCache)
         self.ipyActLuckyTreasureCache = self.__LoadFileData("ActLuckyTreasure", IPY_ActLuckyTreasure)
         self.ipyActLuckyTreasureLen = len(self.ipyActLuckyTreasureCache)
+        self.ipyEquipStarUpCache = self.__LoadFileData("EquipStarUp", IPY_EquipStarUp)
+        self.ipyEquipStarUpLen = len(self.ipyEquipStarUpCache)
         self.ipyFamilyWarRankAwardCache = self.__LoadFileData("FamilyWarRankAward", IPY_FamilyWarRankAward)
         self.ipyFamilyWarRankAwardLen = len(self.ipyFamilyWarRankAwardCache)
+        self.ipyAssistThanksGiftCache = self.__LoadFileData("AssistThanksGift", IPY_AssistThanksGift)
+        self.ipyAssistThanksGiftLen = len(self.ipyAssistThanksGiftCache)
         self.ipyFairyDomainCache = self.__LoadFileData("FairyDomain", IPY_FairyDomain)
         self.ipyFairyDomainLen = len(self.ipyFairyDomainCache)
         Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
@@ -1918,6 +2029,8 @@
     
     def GetFuncConfigCount(self): return self.ipyFuncConfigLen
     def GetFuncConfigByIndex(self, index): return self.ipyFuncConfigCache[index]
+    def GetCreateRoleLimitServerCount(self): return self.ipyCreateRoleLimitServerLen
+    def GetCreateRoleLimitServerByIndex(self, index): return self.ipyCreateRoleLimitServerCache[index]
     def GetWorldLVCount(self): return self.ipyWorldLVLen
     def GetWorldLVByIndex(self, index): return self.ipyWorldLVCache[index]
     def GetFamilyCount(self): return self.ipyFamilyLen
@@ -1950,6 +2063,8 @@
     def GetChinMapByIndex(self, index): return self.ipyChinMapCache[index]
     def GetBOSSInfoCount(self): return self.ipyBOSSInfoLen
     def GetBOSSInfoByIndex(self, index): return self.ipyBOSSInfoCache[index]
+    def GetBOSSFirstKillCount(self): return self.ipyBOSSFirstKillLen
+    def GetBOSSFirstKillByIndex(self, index): return self.ipyBOSSFirstKillCache[index]
     def GetQuestionBankCount(self): return self.ipyQuestionBankLen
     def GetQuestionBankByIndex(self, index): return self.ipyQuestionBankCache[index]
     def GetFamilyRedPackCount(self): return self.ipyFamilyRedPackLen
@@ -2010,8 +2125,12 @@
     def GetNewUniquenessArriveByIndex(self, index): return self.ipyNewUniquenessArriveCache[index]
     def GetActLuckyTreasureCount(self): return self.ipyActLuckyTreasureLen
     def GetActLuckyTreasureByIndex(self, index): return self.ipyActLuckyTreasureCache[index]
+    def GetEquipStarUpCount(self): return self.ipyEquipStarUpLen
+    def GetEquipStarUpByIndex(self, index): return self.ipyEquipStarUpCache[index]
     def GetFamilyWarRankAwardCount(self): return self.ipyFamilyWarRankAwardLen
     def GetFamilyWarRankAwardByIndex(self, index): return self.ipyFamilyWarRankAwardCache[index]
+    def GetAssistThanksGiftCount(self): return self.ipyAssistThanksGiftLen
+    def GetAssistThanksGiftByIndex(self, index): return self.ipyAssistThanksGiftCache[index]
     def GetFairyDomainCount(self): return self.ipyFairyDomainLen
     def GetFairyDomainByIndex(self, index): return self.ipyFairyDomainCache[index]
 

--
Gitblit v1.8.0