| | |
| | | return False
|
| | |
|
| | | #玩家属性点要求
|
| | | stateSkillLV = curSkill.GetStateSkillLV() #需要基础属性ID*10000+需要属性点
|
| | | needBaseAttrID, needBaseAttrValue = stateSkillLV /10000, stateSkillLV%10000
|
| | | stateSkillLV = curSkill.GetStateSkillLV() #需要基础属性ID*100000+需要属性点
|
| | | needBaseAttrID, needBaseAttrValue = GetSkillUpNeedAttr(stateSkillLV)
|
| | | if needBaseAttrID and needBaseAttrValue:
|
| | | baseAttrDict = {
|
| | | ShareDefine.Def_Effect_Metal:PlayerControl.GetMetal(curPlayer),
|
| | |
| | | return False
|
| | |
|
| | | return True
|
| | | ## 获取技能升级属性需求 rutrun attrID, attrvalue
|
| | | def GetSkillUpNeedAttr(stateSkillLV):return stateSkillLV /100000, stateSkillLV%100000
|
| | |
|
| | | #// A5 16 选择技能五行专精 #tagCMSelectSkillElement
|
| | | #
|
| | |
| | | maxSkillLV = len(limitInfoList)
|
| | | updSkillLV = 0
|
| | | for i, limitInfo in enumerate(limitInfoList):
|
| | | needAttrID, needAttrValue = limitInfo /10000, limitInfo%10000
|
| | | needAttrID, needAttrValue = GetSkillUpNeedAttr(limitInfo)
|
| | | curAttrValue = baseAttrDict.get(needAttrID, 0)
|
| | | if curAttrValue >= needAttrValue:
|
| | | updSkillLV = maxSkillLV - i
|
| | |
| | | continue
|
| | | if curElementSkillID not in PyGameData.g_elemntSkillDict:
|
| | | continue
|
| | | if PyGameData.g_elemntSkillDict[curElementSkillID][0] /10000 not in attrIDList:
|
| | | attrID = GetSkillUpNeedAttr(PyGameData.g_elemntSkillDict[curElementSkillID][0])[0]
|
| | | if attrID not in attrIDList:
|
| | | continue
|
| | | if RefreshElementSkill(curPlayer, curElementSkillID):
|
| | | isRefresh = True
|
| | |
| | | return cnt
|
| | |
|
| | | def __InitElementSkillInfo():
|
| | | #缓存技能专精信息{skillID:[attrID*10000+needValue,..]}
|
| | | #缓存技能专精信息{skillID:[attrID*100000+needValue,..]}
|
| | | if not PyGameData.g_elemntSkillDict:
|
| | | ipyMgr = IpyGameDataPY.IPY_Data()
|
| | | for i in xrange(ipyMgr.GetSkillElementCount()):
|