| | |
| | | ("list", "EquipColorRateList", 0),
|
| | | ("list", "ExAwardItemRateList", 0),
|
| | | ),
|
| | |
|
| | | "AlineInvade":(
|
| | | ("BYTE", "BoxNum", 1),
|
| | | ("DWORD", "NeedHurtValue", 0),
|
| | | ("list", "BoxAwardWeightList", 0),
|
| | | ("dict", "BossAttrPlusInfo", 0),
|
| | | ),
|
| | | }
|
| | |
|
| | | |
| | |
| | | def GetLVUPNeedTime(self): return self.attrTuple[2] # 升级下一级所需所需秒 DWORD
|
| | | def GetEquipColorRateList(self): return self.attrTuple[3] # 产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
|
| | | def GetExAwardItemRateList(self): return self.attrTuple[4] # 每次砍树概率额外产出道具饼图,[[万分率,[物品ID,个数]], ...] list |
| | | |
| | | # 异兽入侵 |
| | | class IPY_AlineInvade(): |
| | | |
| | | def __init__(self): |
| | | self.attrTuple = None |
| | | return |
| | | |
| | | def GetBoxNum(self): return self.attrTuple[0] # 奖励盒子编号 BYTE
|
| | | def GetNeedHurtValue(self): return self.attrTuple[1] # 下个盒子所需伤血 DWORD
|
| | | def GetBoxAwardWeightList(self): return self.attrTuple[2] # 本盒子奖励权重饼图[[权重, [物品ID,个数,是否拍品]], ...] list
|
| | | def GetBossAttrPlusInfo(self): return self.attrTuple[3] # Boss在该盒子情况下属性强化 dict |
| | |
|
| | |
|
| | | def Log(msg, playerID=0, par=0):
|
| | |
| | | self.__LoadFileData("CustomAward", onlyCheck)
|
| | | self.__LoadFileData("Zhanling", onlyCheck)
|
| | | self.__LoadFileData("TreeLV", onlyCheck)
|
| | | self.__LoadFileData("AlineInvade", onlyCheck)
|
| | | Log("IPY_DataMgr ReloadOK! onlyCheck=%s" % onlyCheck)
|
| | | return
|
| | |
|
| | |
| | | def GetTreeLVByIndex(self, index): |
| | | self.CheckLoadData("TreeLV") |
| | | return self.ipyTreeLVCache[index]
|
| | | |
| | | def GetAlineInvadeCount(self): |
| | | self.CheckLoadData("AlineInvade") |
| | | return self.ipyAlineInvadeLen
|
| | | def GetAlineInvadeByIndex(self, index): |
| | | self.CheckLoadData("AlineInvade") |
| | | return self.ipyAlineInvadeCache[index]
|
| | |
|
| | | IPYData = IPY_DataMgr()
|
| | | def IPY_Data(): return IPYData
|