using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using Continentis.Mods.Basic.Buffs;
using SLSUtilities.General;
using UnityEngine;
namespace Continentis.Mods.Basic.Cards
{
///
/// 鲜血代偿(Blood Compensation):
/// 保护一个队友数个回合,但为自己施加易伤Buff
///
public class BloodCompensation : CardLogicBase
{
private const string BUFF_PROTECTING_COUNT = "Buff_Protecting_Count";
private const string BUFF_VULNERABLE_COUNT = "Buff_Vulnerable_Count";
public override CommandGroup PlayEffect(List targetList)
{
return ForEachTarget(targetList, target => Cmd.Parallel(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() =>
{
LogicComponent().GenerateProtection(user, target, GetAttribute(BUFF_PROTECTING_COUNT));
CreateCharacterBuff(GetAttribute(BUFF_VULNERABLE_COUNT)).Apply(user, user, this);
})
));
}
}
}