| | |
| | |
|
| | | import TurnSkill
|
| | | import IpyGameDataPY
|
| | | import GameWorld
|
| | |
|
| | | def DoSkillEffectLogic(turnFight, batObj, tagObj, effSkill, curEffect, connSkill, connBuff, **kwargs):
|
| | | skillID = curEffect.GetEffectValue(0) # 技能ID,为0时释放本技能
|
| | | checkState = curEffect.GetEffectValue(1) # 可附加验证目标处于xx状态
|
| | | checkStateList = curEffect.GetEffectValue(1) # 可附加验证目标处于xx状态
|
| | | checkOwner = curEffect.GetEffectValue(2) # 是否只限归属自己的状态buff
|
| | |
|
| | | if checkState:
|
| | | if checkStateList:
|
| | | ownerID = batObj.GetID() if checkOwner else 0
|
| | | if not tagObj.GetBuffManager().FindBuffByState(checkState, ownerID):
|
| | | GameWorld.DebugLogEx("目标不在状态下不触发: tagID=%s,checkState=%s,ownerID=%s", tagObj.GetID(), checkState, ownerID)
|
| | | inState = False
|
| | | tagBuffMgr = tagObj.GetBuffManager()
|
| | | for checkState in checkStateList:
|
| | | if tagBuffMgr.FindBuffByState(checkState, ownerID):
|
| | | inState = True
|
| | | break
|
| | | if not inState:
|
| | | #GameWorld.DebugLogEx("目标不在状态下不触发: tagID=%s,checkStateList=%s,ownerID=%s", tagObj.GetID(), checkStateList, ownerID)
|
| | | return
|
| | |
|
| | | if not skillID:
|