ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -41,6 +41,14 @@
                        ("list", "Skills", 0),
                        ),
                "RolePoint":(
                        ("BYTE", "AttrID", 1),
                        ("dict", "AddAttrInfoPerPoint", 0),
                        ("BYTE", "PointQualityAttrID", 0),
                        ("list", "PointQualityAttrValueList", 0),
                        ("list", "PointQualityIntervalList", 0),
                        ),
                "Realm":(
                        ("WORD", "Lv", 1),
                        ("DWORD", "NeedLV", 0),
@@ -114,12 +122,6 @@
                        ("BYTE", "Type", 1),
                        ("BYTE", "Star", 1),
                        ("WORD", "LevelMax", 0),
                        ),
                "ItemPlusSumAttr":(
                        ("WORD", "PlusCntNeed", 1),
                        ("list", "AttrType", 0),
                        ("list", "AttrValue", 0),
                        ),
                "RoleEquipStars":(
@@ -198,13 +200,6 @@
                        ("DWORD", "CostItemID", 0),
                        ("BYTE", "CostItemCount", 0),
                        ("list", "GoldWashCostList", 0),
                        ),
                "EquipWashSpec":(
                        ("BYTE", "WashTypeNeed", 1),
                        ("BYTE", "WashLVNeed", 1),
                        ("list", "AddAttrType", 0),
                        ("list", "AddAttrValue", 0),
                        ),
                "AttrFruit":(
@@ -591,16 +586,6 @@
                        ("list", "ItemAward", 0),
                        ("DWORD", "ActiveSoulID", 0),
                        ("DWORD", "PowerEx", 0),
                        ),
                "TreasurePrivilege":(
                        ("DWORD", "PrivilegeID", 1),
                        ("eval", "EffectValue", 0),
                        ("DWORD", "SingleValue", 0),
                        ("DWORD", "MaxValue", 0),
                        ("dict", "AddAttr", 0),
                        ("list", "ItemAward", 0),
                        ("list", "SuccessList", 0),
                        ),
                "ContineSignAward":(
@@ -1411,6 +1396,13 @@
                        ("BYTE", "Star", 1),
                        ("WORD", "LevelMax", 0),
                        ),
                "HorsePetBossAward":(
                        ("BYTE", "LineID", 1),
                        ("list", "WorldLV", 0),
                        ("list", "Rank", 0),
                        ("list", "Award", 0),
                        ),
                }
@@ -1432,6 +1424,23 @@
    def GetLightType(self): return self.LightType # 点亮属性类型
    def GetLightAttribute(self): return self.LightAttribute # 点亮属性值
    def GetSkills(self): return self.Skills # 被动技能
# 灵根表
class IPY_RolePoint():
    def __init__(self):
        self.AttrID = 0
        self.AddAttrInfoPerPoint = {}
        self.PointQualityAttrID = 0
        self.PointQualityAttrValueList = []
        self.PointQualityIntervalList = []
        return
    def GetAttrID(self): return self.AttrID # 属性ID
    def GetAddAttrInfoPerPoint(self): return self.AddAttrInfoPerPoint # 每点增加属性信息
    def GetPointQualityAttrID(self): return self.PointQualityAttrID # 点数品质进阶增加属性ID
    def GetPointQualityAttrValueList(self): return self.PointQualityAttrValueList # 点数品质进阶增加属性值列表
    def GetPointQualityIntervalList(self): return self.PointQualityIntervalList # 点数品质进阶属性点区间列表
# 境界表
class IPY_Realm():
@@ -1589,19 +1598,6 @@
    def GetType(self): return self.Type # 按装备位对应类型查找
    def GetStar(self): return self.Star #  装备星数
    def GetLevelMax(self): return self.LevelMax # 强化等级上限
# 装备全身强化属性
class IPY_ItemPlusSumAttr():
    def __init__(self):
        self.PlusCntNeed = 0
        self.AttrType = []
        self.AttrValue = []
        return
    def GetPlusCntNeed(self): return self.PlusCntNeed # 全身强化等级
    def GetAttrType(self): return self.AttrType # 全身强化激活属性类型
    def GetAttrValue(self): return self.AttrValue # 全身强化激活属性值
# 装备全身星数属性
class IPY_RoleEquipStars():
@@ -1767,21 +1763,6 @@
    def GetCostItemID(self): return self.CostItemID #  固定消耗物品ID
    def GetCostItemCount(self): return self.CostItemCount #  固定消耗物品个数
    def GetGoldWashCostList(self): return self.GoldWashCostList #  仙玉洗练条数对应消耗
# 洗练特殊属性表
class IPY_EquipWashSpec():
    def __init__(self):
        self.WashTypeNeed = 0
        self.WashLVNeed = 0
        self.AddAttrType = []
        self.AddAttrValue = []
        return
    def GetWashTypeNeed(self): return self.WashTypeNeed #  所需装备归组类型
    def GetWashLVNeed(self): return self.WashLVNeed #  所需洗练等级
    def GetAddAttrType(self): return self.AddAttrType # 激活加成属性类型
    def GetAddAttrValue(self): return self.AddAttrValue # 激活加成属性值
# 属性果实表
class IPY_AttrFruit():
@@ -2580,27 +2561,6 @@
    def GetItemAward(self): return self.ItemAward # 物品奖励[itemID,cnt,isbind]
    def GetActiveSoulID(self): return self.ActiveSoulID # 激活魂ID
    def GetPowerEx(self): return self.PowerEx # 额外固定战力
# 法宝特权表
class IPY_TreasurePrivilege():
    def __init__(self):
        self.PrivilegeID = 0
        self.EffectValue = 0
        self.SingleValue = 0
        self.MaxValue = 0
        self.AddAttr = {}
        self.ItemAward = []
        self.SuccessList = []
        return
    def GetPrivilegeID(self): return self.PrivilegeID # 特权ID
    def GetEffectValue(self): return self.EffectValue # 特殊效果
    def GetSingleValue(self): return self.SingleValue # 进度
    def GetMaxValue(self): return self.MaxValue # 最大进度
    def GetAddAttr(self): return self.AddAttr # 属性
    def GetItemAward(self): return self.ItemAward # 物品奖励
    def GetSuccessList(self): return self.SuccessList # 需要完成成就
# 连续签到奖励表
class IPY_ContineSignAward():
@@ -4300,7 +4260,7 @@
        
    def GetWorldLV(self): return self.WorldLV # 世界等级
    def GetRank(self): return self.Rank # 排名
    def GetAward(self): return self.Award # 奖励 [[独立概率万分率,[物品ID,数量,拍品分组]],..]
    def GetAward(self): return self.Award # 奖励 [[独立概率万分率,[物品ID,数量,是否拍品]],..]
# 装备洗练等级上限
class IPY_ItemWashMax():
@@ -4314,6 +4274,21 @@
    def GetType(self): return self.Type # 按装备位对应类型查找
    def GetStar(self): return self.Star #  装备星数
    def GetLevelMax(self): return self.LevelMax # 洗练等级上限
# 骑宠Boss奖励表
class IPY_HorsePetBossAward():
    def __init__(self):
        self.LineID = 0
        self.WorldLV = []
        self.Rank = []
        self.Award = []
        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 Log(msg, playerID=0, par=0):
@@ -4341,6 +4316,8 @@
        self.ipyConfigEx = {}
        self.ipyDienstgradCache = self.__LoadFileData("Dienstgrad", IPY_Dienstgrad)
        self.ipyDienstgradLen = len(self.ipyDienstgradCache)
        self.ipyRolePointCache = self.__LoadFileData("RolePoint", IPY_RolePoint)
        self.ipyRolePointLen = len(self.ipyRolePointCache)
        self.ipyRealmCache = self.__LoadFileData("Realm", IPY_Realm)
        self.ipyRealmLen = len(self.ipyRealmCache)
        self.ipyGodWeaponCache = self.__LoadFileData("GodWeapon", IPY_GodWeapon)
@@ -4355,8 +4332,6 @@
        self.ipyItemPlusLen = len(self.ipyItemPlusCache)
        self.ipyItemPlusMaxCache = self.__LoadFileData("ItemPlusMax", IPY_ItemPlusMax)
        self.ipyItemPlusMaxLen = len(self.ipyItemPlusMaxCache)
        self.ipyItemPlusSumAttrCache = self.__LoadFileData("ItemPlusSumAttr", IPY_ItemPlusSumAttr)
        self.ipyItemPlusSumAttrLen = len(self.ipyItemPlusSumAttrCache)
        self.ipyRoleEquipStarsCache = self.__LoadFileData("RoleEquipStars", IPY_RoleEquipStars)
        self.ipyRoleEquipStarsLen = len(self.ipyRoleEquipStarsCache)
        self.ipyEquipLegendAttrCountCache = self.__LoadFileData("EquipLegendAttrCount", IPY_EquipLegendAttrCount)
@@ -4375,8 +4350,6 @@
        self.ipyRuneLen = len(self.ipyRuneCache)
        self.ipyEquipWashCache = self.__LoadFileData("EquipWash", IPY_EquipWash)
        self.ipyEquipWashLen = len(self.ipyEquipWashCache)
        self.ipyEquipWashSpecCache = self.__LoadFileData("EquipWashSpec", IPY_EquipWashSpec)
        self.ipyEquipWashSpecLen = len(self.ipyEquipWashSpecCache)
        self.ipyAttrFruitCache = self.__LoadFileData("AttrFruit", IPY_AttrFruit)
        self.ipyAttrFruitLen = len(self.ipyAttrFruitCache)
        self.ipyPetInfoCache = self.__LoadFileData("PetInfo", IPY_PetInfo)
@@ -4429,8 +4402,6 @@
        self.ipyTreasureLen = len(self.ipyTreasureCache)
        self.ipyTreasureUpCache = self.__LoadFileData("TreasureUp", IPY_TreasureUp)
        self.ipyTreasureUpLen = len(self.ipyTreasureUpCache)
        self.ipyTreasurePrivilegeCache = self.__LoadFileData("TreasurePrivilege", IPY_TreasurePrivilege)
        self.ipyTreasurePrivilegeLen = len(self.ipyTreasurePrivilegeCache)
        self.ipyContineSignAwardCache = self.__LoadFileData("ContineSignAward", IPY_ContineSignAward)
        self.ipyContineSignAwardLen = len(self.ipyContineSignAwardCache)
        self.ipySignAwardCache = self.__LoadFileData("SignAward", IPY_SignAward)
@@ -4621,6 +4592,8 @@
        self.ipyFamilyBossAwardLen = len(self.ipyFamilyBossAwardCache)
        self.ipyItemWashMaxCache = self.__LoadFileData("ItemWashMax", IPY_ItemWashMax)
        self.ipyItemWashMaxLen = len(self.ipyItemWashMaxCache)
        self.ipyHorsePetBossAwardCache = self.__LoadFileData("HorsePetBossAward", IPY_HorsePetBossAward)
        self.ipyHorsePetBossAwardLen = len(self.ipyHorsePetBossAwardCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
        Log("IPY_DataMgr InitOK!")
        return
@@ -4789,6 +4762,8 @@
    
    def GetDienstgradCount(self): return self.ipyDienstgradLen
    def GetDienstgradByIndex(self, index): return self.ipyDienstgradCache[index]
    def GetRolePointCount(self): return self.ipyRolePointLen
    def GetRolePointByIndex(self, index): return self.ipyRolePointCache[index]
    def GetRealmCount(self): return self.ipyRealmLen
    def GetRealmByIndex(self, index): return self.ipyRealmCache[index]
    def GetGodWeaponCount(self): return self.ipyGodWeaponLen
@@ -4803,8 +4778,6 @@
    def GetItemPlusByIndex(self, index): return self.ipyItemPlusCache[index]
    def GetItemPlusMaxCount(self): return self.ipyItemPlusMaxLen
    def GetItemPlusMaxByIndex(self, index): return self.ipyItemPlusMaxCache[index]
    def GetItemPlusSumAttrCount(self): return self.ipyItemPlusSumAttrLen
    def GetItemPlusSumAttrByIndex(self, index): return self.ipyItemPlusSumAttrCache[index]
    def GetRoleEquipStarsCount(self): return self.ipyRoleEquipStarsLen
    def GetRoleEquipStarsByIndex(self, index): return self.ipyRoleEquipStarsCache[index]
    def GetEquipLegendAttrCountCount(self): return self.ipyEquipLegendAttrCountLen
@@ -4823,8 +4796,6 @@
    def GetRuneByIndex(self, index): return self.ipyRuneCache[index]
    def GetEquipWashCount(self): return self.ipyEquipWashLen
    def GetEquipWashByIndex(self, index): return self.ipyEquipWashCache[index]
    def GetEquipWashSpecCount(self): return self.ipyEquipWashSpecLen
    def GetEquipWashSpecByIndex(self, index): return self.ipyEquipWashSpecCache[index]
    def GetAttrFruitCount(self): return self.ipyAttrFruitLen
    def GetAttrFruitByIndex(self, index): return self.ipyAttrFruitCache[index]
    def GetPetInfoCount(self): return self.ipyPetInfoLen
@@ -4877,8 +4848,6 @@
    def GetTreasureByIndex(self, index): return self.ipyTreasureCache[index]
    def GetTreasureUpCount(self): return self.ipyTreasureUpLen
    def GetTreasureUpByIndex(self, index): return self.ipyTreasureUpCache[index]
    def GetTreasurePrivilegeCount(self): return self.ipyTreasurePrivilegeLen
    def GetTreasurePrivilegeByIndex(self, index): return self.ipyTreasurePrivilegeCache[index]
    def GetContineSignAwardCount(self): return self.ipyContineSignAwardLen
    def GetContineSignAwardByIndex(self, index): return self.ipyContineSignAwardCache[index]
    def GetSignAwardCount(self): return self.ipySignAwardLen
@@ -5069,6 +5038,8 @@
    def GetFamilyBossAwardByIndex(self, index): return self.ipyFamilyBossAwardCache[index]
    def GetItemWashMaxCount(self): return self.ipyItemWashMaxLen
    def GetItemWashMaxByIndex(self, index): return self.ipyItemWashMaxCache[index]
    def GetHorsePetBossAwardCount(self): return self.ipyHorsePetBossAwardLen
    def GetHorsePetBossAwardByIndex(self, index): return self.ipyHorsePetBossAwardCache[index]
IPYData = IPY_DataMgr()
def IPY_Data(): return IPYData