hch
2019-05-14 3ea80a39cf950e4dd7f65f44b3487b6787f45f4a
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -44,6 +44,7 @@
                "RolePoint":(
                        ("BYTE", "AttrID", 1),
                        ("dict", "AddAttrInfoPerPoint", 0),
                        ("BYTE", "FightPowerPerPoint", 0),
                        ("dict", "PointQualityAttrIDDict", 0),
                        ("dict", "PointQualityAttrValueDict", 0),
                        ("list", "PointQualityIntervalList", 0),
@@ -54,6 +55,7 @@
                        ("DWORD", "NeedLV", 0),
                        ("DWORD", "NeedItemID", 0),
                        ("WORD", "NeedItemCnt", 0),
                        ("list", "NeedEquip", 0),
                        ("list", "AddAttrType", 0),
                        ("list", "AddAttrNum", 0),
                        ("DWORD", "BossID", 0),
@@ -339,6 +341,10 @@
                        ("DWORD", "LostHPPerSecond", 0),
                        ("BYTE", "MaxPlayerCount", 0),
                        ("DWORD", "LostHPPerSecondEx", 0),
                        ("DWORD", "FightPowerMin", 0),
                        ("DWORD", "FightPowerMax", 0),
                        ("DWORD", "EveryFightPower", 0),
                        ("DWORD", "EveryFightPowerLostHPEx", 0),
                        ),
                "EquipSuitAttr":(
@@ -1293,15 +1299,6 @@
                        ("DWORD", "ZhuXianScore", 0),
                        ),
                "ZhuXianTower":(
                        ("DWORD", "ID", 1),
                        ("DWORD", "NPCID", 0),
                        ("list", "FirstAward", 0),
                        ("dict", "GradeAward", 0),
                        ("WORD", "UnLockEquipPlace", 0),
                        ("DWORD", "NeedPower", 0),
                        ),
                "ZhuXianEquipDecompose":(
                        ("BYTE", "ClassLV", 1),
                        ("dict", "DecomposeInfo", 0),
@@ -1383,6 +1380,7 @@
                        ("BYTE", "EquipPlace", 1),
                        ("BYTE", "Star", 1),
                        ("list", "CostEquipPlace", 0),
                        ("BYTE", "IsJobLimit", 0),
                        ("list", "CostEquipColor", 0),
                        ("BYTE", "CostEquipCnt", 0),
                        ("BYTE", "SuitTotalRate", 0),
@@ -1461,6 +1459,15 @@
                        ("DWORD", "MainSkillID", 0),
                        ("DWORD", "NeedLV", 0),
                        ),
                "SkyTower":(
                        ("DWORD", "FloorID", 1),
                        ("DWORD", "BossID", 0),
                        ("dict", "Reward", 0),
                        ("WORD", "NeedLV", 0),
                        ("DWORD", "FightPower", 0),
                        ("BYTE", "IsNotify", 0),
                        ),
                }
@@ -1489,13 +1496,15 @@
    def __init__(self):
        self.AttrID = 0
        self.AddAttrInfoPerPoint = {}
        self.FightPowerPerPoint = 0
        self.PointQualityAttrIDDict = {}
        self.PointQualityAttrValueDict = {}
        self.PointQualityIntervalList = []
        return
        
    def GetAttrID(self): return self.AttrID # 属性ID
    def GetAddAttrInfoPerPoint(self): return self.AddAttrInfoPerPoint # 每点增加属性信息
    def GetAddAttrInfoPerPoint(self): return self.AddAttrInfoPerPoint # 每点增加属性信息 {"职业":[[每X点,属性ID,值], ...], ..}
    def GetFightPowerPerPoint(self): return self.FightPowerPerPoint # 每点附加战斗力
    def GetPointQualityAttrIDDict(self): return self.PointQualityAttrIDDict # 点数品质进阶增加属性ID, 根据职业区分
    def GetPointQualityAttrValueDict(self): return self.PointQualityAttrValueDict # 点数品质进阶增加属性值列表, 根据职业区分
    def GetPointQualityIntervalList(self): return self.PointQualityIntervalList # 点数品质进阶属性点区间列表
@@ -1508,6 +1517,7 @@
        self.NeedLV = 0
        self.NeedItemID = 0
        self.NeedItemCnt = 0
        self.NeedEquip = []
        self.AddAttrType = []
        self.AddAttrNum = []
        self.BossID = 0
@@ -1520,6 +1530,7 @@
    def GetNeedLV(self): return self.NeedLV # 需要等级
    def GetNeedItemID(self): return self.NeedItemID # 需要道具ID
    def GetNeedItemCnt(self): return self.NeedItemCnt # 消耗的道具数量
    def GetNeedEquip(self): return self.NeedEquip # 需要8部位装备条件阶级|品质|是否套装
    def GetAddAttrType(self): return self.AddAttrType # 境界加成属性类型
    def GetAddAttrNum(self): return self.AddAttrNum # 境界加成属性值
    def GetBossID(self): return self.BossID # 渡劫bossid
@@ -2103,13 +2114,21 @@
        self.NPCID = 0
        self.LostHPPerSecond = 0
        self.MaxPlayerCount = 0
        self.LostHPPerSecondEx = 0
        self.LostHPPerSecondEx = 0
        self.FightPowerMin = 0
        self.FightPowerMax = 0
        self.EveryFightPower = 0
        self.EveryFightPowerLostHPEx = 0
        return
        
    def GetNPCID(self): return self.NPCID # NPCID
    def GetLostHPPerSecond(self): return self.LostHPPerSecond # 单人每秒掉血量
    def GetMaxPlayerCount(self): return self.MaxPlayerCount # 最大人数
    def GetLostHPPerSecondEx(self): return self.LostHPPerSecondEx # 每增加一人附加掉血量
    def GetLostHPPerSecondEx(self): return self.LostHPPerSecondEx # 每增加一人附加掉血量
    def GetFightPowerMin(self): return self.FightPowerMin # 标准战力
    def GetFightPowerMax(self): return self.FightPowerMax # 上限战力
    def GetEveryFightPower(self): return self.EveryFightPower # 每x点战力
    def GetEveryFightPowerLostHPEx(self): return self.EveryFightPowerLostHPEx # 每x点战力附加伤害
# 装备套装属性表
class IPY_EquipSuitAttr():
@@ -4114,25 +4133,6 @@
    def GetRealmLV(self): return self.RealmLV # 需要境界
    def GetZhuXianScore(self): return self.ZhuXianScore # 需要诛仙总评分
# 诛仙塔表
class IPY_ZhuXianTower():
    def __init__(self):
        self.ID = 0
        self.NPCID = 0
        self.FirstAward = []
        self.GradeAward = {}
        self.UnLockEquipPlace = 0
        self.NeedPower = 0
        return
    def GetID(self): return self.ID # 塔编号
    def GetNPCID(self): return self.NPCID # npcid
    def GetFirstAward(self): return self.FirstAward # 首次S级奖励
    def GetGradeAward(self): return self.GradeAward # 评级奖励
    def GetUnLockEquipPlace(self): return self.UnLockEquipPlace # 解锁的装备位
    def GetNeedPower(self): return self.NeedPower # 推荐战力
# 诛仙装备分解表
class IPY_ZhuXianEquipDecompose():
    
@@ -4303,6 +4303,7 @@
        self.EquipPlace = 0
        self.Star = 0
        self.CostEquipPlace = []
        self.IsJobLimit = 0
        self.CostEquipColor = []
        self.CostEquipCnt = 0
        self.SuitTotalRate = 0
@@ -4315,6 +4316,7 @@
    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 GetCostEquipCnt(self): return self.CostEquipCnt # 装备数量
    def GetSuitTotalRate(self): return self.SuitTotalRate # 全套装加成概率(非套50%)
@@ -4472,6 +4474,25 @@
    def GetElementSkillID(self): return self.ElementSkillID # 专精技能ID
    def GetMainSkillID(self): return self.MainSkillID # 主技能ID
    def GetNeedLV(self): return self.NeedLV # 选择需要等级
# 天星塔表
class IPY_SkyTower():
    def __init__(self):
        self.FloorID = 0
        self.BossID = 0
        self.Reward = {}
        self.NeedLV = 0
        self.FightPower = 0
        self.IsNotify = 0
        return
    def GetFloorID(self): return self.FloorID # 层
    def GetBossID(self): return self.BossID # bossID
    def GetReward(self): return self.Reward # 奖励
    def GetNeedLV(self): return self.NeedLV # 要求等级
    def GetFightPower(self): return self.FightPower # 推荐战力
    def GetIsNotify(self): return self.IsNotify # 是否广播
def Log(msg, playerID=0, par=0):
@@ -4753,8 +4774,6 @@
        self.ipyZhuXianSuitAttrLen = len(self.ipyZhuXianSuitAttrCache)
        self.ipyZhuXianBossCache = self.__LoadFileData("ZhuXianBoss", IPY_ZhuXianBoss)
        self.ipyZhuXianBossLen = len(self.ipyZhuXianBossCache)
        self.ipyZhuXianTowerCache = self.__LoadFileData("ZhuXianTower", IPY_ZhuXianTower)
        self.ipyZhuXianTowerLen = len(self.ipyZhuXianTowerCache)
        self.ipyZhuXianEquipDecomposeCache = self.__LoadFileData("ZhuXianEquipDecompose", IPY_ZhuXianEquipDecompose)
        self.ipyZhuXianEquipDecomposeLen = len(self.ipyZhuXianEquipDecomposeCache)
        self.ipyActFeastWeekPartyCache = self.__LoadFileData("ActFeastWeekParty", IPY_ActFeastWeekParty)
@@ -4795,6 +4814,8 @@
        self.ipyFBBuyBuffLen = len(self.ipyFBBuyBuffCache)
        self.ipySkillElementCache = self.__LoadFileData("SkillElement", IPY_SkillElement)
        self.ipySkillElementLen = len(self.ipySkillElementCache)
        self.ipySkyTowerCache = self.__LoadFileData("SkyTower", IPY_SkyTower)
        self.ipySkyTowerLen = len(self.ipySkyTowerCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
        Log("IPY_DataMgr InitOK!")
        return
@@ -5217,8 +5238,6 @@
    def GetZhuXianSuitAttrByIndex(self, index): return self.ipyZhuXianSuitAttrCache[index]
    def GetZhuXianBossCount(self): return self.ipyZhuXianBossLen
    def GetZhuXianBossByIndex(self, index): return self.ipyZhuXianBossCache[index]
    def GetZhuXianTowerCount(self): return self.ipyZhuXianTowerLen
    def GetZhuXianTowerByIndex(self, index): return self.ipyZhuXianTowerCache[index]
    def GetZhuXianEquipDecomposeCount(self): return self.ipyZhuXianEquipDecomposeLen
    def GetZhuXianEquipDecomposeByIndex(self, index): return self.ipyZhuXianEquipDecomposeCache[index]
    def GetActFeastWeekPartyCount(self): return self.ipyActFeastWeekPartyLen
@@ -5259,6 +5278,8 @@
    def GetFBBuyBuffByIndex(self, index): return self.ipyFBBuyBuffCache[index]
    def GetSkillElementCount(self): return self.ipySkillElementLen
    def GetSkillElementByIndex(self, index): return self.ipySkillElementCache[index]
    def GetSkyTowerCount(self): return self.ipySkyTowerLen
    def GetSkyTowerByIndex(self, index): return self.ipySkyTowerCache[index]
IPYData = IPY_DataMgr()
def IPY_Data(): return IPYData