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