10281 【越南】【英语】【砍树】【tqxbqy】时装、坐骑幻化、称号新增纯战力
| | |
| | | list LightType; //点亮属性类型
|
| | | list LightAttribute; //点亮属性值
|
| | | list Skills; //被动技能
|
| | | DWORD InitFightPower; //初始战力
|
| | | };
|
| | |
|
| | | //称号升星表
|
| | |
| | | DWORD MaxLV; //最大星级
|
| | | list CostItemCnt; //材料数量
|
| | | dict StarAttr; //属性
|
| | | DWORD InitFightPower; //初始战力
|
| | | };
|
| | |
|
| | | //时装柜升级表
|
| | |
| | | ("list", "LightType", 0),
|
| | | ("list", "LightAttribute", 0),
|
| | | ("list", "Skills", 0),
|
| | | ("DWORD", "InitFightPower", 0),
|
| | | ),
|
| | |
|
| | | "TitleStarUp":(
|
| | |
| | | ("DWORD", "MaxLV", 0),
|
| | | ("list", "CostItemCnt", 0),
|
| | | ("dict", "StarAttr", 0),
|
| | | ("DWORD", "InitFightPower", 0),
|
| | | ),
|
| | |
|
| | | "CoatChestUp":(
|
| | |
| | | def GetExpireTime(self): return self.attrTuple[2] # 有效时间 DWORD
|
| | | def GetLightType(self): return self.attrTuple[3] # 点亮属性类型 list
|
| | | def GetLightAttribute(self): return self.attrTuple[4] # 点亮属性值 list
|
| | | def GetSkills(self): return self.attrTuple[5] # 被动技能 list |
| | | def GetSkills(self): return self.attrTuple[5] # 被动技能 list
|
| | | def GetInitFightPower(self): return self.attrTuple[6] # 初始战力 DWORD |
| | | |
| | | # 称号升星表 |
| | | class IPY_TitleStarUp(): |
| | |
| | | def GetUnlockItemID(self): return self.attrTuple[3] # 材料物品ID DWORD
|
| | | def GetMaxLV(self): return self.attrTuple[4] # 最大星级 DWORD
|
| | | def GetCostItemCnt(self): return self.attrTuple[5] # 材料数量 list
|
| | | def GetStarAttr(self): return self.attrTuple[6] # 属性 dict |
| | | def GetStarAttr(self): return self.attrTuple[6] # 属性 dict
|
| | | def GetInitFightPower(self): return self.attrTuple[7] # 初始战力 DWORD |
| | | |
| | | # 时装柜升级表 |
| | | class IPY_CoatChestUp(): |
| | |
| | | # @param allAttrList 属性列表
|
| | | # @return None
|
| | | def CalcClothesCoatSkinAttr(curPlayer):
|
| | | initFPAdd = 0 #初始战力
|
| | | allAttrList = [{} for _ in range(4)]
|
| | | ipyMgr = IpyGameDataPY.IPY_Data()
|
| | | for i in xrange(ipyMgr.GetCoatCount()):
|
| | |
| | | skinLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ClothesSkinLV % coatID)
|
| | | if not skinLV:
|
| | | continue
|
| | | initFPAdd += ipyData.GetInitFightPower()
|
| | | starAttrDict = ipyData.GetStarAttr()
|
| | | if str(skinLV) not in starAttrDict:
|
| | | continue
|
| | |
| | | PlayerControl.CalcAttrDict_Type(int(attrID), attrValue, allAttrList)
|
| | |
|
| | | # 保存计算值
|
| | | curPlayer.SetDict(ChConfig.Def_PlayerKey_MFPEx % ShareDefine.Def_MFPType_Coat, initFPAdd)
|
| | | PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_Coat, allAttrList)
|
| | | return
|
| | |
|
| | |
| | | allAttrList = [{} for i in range(4)]
|
| | | allAttrListStar = [{} for _ in range(4)]
|
| | |
|
| | | initFPAdd = 0 #初始战力
|
| | | dienstgradManager = curPlayer.GetDienstgradManager()
|
| | | gradCnt = dienstgradManager.GetCount()
|
| | | for i in xrange(gradCnt):
|
| | |
| | | if curDienstgradData == None:
|
| | | continue
|
| | |
|
| | | initFPAdd += curDienstgradData.GetInitFightPower()
|
| | | attrTypeList = curDienstgradData.GetLightType()
|
| | | attrValueList = curDienstgradData.GetLightAttribute()
|
| | |
|
| | |
| | | PlayerControl.CalcAttrDict_Type(attrID, attrValue, allAttrListStar)
|
| | |
|
| | | # 保存计算值
|
| | | curPlayer.SetDict(ChConfig.Def_PlayerKey_MFPEx % ShareDefine.Def_MFPType_Dienstgrad, initFPAdd)
|
| | | PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_Dienstgrad, allAttrList)
|
| | | PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_TitleStar, allAttrListStar)
|
| | | return
|