| | |
| | | self._batObj = batObj
|
| | | self._objID = batObj.GetID() if batObj else 0
|
| | | self._skillIDList = [] # 已有技能ID列表,获取被动中快速判断已学技能用
|
| | | self.noDeadSkill = None # 不死技能效果,暂时只支持最多1个这种技能
|
| | |
|
| | | # 技能
|
| | | self._AffectSkillDict = {} # 被动技能 {(触发方式, 有效来源):{技能ID:[effID, ...], ...}, ...}
|
| | |
| | | effDict[skillID].append(effectID)
|
| | | if triggerWay not in self._skillTriggerWayList:
|
| | | self._skillTriggerWayList.append(triggerWay)
|
| | | |
| | | # 加载不死技能效果
|
| | | if triggerWay == ChConfig.TriggerWay_NoDead:
|
| | | self.noDeadSkill = curSkill
|
| | | |
| | | return
|
| | |
|
| | | def RefreshBuffPassiveEffect(self):
|
| | |
| | | return False
|
| | | return True
|
| | |
|
| | | def CanNoDead(self):
|
| | | '''是否还可触发不死效果
|
| | | 暂定单个武将最多只支持配置1个不死效果,且单场战斗最多触发x次,即按技能cd判断即可
|
| | | '''
|
| | | noDeadSkill = self._passiveEffMgr.noDeadSkill # 固定有被动触发
|
| | | if not noDeadSkill:
|
| | | return
|
| | | if noDeadSkill.GetRemainTime():
|
| | | return
|
| | | return True
|
| | | |
| | | def GetSneerTagObj(self):
|
| | | ## 获取被嘲讽的目标,如果存在则一定是活着的目标
|
| | | buffIDList = self._buffMgr.GetStateBuffIDList(ChConfig.BatObjState_Sneer)
|