| | |
| | |
|
| | | return
|
| | |
|
| | | def GivePlayerSkillByJobSkillList(curPlayer, jobSkillList):
|
| | | ## 根据职业技能ID列表给玩家技能
|
| | | |
| | | if not jobSkillList:
|
| | | return
|
| | | |
| | | skillLV = 1
|
| | | giveSkill = None
|
| | | for skillID in jobSkillList:
|
| | | skillData = GameWorld.GetGameData().FindSkillByType(skillID, skillLV)
|
| | | if skillData == None:
|
| | | continue
|
| | | if not CheckSkillJob(curPlayer, skillData):
|
| | | continue
|
| | | if not SkillShell.CheckLearnSkillCondition(curPlayer, skillData):
|
| | | continue
|
| | | giveSkill = skillData
|
| | | break
|
| | | |
| | | if not giveSkill:
|
| | | GameWorld.ErrLog("找不到可以给的技能!jobSkillList=%s" % str(jobSkillList))
|
| | | return
|
| | | |
| | | skillTypeID = giveSkill.GetSkillTypeID()
|
| | | skillManager = curPlayer.GetSkillManager()
|
| | | if skillManager.FindSkillBySkillTypeID(skillTypeID):
|
| | | #GameWorld.DebugLog("已经有该技能!")
|
| | | return
|
| | | skillManager.LVUpSkillBySkillTypeID(skillTypeID)
|
| | | GameWorld.DebugLog(" 给玩家技能: skillTypeID=%s" % (skillTypeID), curPlayer.GetID())
|
| | | |
| | | if isPassiveSkill(giveSkill):
|
| | | PassiveBuffEffMng.GetPassiveEffManager().RegistPassiveEff(curPlayer, skillTypeID)
|
| | | |
| | | DataRecordPack.DR_LearnORUPSkill(curPlayer, skillTypeID, skillLV)
|
| | | PlayerControl.PlayerControl(curPlayer).RefreshSkillFightPowerEx(skillTypeID, 0)
|
| | | return
|
| | |
|
| | | ## 玩家登录检查学习技能(上线)
|
| | | # @param curPlayer 当前玩家
|
| | | # @return None
|