xdh
2019-04-11 3f5967eeefb1329d272e13e5823a7961ec0ea92c
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -501,6 +501,10 @@
                "DailyAction":(
                        ("DWORD", "DailyID", 1),
                        ("DWORD", "DayTimes", 0),
                        ("DWORD", "DayBuyTimes", 0),
                        ("DWORD", "BuyNeedMoney", 0),
                        ("DWORD", "DayItemAddTimes", 0),
                        ("DWORD", "DayItemID", 0),
                        ("BYTE", "DayResetType", 0),
                        ("DWORD", "WeekTimes", 0),
                        ("BYTE", "WeekResetType", 0),
@@ -509,46 +513,20 @@
                "EquipGSParam":(
                        ("BYTE", "ClassLV", 1),
                        ("BYTE", "EquipColor", 1),
                        ("BYTE", "EquipQualityLV", 1),
                        ("DWORD", "AtkPerC", 0),
                        ("DWORD", "DamagePerC", 0),
                        ("DWORD", "SuperHitRateC", 0),
                        ("BYTE", "IsSuit", 1),
                        ("DWORD", "BaseEquipMaxHPAddPerC", 0),
                        ("DWORD", "BaseEquipAtkAddPerC", 0),
                        ("DWORD", "SuperHitC", 0),
                        ("DWORD", "SuperHitPerC", 0),
                        ("DWORD", "DamReducePerC", 0),
                        ("DWORD", "MaxHPPerC", 0),
                        ("DWORD", "DefPerC", 0),
                        ("DWORD", "LuckyHitRateC", 0),
                        ("DWORD", "PetDamPerC", 0),
                        ("DWORD", "LuckyHitRateReduceC", 0),
                        ("DWORD", "LuckPerC", 0),
                        ("DWORD", "PerLVAtkC", 0),
                        ("DWORD", "MissRateC", 0),
                        ("DWORD", "HitRateC", 0),
                        ("DWORD", "DamBackPerC", 0),
                        ("DWORD", "PerLVMaxHPC", 0),
                        ("DWORD", "DropEquipPerC", 0),
                        ("DWORD", "DropMoneyPerC", 0),
                        ("DWORD", "IgnoreDefRateReduceC", 0),
                        ("DWORD", "DamChanceDefC", 0),
                        ("DWORD", "SuperHitReduceC", 0),
                        ("DWORD", "SkillAtkRateC", 0),
                        ("DWORD", "SpeedPerC", 0),
                        ("DWORD", "AtkSpeedC", 0),
                        ("DWORD", "SkillAtkRateReduceC", 0),
                        ("DWORD", "HitC", 0),
                        ("DWORD", "MissC", 0),
                        ("DWORD", "SkillAddPer1C", 0),
                        ("DWORD", "SkillAddPer2C", 0),
                        ("DWORD", "SkillAddPer3C", 0),
                        ("DWORD", "SkillAddPer4C", 0),
                        ("DWORD", "SkillAddPer5C", 0),
                        ("DWORD", "SkillAddPer6C", 0),
                        ("DWORD", "SkillAddPer7C", 0),
                        ("DWORD", "SkillReducePer1C", 0),
                        ("DWORD", "SkillReducePer2C", 0),
                        ("DWORD", "SkillReducePer3C", 0),
                        ("DWORD", "SkillReducePer4C", 0),
                        ("DWORD", "SkillReducePer5C", 0),
                        ("DWORD", "SkillReducePer6C", 0),
                        ("DWORD", "SkillReducePer7C", 0),
                        ),
                "Success":(
@@ -570,9 +548,9 @@
                        ("DWORD", "ID", 1),
                        ("BYTE", "TreasureType", 0),
                        ("DWORD", "PreTreasure", 0),
                        ("list", "SuccID", 0),
                        ("list", "Potentials", 0),
                        ("list", "SkillPower", 0),
                        ("DWORD", "FBMapID", 0),
                        ("DWORD", "FBLineID", 0),
                        ("DWORD", "NeedLV", 0),
                        ("dict", "NeedItem", 0),
                        ),
@@ -582,9 +560,6 @@
                        ("DWORD", "NeedExp", 0),
                        ("dict", "AddAttr", 0),
                        ("list", "UnLockSkill", 0),
                        ("DWORD", "ActiveMWID", 0),
                        ("list", "ItemAward", 0),
                        ("DWORD", "ActiveSoulID", 0),
                        ("DWORD", "PowerEx", 0),
                        ),
@@ -1388,7 +1363,8 @@
                "FamilyBossAward":(
                        ("list", "WorldLV", 0),
                        ("list", "Rank", 0),
                        ("list", "Award", 0),
                        ("list", "Award1", 0),
                        ("dict", "Award2", 0),
                        ),
                "ItemWashMax":(
@@ -1401,6 +1377,34 @@
                        ("BYTE", "LineID", 1),
                        ("list", "WorldLV", 0),
                        ("list", "Rank", 0),
                        ("list", "Award1", 0),
                        ("dict", "Award2", 0),
                        ),
                "FairyDomain":(
                        ("WORD", "ID", 1),
                        ("BYTE", "EventType", 0),
                        ("DWORD", "MapID", 0),
                        ("BYTE", "LineID", 0),
                        ("DWORD", "BossID", 0),
                        ("BYTE", "CostEnergy", 0),
                        ("BYTE", "NeedAlchemyLV", 0),
                        ("list", "NeedLV", 0),
                        ("DWORD", "Weight", 0),
                        ),
                "FairyAdventures":(
                        ("WORD", "ID", 1),
                        ("DWORD", "OpenServerDay", 0),
                        ("BYTE", "EventID", 0),
                        ("list", "Condition", 0),
                        ("list", "GearAward", 0),
                        ("list", "BasicAward", 0),
                        ),
                "FairyDomainAppoint":(
                        ("WORD", "Cnt", 1),
                        ("DWORD", "EventID", 0),
                        ("list", "Award", 0),
                        ),
                }
@@ -2383,6 +2387,10 @@
    def __init__(self):
        self.DailyID = 0
        self.DayTimes = 0
        self.DayBuyTimes = 0
        self.BuyNeedMoney = 0
        self.DayItemAddTimes = 0
        self.DayItemID = 0
        self.DayResetType = 0
        self.WeekTimes = 0
        self.WeekResetType = 0
@@ -2390,6 +2398,10 @@
        
    def GetDailyID(self): return self.DailyID # 活动ID
    def GetDayTimes(self): return self.DayTimes # 每日次数, 0为不限制
    def GetDayBuyTimes(self): return self.DayBuyTimes # 每日可购买次数
    def GetBuyNeedMoney(self): return self.BuyNeedMoney # 购买次数需要仙玉
    def GetDayItemAddTimes(self): return self.DayItemAddTimes # 每日可用物品增加次数
    def GetDayItemID(self): return self.DayItemID # 增加次数的物品ID
    def GetDayResetType(self): return self.DayResetType # 每日次数重置类型; 0-不重置,1-0点,2-5点
    def GetWeekTimes(self): return self.WeekTimes # 每周次数, 0为不限制
    def GetWeekResetType(self): return self.WeekResetType # 每周次数重置类型; 0-不重置,1-0点,2-5点
@@ -2400,90 +2412,38 @@
    def __init__(self):
        self.ClassLV = 0
        self.EquipColor = 0
        self.EquipQualityLV = 0
        self.AtkPerC = 0
        self.DamagePerC = 0
        self.SuperHitRateC = 0
        self.IsSuit = 0
        self.BaseEquipMaxHPAddPerC = 0
        self.BaseEquipAtkAddPerC = 0
        self.SuperHitC = 0
        self.SuperHitPerC = 0
        self.DamReducePerC = 0
        self.MaxHPPerC = 0
        self.DefPerC = 0
        self.LuckyHitRateC = 0
        self.PetDamPerC = 0
        self.LuckyHitRateReduceC = 0
        self.LuckPerC = 0
        self.PerLVAtkC = 0
        self.MissRateC = 0
        self.HitRateC = 0
        self.DamBackPerC = 0
        self.PerLVMaxHPC = 0
        self.DropEquipPerC = 0
        self.DropMoneyPerC = 0
        self.IgnoreDefRateReduceC = 0
        self.DamChanceDefC = 0
        self.SuperHitReduceC = 0
        self.SkillAtkRateC = 0
        self.SpeedPerC = 0
        self.AtkSpeedC = 0
        self.SkillAtkRateReduceC = 0
        self.HitC = 0
        self.MissC = 0
        self.SkillAddPer1C = 0
        self.SkillAddPer2C = 0
        self.SkillAddPer3C = 0
        self.SkillAddPer4C = 0
        self.SkillAddPer5C = 0
        self.SkillAddPer6C = 0
        self.SkillAddPer7C = 0
        self.SkillReducePer1C = 0
        self.SkillReducePer2C = 0
        self.SkillReducePer3C = 0
        self.SkillReducePer4C = 0
        self.SkillReducePer5C = 0
        self.SkillReducePer6C = 0
        self.SkillReducePer7C = 0
        self.MissC = 0
        return
        
    def GetClassLV(self): return self.ClassLV #  装备阶级
    def GetEquipColor(self): return self.EquipColor #  装备颜色
    def GetEquipQualityLV(self): return self.EquipQualityLV #  装备星级
    def GetAtkPerC(self): return self.AtkPerC #  攻击百分比系数
    def GetDamagePerC(self): return self.DamagePerC #  增加伤害系数
    def GetSuperHitRateC(self): return self.SuperHitRateC #  暴击率系数
    def GetIsSuit(self): return self.IsSuit #  是否套装
    def GetBaseEquipMaxHPAddPerC(self): return self.BaseEquipMaxHPAddPerC #  基础防具生命百分比系数
    def GetBaseEquipAtkAddPerC(self): return self.BaseEquipAtkAddPerC #  基础武器攻击百分比系数
    def GetSuperHitC(self): return self.SuperHitC #  暴击值系数
    def GetSuperHitPerC(self): return self.SuperHitPerC #  暴击值百分比系数
    def GetDamReducePerC(self): return self.DamReducePerC #  减少伤害系数
    def GetMaxHPPerC(self): return self.MaxHPPerC #  生命上限百分比系数
    def GetDefPerC(self): return self.DefPerC #  防御力百分比系数
    def GetLuckyHitRateC(self): return self.LuckyHitRateC #  会心一击率系数
    def GetPetDamPerC(self): return self.PetDamPerC #  灵宠伤害增加百分比系数
    def GetLuckyHitRateReduceC(self): return self.LuckyHitRateReduceC #  会心一击抗性系数
    def GetLuckPerC(self): return self.LuckPerC #  气运百分比系数
    def GetPerLVAtkC(self): return self.PerLVAtkC #  每级增加攻击力系数
    def GetMissRateC(self): return self.MissRateC #  闪避值百分比系数
    def GetHitRateC(self): return self.HitRateC #  命中力百分比系数
    def GetDamBackPerC(self): return self.DamBackPerC #  伤害反射百分比系数
    def GetPerLVMaxHPC(self): return self.PerLVMaxHPC #  每级增加生命值系数
    def GetDropEquipPerC(self): return self.DropEquipPerC #  增加装备掉落几率系数
    def GetDropMoneyPerC(self): return self.DropMoneyPerC #  增加掉落金币量百分比系数
    def GetIgnoreDefRateReduceC(self): return self.IgnoreDefRateReduceC #  无视防御抗性百分比系数
    def GetDamChanceDefC(self): return self.DamChanceDefC #  抵御百分比系数
    def GetSuperHitReduceC(self): return self.SuperHitReduceC #  暴击抗性百分比系数
    def GetSkillAtkRateC(self): return self.SkillAtkRateC #  技能伤害百分比系数
    def GetSpeedPerC(self): return self.SpeedPerC #  移动速度百分比系数
    def GetAtkSpeedC(self): return self.AtkSpeedC #  攻击速度系数
    def GetSkillAtkRateReduceC(self): return self.SkillAtkRateReduceC #  技能减伤百分比系数
    def GetHitC(self): return self.HitC #  命中系数
    def GetMissC(self): return self.MissC #  闪避系数
    def GetSkillAddPer1C(self): return self.SkillAddPer1C #  技能伤害增强1系数
    def GetSkillAddPer2C(self): return self.SkillAddPer2C #  技能伤害增强2系数
    def GetSkillAddPer3C(self): return self.SkillAddPer3C #  技能伤害增强3系数
    def GetSkillAddPer4C(self): return self.SkillAddPer4C #  技能伤害增强4系数
    def GetSkillAddPer5C(self): return self.SkillAddPer5C #  技能伤害增强5系数
    def GetSkillAddPer6C(self): return self.SkillAddPer6C #  技能伤害增强6系数
    def GetSkillAddPer7C(self): return self.SkillAddPer7C #  技能伤害增强7系数
    def GetSkillReducePer1C(self): return self.SkillReducePer1C #  受到技能伤害减少1系数
    def GetSkillReducePer2C(self): return self.SkillReducePer2C #  受到技能伤害减少2系数
    def GetSkillReducePer3C(self): return self.SkillReducePer3C #  受到技能伤害减少3系数
    def GetSkillReducePer4C(self): return self.SkillReducePer4C #  受到技能伤害减少4系数
    def GetSkillReducePer5C(self): return self.SkillReducePer5C #  受到技能伤害减少5系数
    def GetSkillReducePer6C(self): return self.SkillReducePer6C #  受到技能伤害减少6系数
    def GetSkillReducePer7C(self): return self.SkillReducePer7C #  受到技能伤害减少7系数
    def GetMissC(self): return self.MissC #  闪避系数
# 成就表
class IPY_Success():
@@ -2523,18 +2483,18 @@
        self.ID = 0
        self.TreasureType = 0
        self.PreTreasure = 0
        self.SuccID = []
        self.Potentials = []
        self.SkillPower = []
        self.FBMapID = 0
        self.FBLineID = 0
        self.NeedLV = 0
        self.NeedItem = {}
        return
        
    def GetID(self): return self.ID # ID
    def GetTreasureType(self): return self.TreasureType # 法宝类型
    def GetPreTreasure(self): return self.PreTreasure # 前置法宝
    def GetSuccID(self): return self.SuccID # 成就ID
    def GetPotentials(self): return self.Potentials # 技能潜力升级
    def GetSkillPower(self): return self.SkillPower # 技能解锁战力
    def GetFBMapID(self): return self.FBMapID # 副本ID
    def GetFBLineID(self): return self.FBLineID # 副本线路ID
    def GetNeedLV(self): return self.NeedLV # 需要等级
    def GetNeedItem(self): return self.NeedItem # 需要消耗物品
# 法宝升级表
@@ -2546,9 +2506,6 @@
        self.NeedExp = 0
        self.AddAttr = {}
        self.UnLockSkill = []
        self.ActiveMWID = 0
        self.ItemAward = []
        self.ActiveSoulID = 0
        self.PowerEx = 0
        return
        
@@ -2557,9 +2514,6 @@
    def GetNeedExp(self): return self.NeedExp # 需要经验
    def GetAddAttr(self): return self.AddAttr # 属性
    def GetUnLockSkill(self): return self.UnLockSkill # 解锁的技能
    def GetActiveMWID(self): return self.ActiveMWID # 激活法宝ID
    def GetItemAward(self): return self.ItemAward # 物品奖励[itemID,cnt,isbind]
    def GetActiveSoulID(self): return self.ActiveSoulID # 激活魂ID
    def GetPowerEx(self): return self.PowerEx # 额外固定战力
# 连续签到奖励表
@@ -4255,12 +4209,14 @@
    def __init__(self):
        self.WorldLV = []
        self.Rank = []
        self.Award = []
        self.Award1 = []
        self.Award2 = {}
        return
        
    def GetWorldLV(self): return self.WorldLV # 世界等级
    def GetRank(self): return self.Rank # 排名
    def GetAward(self): return self.Award # 奖励 [[独立概率万分率,[物品ID,数量,是否拍品]],..]
    def GetAward1(self): return self.Award1 # 奖励 [[独立概率万分率,[物品ID,数量,是否拍品]],..]
    def GetAward2(self): return self.Award2 # 饼图奖励{随机次数:[(概率,[物品ID,数量,是否拍品]),..]}
# 装备洗练等级上限
class IPY_ItemWashMax():
@@ -4282,13 +4238,72 @@
        self.LineID = 0
        self.WorldLV = []
        self.Rank = []
        self.Award = []
        self.Award1 = []
        self.Award2 = {}
        return
        
    def GetLineID(self): return self.LineID #  线路ID
    def GetWorldLV(self): return self.WorldLV # 世界等级
    def GetRank(self): return self.Rank # 排名
    def GetAward(self): return self.Award # 奖励 [[独立概率万分率,[物品ID,数量,是否拍品]],..]
    def GetAward1(self): return self.Award1 # 奖励 [[独立概率万分率,[物品ID,数量,是否拍品]],..]
    def GetAward2(self): return self.Award2 # 饼图奖励{随机次数:[(概率,[物品ID,数量,是否拍品]),..]}
# 缥缈仙域表
class IPY_FairyDomain():
    def __init__(self):
        self.ID = 0
        self.EventType = 0
        self.MapID = 0
        self.LineID = 0
        self.BossID = 0
        self.CostEnergy = 0
        self.NeedAlchemyLV = 0
        self.NeedLV = []
        self.Weight = 0
        return
    def GetID(self): return self.ID # 事件编号
    def GetEventType(self): return self.EventType # 事件类型
    def GetMapID(self): return self.MapID # 副本id
    def GetLineID(self): return self.LineID # 副本线路id
    def GetBossID(self): return self.BossID # 副本BossID
    def GetCostEnergy(self): return self.CostEnergy # 消耗体力
    def GetNeedAlchemyLV(self): return self.NeedAlchemyLV # 出现的炼丹等级要求
    def GetNeedLV(self): return self.NeedLV # 出现的玩家等级要求
    def GetWeight(self): return self.Weight # 权重
# 缥缈奇遇表
class IPY_FairyAdventures():
    def __init__(self):
        self.ID = 0
        self.OpenServerDay = 0
        self.EventID = 0
        self.Condition = []
        self.GearAward = []
        self.BasicAward = []
        return
    def GetID(self): return self.ID # ΨһID
    def GetOpenServerDay(self): return self.OpenServerDay # 开服天
    def GetEventID(self): return self.EventID # 事件编号
    def GetCondition(self): return self.Condition # 条件
    def GetGearAward(self): return self.GearAward # 档位奖励
    def GetBasicAward(self): return self.BasicAward # 保底奖励
# 缥缈仙域定制表
class IPY_FairyDomainAppoint():
    def __init__(self):
        self.Cnt = 0
        self.EventID = 0
        self.Award = []
        return
    def GetCnt(self): return self.Cnt # 次数
    def GetEventID(self): return self.EventID # 事件编号
    def GetAward(self): return self.Award # 定制奖励(没配走正常奖励规则)[[物品ID,数量,是否拍品],..]
def Log(msg, playerID=0, par=0):
@@ -4594,6 +4609,12 @@
        self.ipyItemWashMaxLen = len(self.ipyItemWashMaxCache)
        self.ipyHorsePetBossAwardCache = self.__LoadFileData("HorsePetBossAward", IPY_HorsePetBossAward)
        self.ipyHorsePetBossAwardLen = len(self.ipyHorsePetBossAwardCache)
        self.ipyFairyDomainCache = self.__LoadFileData("FairyDomain", IPY_FairyDomain)
        self.ipyFairyDomainLen = len(self.ipyFairyDomainCache)
        self.ipyFairyAdventuresCache = self.__LoadFileData("FairyAdventures", IPY_FairyAdventures)
        self.ipyFairyAdventuresLen = len(self.ipyFairyAdventuresCache)
        self.ipyFairyDomainAppointCache = self.__LoadFileData("FairyDomainAppoint", IPY_FairyDomainAppoint)
        self.ipyFairyDomainAppointLen = len(self.ipyFairyDomainAppointCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
        Log("IPY_DataMgr InitOK!")
        return
@@ -5040,6 +5061,12 @@
    def GetItemWashMaxByIndex(self, index): return self.ipyItemWashMaxCache[index]
    def GetHorsePetBossAwardCount(self): return self.ipyHorsePetBossAwardLen
    def GetHorsePetBossAwardByIndex(self, index): return self.ipyHorsePetBossAwardCache[index]
    def GetFairyDomainCount(self): return self.ipyFairyDomainLen
    def GetFairyDomainByIndex(self, index): return self.ipyFairyDomainCache[index]
    def GetFairyAdventuresCount(self): return self.ipyFairyAdventuresLen
    def GetFairyAdventuresByIndex(self, index): return self.ipyFairyAdventuresCache[index]
    def GetFairyDomainAppointCount(self): return self.ipyFairyDomainAppointLen
    def GetFairyDomainAppointByIndex(self, index): return self.ipyFairyDomainAppointCache[index]
IPYData = IPY_DataMgr()
def IPY_Data(): return IPYData