using System.Collections.Generic; using Continentis.MainGame.Card; using Continentis.MainGame.Character; using Continentis.MainGame.Commands; using SLSUtilities.General; namespace Continentis.Mods.Basic.Cards { public class FirmBelief : CardLogicBase { public override void Initialize(CardInstance card) { base.Initialize(card); this.card.eventSubmodule.onInitiativeDiscard.Add("FirmBelief_PlayWhenDiscard", new PrioritizedCheckAndEffect(() => true, () => card.Play(new List(), user, false, true))); } public override void SetUpLogicComponents() { AddLogicComponent(); } public override CommandGroup PlayEffect(List targetList) { return Cmd.Parallel( new Cmd_PlayAnimation(user.characterView, "Skill"), Cmd.Do(() => user.AddBlock(GetAttribute("Block"))), user.deckSubmodule.DrawCards(GetAttribute("DrawCardAmount")) ); } public override void ApplyAttributeChangesByCard() { LogicComponent().SetBlock(); } } }