using System.Collections.Generic; using Continentis.MainGame.Card; using Continentis.MainGame.Character; using Continentis.MainGame.Commands; using SLSFramework.General; namespace Continentis.Mods.Basic.Cards { public class DualStrike : CardLogicBase { public override void SetUpLogicComponents() { AddLogicComponent(); } public override CommandGroup PlayEffect(List targetList) { base.PlayEffect(targetList); // 对每个目标顺序执行两段攻击,每段各播一次动画 return ForEachTarget( targetList, target => Cmd.Sequential( Cmd.Parallel( new Cmd_PlayAnimation(user.characterView, "Attack"), Cmd.Do(() => user.Attack(target, GetTargetedFinalDamage(target))) ), Cmd.Parallel( new Cmd_PlayAnimation(user.characterView, "Attack"), Cmd.Do(() => user.Attack(target, GetTargetedFinalDamage(target))) ) ), ExecutionMode.Sequential); } public override void ApplyAttributeChangesByCard() { LogicComponent().SetDamage_Strike(); } } }