| | |
| | | #!/usr/bin/python
|
| | | # -*- coding: GBK -*-
|
| | | #
|
| | | # @todo: 进入濒死状态 血量为1, 不触发技能
|
| | | # @todo: 进入濒死状态 血量为1
|
| | | #
|
| | | # @author: Alee
|
| | | # @date 2017-12-9 下午09:41:44
|
| | |
| | | import GameWorld
|
| | | import SkillCommon
|
| | | import BuffSkill
|
| | | import IPY_GameWorld
|
| | |
|
| | | def CheckCanHappen(attacker, defender, passiveEffect, skillID, **skillkwargs):
|
| | | if attacker.GetPlayerAction() == IPY_GameWorld.paDie:
|
| | | # 当前已经被处理为死亡,那么就不触发
|
| | | return False
|
| | | |
| | | zhanshaState = attacker.GetDictByKey(ChConfig.Def_PlayerKey_Zhansha)
|
| | | |
| | | if zhanshaState:
|
| | | # 按位判断,1为斩杀情况下,此技能不可被触发,2为终极斩杀不触发,3为任何斩杀都不触发
|
| | | if (passiveEffect.GetEffectValue(2) & pow(2, zhanshaState-1)) != 0:
|
| | | return False
|
| | | |
| | | attacker.SetHP(1)
|
| | |
|
| | | return False
|
| | | |
| | | # False 可用于多次触发不死的作用
|
| | | return True if passiveEffect.GetEffectValue(1) else False
|
| | |
|
| | |
|
| | | def GetSkillData(passiveEffect):
|
| | | return
|
| | | skillID = passiveEffect.GetEffectValue(1)
|
| | |
|
| | | return GameWorld.GetGameData().GetSkillBySkillID(skillID)
|
| | |
|
| | | def AfterUsePassiveSkill(attacker, defender, passiveEffect, tick):
|
| | | return
|