| | |
| | |
|
| | | # 统计击杀
|
| | | killObjList = [] # 击杀其他阵营目标列表
|
| | | dieObjList = [] # 死亡的单位列表
|
| | | for tagObj in useSkill.GetTagObjList():
|
| | | tagID = tagObj.GetID()
|
| | | if tagObj.IsAlive() and tagObj.GetHP() <= 0 and tagObj.GetFaction() != curObj.GetFaction():
|
| | | killObjList.append(tagObj)
|
| | | TurnAttack.SetObjKilled(turnFight, tagObj, curObj, useSkill)
|
| | | if tagObj.IsAlive() and tagObj.GetHP() <= 0:
|
| | | dieObjList.append(tagObj)
|
| | | if tagObj.GetFaction() != curObj.GetFaction():
|
| | | killObjList.append(tagObj)
|
| | | TurnAttack.SetObjKilled(turnFight, tagObj, curObj, useSkill)
|
| | | useSkill.SetKillObjList(killObjList)
|
| | | if curObj.IsAlive() and curObj.GetHP() <= 0:
|
| | | dieObjList.append(curObj)
|
| | | TurnAttack.SetObjKilled(turnFight, curObj)
|
| | |
|
| | | # 统计伤血,可能单个技能对同一目标造成多次伤害
|
| | |
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, curObj, ChConfig.TriggerWay_KillOneObj, tagObj, connSkill=useSkill)
|
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, curObj, ChConfig.TriggerWay_KillTagObj, tagObj, connSkill=useSkill)
|
| | |
|
| | | if dieObjList:
|
| | | for faction in [ChConfig.Def_FactionA, ChConfig.Def_FactionB]:
|
| | | batFaction = turnFight.getBatFaction(faction)
|
| | | for lineupNum in batFaction.lineupDict.keys():
|
| | | batLineup = batFaction.getBatlineup(lineupNum)
|
| | | for lineupObjID in batLineup.posObjIDDict.values():
|
| | | lineupObj = batObjMgr.getBatObj(lineupObjID)
|
| | | if not lineupObj.IsAlive():
|
| | | continue
|
| | | for dieObj in dieObjList:
|
| | | # 敌方单位死亡时
|
| | | if lineupObj.GetFaction() != dieObj.GetFaction():
|
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, lineupObj, ChConfig.TriggerWay_EnemyDie, dieObj, connSkill=useSkill)
|
| | | # 己方单位死亡时
|
| | | else:
|
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, lineupObj, ChConfig.TriggerWay_FriendDie, dieObj, connSkill=useSkill)
|
| | | |
| | | triggerOne = False
|
| | | batType = useSkill.GetBatType()
|
| | | isAttackDirect = (isUseSkill and not SkillCommon.IsBuff(useSkill) and useSkill.GetSkillType() in [ChConfig.Def_SkillType_Atk])
|
| | |
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, tagObj, ChConfig.TriggerWay_BeAttackedDirect, curObj, connSkill=useSkill)
|
| | | else:
|
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, tagObj, ChConfig.TriggerWay_BeAnyEffect, curObj, connSkill=useSkill)
|
| | | |
| | | # 受到持续伤害
|
| | | if tagID in beHurtObjIDList:
|
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, tagObj, ChConfig.TriggerWay_BeDOTHurt, curObj, connSkill=useSkill)
|
| | | |
| | | # 使用技能后
|
| | | if isUseSkill:
|
| | | if not triggerOne:
|