| | |
| | | activeCnt += 1
|
| | | return activeCnt
|
| | |
|
| | | def GetMWIDByPotentialsSkillID(skillID):
|
| | | #通过潜力技能ID获取对应的法宝ID
|
| | | def GetPotentialsNextSkillID(skillID):
|
| | | #通过潜力技能ID获取对应的下一个技能ID
|
| | | global g_potentialsSkillDict
|
| | | if not g_potentialsSkillDict:
|
| | | g_potentialsSkillDict = {}
|
| | |
| | | ipyData = ipyDataMgr.GetTreasureByIndex(i)
|
| | | mwID = ipyData.GetID()
|
| | | skillIDList = ipyData.GetPotentials()
|
| | | for curSkillID in skillIDList:
|
| | | g_potentialsSkillDict[curSkillID] = mwID |
| | | for i, curSkillID in enumerate(skillIDList):
|
| | | nextSkillID = skillIDList[i+1] if i+1 < len(skillIDList) else 0
|
| | | g_potentialsSkillDict[curSkillID] = nextSkillID
|
| | | return g_potentialsSkillDict.get(skillID, 0)
|
| | |
|
| | | ## 给技能
|
| | |
| | | if newSkill:
|
| | | skillManager.LVUPSkillByID(newSkillID)
|
| | | GameWorld.DebugLog(' 法宝技能升级 skillTypeID=%s, upSkillLv=%s, 触发学习技能%s' % (skillTypeID, upSkillLv, newSkillID))
|
| | | curControl.RefreshSkillFightPowerEx(newSkillID, beforeFightPower)
|
| | | curControl.RefreshSkillFightPowerEx(newSkillID, 0)
|
| | | PassiveBuffEffMng.GetPassiveEffManager().RegistPassiveEff(curPlayer, newSkillID)
|
| | | if SkillCommon.isPassiveAttr(newSkill):
|
| | | newSkillIsPassive = True
|
| | | PlayerControl.WorldNotify(0, 'SkillPotential2', [curPlayer.GetName(), skillTypeID, upSkillLv, newSkillID])
|
| | |
|
| | |
|
| | | if SkillCommon.isPassiveAttr(upSkill) or newSkillIsPassive:
|
| | |
| | | curControl.RefreshSkillFightPowerEx(upSkill.GetSkillID(), beforeFightPower)
|
| | | PassiveBuffEffMng.GetPassiveEffManager().RegistPassiveEff(curPlayer, upSkill.GetSkillID())
|
| | |
|
| | | #通知技能已升级成功 GeRen_admin_31379
|
| | | #<n color="255,255,0" BKCOLOR="0,0,0">恭喜您将</n><n color="0,190,255" BKCOLOR="0,0,0"><Info Type="Skill" Name="Name" ID="{%S1%}"/></n><n color="255,255,0" BKCOLOR="0,0,0">升至</n><n color="0,190,255" BKCOLOR="0,0,0">{%S2%}</n><n color="255,255,0" BKCOLOR="0,0,0">级!</n>
|
| | | #PlayerControl.NotifyCode(curPlayer, "GeRen_admin_31379", [skillTypeID, upSkillLv])
|
| | | #通知技能已升级成功
|
| | | nextSkillID = GetPotentialsNextSkillID(skillTypeID)
|
| | | if nextSkillID:
|
| | | nextSkill = GameWorld.GetGameData().FindSkillByType(nextSkillID, 1)
|
| | | if nextSkill and nextSkill.GetLearnSkillReq() == skillTypeID and upSkillLv == nextSkill.GetLearnSkillLV():
|
| | | PlayerControl.WorldNotify(0, 'SkillPotential1', [curPlayer.GetName(), skillTypeID, upSkillLv, nextSkillID])
|
| | | |
| | | maxLV = upSkill.GetSkillMaxLV()
|
| | | if upSkillLv == maxLV:
|
| | | PlayerControl.WorldNotify(0, 'SkillPotential3', [curPlayer.GetName(), skillTypeID, maxLV])
|
| | |
|
| | | #获得技能等级
|
| | | #curSkillLV = curSkill.GetSkillLV()
|