| | |
| | | DWORD _Class; //灵兽阶数
|
| | | DWORD UpNeedExp; //灵兽升阶所需经验数
|
| | | DWORD AtkAdd; //每阶攻击力加成
|
| | | list AttrType; //累计总属性类型
|
| | | list AttrValue; //累计总属性值
|
| | | };
|
| | |
|
| | |
|
| | |
| | | ("DWORD", "Class", 1),
|
| | | ("DWORD", "UpNeedExp", 0),
|
| | | ("DWORD", "AtkAdd", 0),
|
| | | ("list", "AttrType", 0),
|
| | | ("list", "AttrValue", 0),
|
| | | ),
|
| | |
|
| | | "PetEatEquip":(
|
| | |
| | | def GetPetID(self): return self.attrTuple[0] # 灵兽NPCID DWORD
|
| | | def GetClass(self): return self.attrTuple[1] # 灵兽阶数 DWORD
|
| | | def GetUpNeedExp(self): return self.attrTuple[2] # 灵兽升阶所需经验数 DWORD
|
| | | def GetAtkAdd(self): return self.attrTuple[3] # 每阶攻击力加成 DWORD |
| | | def GetAtkAdd(self): return self.attrTuple[3] # 每阶攻击力加成 DWORD
|
| | | def GetAttrType(self): return self.attrTuple[4] # 累计总属性类型 list
|
| | | def GetAttrValue(self): return self.attrTuple[5] # 累计总属性值 list |
| | | |
| | | # 灵兽吸收装备表 |
| | | class IPY_PetEatEquip(): |
| | |
| | | attrValue = starAttrValue[i]
|
| | | PlayerControl.CalcAttrDict_Type(attrID, attrValue, allAttrListStar)
|
| | |
|
| | | #升阶
|
| | | classlv = petItem.GetUserAttr(ShareDefine.Def_IudetPet_ClassLV) + 1
|
| | | classIpyData = IpyGameDataPY.GetIpyGameDataNotLog("PetClassCost", petItemNPCID, classlv)
|
| | | if classIpyData:
|
| | | attrTypeList = classIpyData.GetAttrType()
|
| | | attrValueList = classIpyData.GetAttrValue()
|
| | | for i, attrID in enumerate(attrTypeList):
|
| | | attrValue = attrValueList[i]
|
| | | PlayerControl.CalcAttrDict_Type(attrID, attrValue, allAttrListStar)
|
| | | |
| | | PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_PetSkin, allAttrListPetSkin)
|
| | | PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_PetStar, allAttrListStar)
|
| | | curPlayer.SetDict(ChConfig.Def_PlayerKey_MFPEx % ShareDefine.Def_MFPType_Pet, fpExTotal)
|