ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -43,16 +43,12 @@
                "Realm":(
                        ("WORD", "Lv", 1),
                        ("BYTE", "IsBigRealm", 0),
                        ("DWORD", "NeedPoint", 0),
                        ("DWORD", "NeedLV", 0),
                        ("DWORD", "NeedItemID", 0),
                        ("WORD", "NeedItemCnt", 0),
                        ("dict", "NeedActiveTreasure", 0),
                        ("list", "AddAttrType", 0),
                        ("list", "AddAttrNum", 0),
                        ("DWORD", "BossID", 0),
                        ("dict", "SitTime", 0),
                        ("dict", "TeamAward", 0),
                        ),
                "GodWeapon":(
@@ -127,6 +123,31 @@
                        ("BYTE", "StarsNeed", 1),
                        ("list", "AttrType", 0),
                        ("list", "AttrValue", 0),
                        ),
                "EquipLegendAttrCount":(
                        ("BYTE", "ItemType", 1),
                        ("BYTE", "ItemColor", 1),
                        ("BYTE", "IsSuit", 1),
                        ("list", "LegendAttrCountInfo", 0),
                        ),
                "EquipLegendAttrType":(
                        ("BYTE", "ItemType", 1),
                        ("dict", "LegendAttrTypeLib", 0),
                        ),
                "EquipLegendAttrLib":(
                        ("BYTE", "LegendAttrID", 1),
                        ("dict", "LegendAttrLib", 0),
                        ),
                "EquipLegendAttrValue":(
                        ("BYTE", "ItemType", 1),
                        ("BYTE", "ItemClassLV", 1),
                        ("BYTE", "ItemColor", 1),
                        ("BYTE", "IsSuit", 1),
                        ("dict", "LVLegendAttrLibNumInfo", 0),
                        ),
                "Dogz":(
@@ -1136,14 +1157,6 @@
                        ("list", "ItemList", 0),
                        ),
                "GodWeaponEffect":(
                        ("BYTE", "GWType", 0),
                        ("WORD", "Level", 0),
                        ("char", "NotifyCode", 0),
                        ("DWORD", "FightPower", 0),
                        ("dict", "Attr", 0),
                        ),
                "CrossRealmPKDan":(
                        ("BYTE", "DanLV", 1),
                        ("WORD", "LVUpScore", 0),
@@ -1382,6 +1395,18 @@
                        ("dict", "CostItem", 0),
                        ("dict", "Attr", 0),
                        ),
                "FamilyBossAward":(
                        ("list", "WorldLV", 0),
                        ("list", "Rank", 0),
                        ("list", "Award", 0),
                        ),
                "ItemWashMax":(
                        ("BYTE", "Type", 1),
                        ("BYTE", "Star", 1),
                        ("WORD", "LevelMax", 0),
                        ),
                }
@@ -1409,29 +1434,21 @@
    
    def __init__(self):
        self.Lv = 0
        self.IsBigRealm = 0
        self.NeedPoint = 0
        self.NeedLV = 0
        self.NeedItemID = 0
        self.NeedItemCnt = 0
        self.NeedActiveTreasure = {}
        self.AddAttrType = []
        self.AddAttrNum = []
        self.BossID = 0
        self.SitTime = {}
        self.TeamAward = {}
        self.BossID = 0
        return
        
    def GetLv(self): return self.Lv # 境界等级
    def GetIsBigRealm(self): return self.IsBigRealm # 是否大境界
    def GetNeedPoint(self): return self.NeedPoint # 开启渡劫需要修炼点
    def GetNeedItemID(self): return self.NeedItemID # 开启渡劫需要道具ID
    def GetNeedItemCnt(self): return self.NeedItemCnt # 开启渡劫消耗的道具数量
    def GetNeedActiveTreasure(self): return self.NeedActiveTreasure # 开启渡劫需要激活法宝条件
    def GetNeedLV(self): return self.NeedLV # 需要等级
    def GetNeedItemID(self): return self.NeedItemID # 需要道具ID
    def GetNeedItemCnt(self): return self.NeedItemCnt # 消耗的道具数量
    def GetAddAttrType(self): return self.AddAttrType # 境界加成属性类型
    def GetAddAttrNum(self): return self.AddAttrNum # 境界加成属性值
    def GetBossID(self): return self.BossID # 渡劫bossid
    def GetSitTime(self): return self.SitTime # 打坐时间
    def GetTeamAward(self): return self.TeamAward # 组队帮打的人的奖励
    def GetBossID(self): return self.BossID # 渡劫bossid
# 神兵表
class IPY_GodWeapon():
@@ -1588,6 +1605,60 @@
    def GetStarsNeed(self): return self.StarsNeed # 全身星数
    def GetAttrType(self): return self.AttrType # 属性类型
    def GetAttrValue(self): return self.AttrValue # 属性值
# 装备传奇属性条数表
class IPY_EquipLegendAttrCount():
    def __init__(self):
        self.ItemType = 0
        self.ItemColor = 0
        self.IsSuit = 0
        self.LegendAttrCountInfo = []
        return
    def GetItemType(self): return self.ItemType # 物品类型
    def GetItemColor(self): return self.ItemColor # 物品颜色
    def GetIsSuit(self): return self.IsSuit # 是否套装
    def GetLegendAttrCountInfo(self): return self.LegendAttrCountInfo # 传奇属性条数信息 [[条数, [属性类型库编号, ...]], ...]
# 装备传奇属性类型表
class IPY_EquipLegendAttrType():
    def __init__(self):
        self.ItemType = 0
        self.LegendAttrTypeLib = {}
        return
    def GetItemType(self): return self.ItemType # 物品类型
    def GetLegendAttrTypeLib(self): return self.LegendAttrTypeLib # 传奇属性类型库 {属性类型库编号:[属性ID,...], ...}
# 装备传奇属性值库表
class IPY_EquipLegendAttrLib():
    def __init__(self):
        self.LegendAttrID = 0
        self.LegendAttrLib = {}
        return
    def GetLegendAttrID(self): return self.LegendAttrID # 传奇属性ID
    def GetLegendAttrLib(self): return self.LegendAttrLib # 属性库信息 {库编号:[随机数值, ...], ...}
# 装备传奇属性等级数值表
class IPY_EquipLegendAttrValue():
    def __init__(self):
        self.ItemType = 0
        self.ItemClassLV = 0
        self.ItemColor = 0
        self.IsSuit = 0
        self.LVLegendAttrLibNumInfo = {}
        return
    def GetItemType(self): return self.ItemType # 物品类型
    def GetItemClassLV(self): return self.ItemClassLV # 物品阶级
    def GetItemColor(self): return self.ItemColor # 物品颜色
    def GetIsSuit(self): return self.IsSuit # 是否套装
    def GetLVLegendAttrLibNumInfo(self): return self.LVLegendAttrLibNumInfo # 属性ID等级段对应数值库编号 {属性ID:{等级:库编号, ...}}
# 神兽表
class IPY_Dogz():
@@ -3698,23 +3769,6 @@
    def GetLVLimit(self): return self.LVLimit # 等级范围
    def GetItemList(self): return self.ItemList # 奖励
# 神兵特效表
class IPY_GodWeaponEffect():
    def __init__(self):
        self.GWType = 0
        self.Level = 0
        self.NotifyCode = ""
        self.FightPower = 0
        self.Attr = {}
        return
    def GetGWType(self): return self.GWType # 神兵类型
    def GetLevel(self): return self.Level # 神兵等级
    def GetNotifyCode(self): return self.NotifyCode # 广播
    def GetFightPower(self): return self.FightPower # 增加战力
    def GetAttr(self): return self.Attr # 属性加成
# 跨服竞技场段位表
class IPY_CrossRealmPKDan():
    
@@ -4222,6 +4276,32 @@
    def GetNeedPlusLV(self): return self.NeedPlusLV # 需要强化等级
    def GetCostItem(self): return self.CostItem # 消耗材料
    def GetAttr(self): return self.Attr # 属性
# 仙盟Boss奖励表
class IPY_FamilyBossAward():
    def __init__(self):
        self.WorldLV = []
        self.Rank = []
        self.Award = []
        return
    def GetWorldLV(self): return self.WorldLV # 世界等级
    def GetRank(self): return self.Rank # 排名
    def GetAward(self): return self.Award # 奖励 [[独立概率万分率,[物品ID,数量,拍品分组]],..]
# 装备洗练等级上限
class IPY_ItemWashMax():
    def __init__(self):
        self.Type = 0
        self.Star = 0
        self.LevelMax = 0
        return
    def GetType(self): return self.Type # 按装备位对应类型查找
    def GetStar(self): return self.Star #  装备星数
    def GetLevelMax(self): return self.LevelMax # 洗练等级上限
def Log(msg, playerID=0, par=0):
@@ -4267,6 +4347,14 @@
        self.ipyItemPlusSumAttrLen = len(self.ipyItemPlusSumAttrCache)
        self.ipyRoleEquipStarsCache = self.__LoadFileData("RoleEquipStars", IPY_RoleEquipStars)
        self.ipyRoleEquipStarsLen = len(self.ipyRoleEquipStarsCache)
        self.ipyEquipLegendAttrCountCache = self.__LoadFileData("EquipLegendAttrCount", IPY_EquipLegendAttrCount)
        self.ipyEquipLegendAttrCountLen = len(self.ipyEquipLegendAttrCountCache)
        self.ipyEquipLegendAttrTypeCache = self.__LoadFileData("EquipLegendAttrType", IPY_EquipLegendAttrType)
        self.ipyEquipLegendAttrTypeLen = len(self.ipyEquipLegendAttrTypeCache)
        self.ipyEquipLegendAttrLibCache = self.__LoadFileData("EquipLegendAttrLib", IPY_EquipLegendAttrLib)
        self.ipyEquipLegendAttrLibLen = len(self.ipyEquipLegendAttrLibCache)
        self.ipyEquipLegendAttrValueCache = self.__LoadFileData("EquipLegendAttrValue", IPY_EquipLegendAttrValue)
        self.ipyEquipLegendAttrValueLen = len(self.ipyEquipLegendAttrValueCache)
        self.ipyDogzCache = self.__LoadFileData("Dogz", IPY_Dogz)
        self.ipyDogzLen = len(self.ipyDogzCache)
        self.ipyDogzEquipPlusCache = self.__LoadFileData("DogzEquipPlus", IPY_DogzEquipPlus)
@@ -4457,8 +4545,6 @@
        self.ipyMagicWeaponFBLen = len(self.ipyMagicWeaponFBCache)
        self.ipyIceLodeStarAwardCache = self.__LoadFileData("IceLodeStarAward", IPY_IceLodeStarAward)
        self.ipyIceLodeStarAwardLen = len(self.ipyIceLodeStarAwardCache)
        self.ipyGodWeaponEffectCache = self.__LoadFileData("GodWeaponEffect", IPY_GodWeaponEffect)
        self.ipyGodWeaponEffectLen = len(self.ipyGodWeaponEffectCache)
        self.ipyCrossRealmPKDanCache = self.__LoadFileData("CrossRealmPKDan", IPY_CrossRealmPKDan)
        self.ipyCrossRealmPKDanLen = len(self.ipyCrossRealmPKDanCache)
        self.ipyCrossRealmPKDanAwardCache = self.__LoadFileData("CrossRealmPKDanAward", IPY_CrossRealmPKDanAward)
@@ -4519,6 +4605,10 @@
        self.ipyEquipStarUpLen = len(self.ipyEquipStarUpCache)
        self.ipyEquipPlusEvolveCache = self.__LoadFileData("EquipPlusEvolve", IPY_EquipPlusEvolve)
        self.ipyEquipPlusEvolveLen = len(self.ipyEquipPlusEvolveCache)
        self.ipyFamilyBossAwardCache = self.__LoadFileData("FamilyBossAward", IPY_FamilyBossAward)
        self.ipyFamilyBossAwardLen = len(self.ipyFamilyBossAwardCache)
        self.ipyItemWashMaxCache = self.__LoadFileData("ItemWashMax", IPY_ItemWashMax)
        self.ipyItemWashMaxLen = len(self.ipyItemWashMaxCache)
        Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
        Log("IPY_DataMgr InitOK!")
        return
@@ -4705,6 +4795,14 @@
    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
    def GetEquipLegendAttrCountByIndex(self, index): return self.ipyEquipLegendAttrCountCache[index]
    def GetEquipLegendAttrTypeCount(self): return self.ipyEquipLegendAttrTypeLen
    def GetEquipLegendAttrTypeByIndex(self, index): return self.ipyEquipLegendAttrTypeCache[index]
    def GetEquipLegendAttrLibCount(self): return self.ipyEquipLegendAttrLibLen
    def GetEquipLegendAttrLibByIndex(self, index): return self.ipyEquipLegendAttrLibCache[index]
    def GetEquipLegendAttrValueCount(self): return self.ipyEquipLegendAttrValueLen
    def GetEquipLegendAttrValueByIndex(self, index): return self.ipyEquipLegendAttrValueCache[index]
    def GetDogzCount(self): return self.ipyDogzLen
    def GetDogzByIndex(self, index): return self.ipyDogzCache[index]
    def GetDogzEquipPlusCount(self): return self.ipyDogzEquipPlusLen
@@ -4895,8 +4993,6 @@
    def GetMagicWeaponFBByIndex(self, index): return self.ipyMagicWeaponFBCache[index]
    def GetIceLodeStarAwardCount(self): return self.ipyIceLodeStarAwardLen
    def GetIceLodeStarAwardByIndex(self, index): return self.ipyIceLodeStarAwardCache[index]
    def GetGodWeaponEffectCount(self): return self.ipyGodWeaponEffectLen
    def GetGodWeaponEffectByIndex(self, index): return self.ipyGodWeaponEffectCache[index]
    def GetCrossRealmPKDanCount(self): return self.ipyCrossRealmPKDanLen
    def GetCrossRealmPKDanByIndex(self, index): return self.ipyCrossRealmPKDanCache[index]
    def GetCrossRealmPKDanAwardCount(self): return self.ipyCrossRealmPKDanAwardLen
@@ -4957,6 +5053,10 @@
    def GetEquipStarUpByIndex(self, index): return self.ipyEquipStarUpCache[index]
    def GetEquipPlusEvolveCount(self): return self.ipyEquipPlusEvolveLen
    def GetEquipPlusEvolveByIndex(self, index): return self.ipyEquipPlusEvolveCache[index]
    def GetFamilyBossAwardCount(self): return self.ipyFamilyBossAwardLen
    def GetFamilyBossAwardByIndex(self, index): return self.ipyFamilyBossAwardCache[index]
    def GetItemWashMaxCount(self): return self.ipyItemWashMaxLen
    def GetItemWashMaxByIndex(self, index): return self.ipyItemWashMaxCache[index]
IPYData = IPY_DataMgr()
def IPY_Data(): return IPYData