From 7f7cdbf15426f9203a2fcf5268c295cd5f888eba Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 08 十一月 2019 21:01:50 +0800
Subject: [PATCH] 8333 【主干】【后端】boss之家死亡在复活点复活,不退出副本(支持和中立地图一样可返回最后一次所在的野外地图;支持从副本退出后返回boss之家不重复扣除消耗)
---
ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 101 insertions(+), 5 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index ef4336f..421e496 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,11 @@
("DWORD", "StoneNPCID", 0),
("WORD", "RebornPreNotifyTime", 0),
("char", "SourceName", 0),
+ ),
+
+ "BOSSFirstKill":(
+ ("DWORD", "NPCID", 1),
+ ("list", "ServerFirstKillPlayerAward", 0),
),
"QuestionBank":(
@@ -535,6 +552,16 @@
("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),
@@ -567,6 +594,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 +683,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 +702,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():
@@ -883,6 +935,17 @@
def GetStoneNPCID(self): return self.StoneNPCID # 墓碑NPCID
def GetRebornPreNotifyTime(self): return self.RebornPreNotifyTime # 复活前X秒通知
def GetSourceName(self): return self.SourceName # BOSS来源
+
+# 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 +1665,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():
@@ -1654,6 +1738,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 +1772,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,6 +1834,8 @@
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.ipyFairyDomainCache = self.__LoadFileData("FairyDomain", IPY_FairyDomain)
@@ -1918,6 +2008,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 +2042,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,6 +2104,8 @@
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 GetFairyDomainCount(self): return self.ipyFairyDomainLen
--
Gitblit v1.8.0