32 lines
1.2 KiB
C#
32 lines
1.2 KiB
C#
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
|
||
{
|
||
/// <summary>
|
||
/// 鲜血代偿(Blood Compensation):
|
||
/// 保护一个队友数个回合,但为自己施加易伤Buff
|
||
/// </summary>
|
||
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<CharacterBase> targetList)
|
||
{
|
||
return ForEachTarget(targetList, target => Cmd.Parallel(
|
||
new Cmd_PlayAnimation(user.characterView, "Skill"),
|
||
Cmd.Do(() =>
|
||
{
|
||
LogicComponent<CardLogicComponent_Protect>().GenerateProtection(user, target, GetAttribute(BUFF_PROTECTING_COUNT));
|
||
CreateCharacterBuff<Vulnerable>(GetAttribute(BUFF_VULNERABLE_COUNT)).Apply(user, user, this);
|
||
})
|
||
));
|
||
}
|
||
}
|
||
} |