using System; using System.Collections.Generic; using Continentis.MainGame; using Continentis.MainGame.Card; using SLSFramework.General; using UnityEngine; namespace Continentis.Mods.Basic.Cards { public partial class Oblivion : CardLogicBase { public override void Initialize(CardInstance card) { base.Initialize(card); this.card.eventSubmodule.onActionEnd.Add("Basic_Oblivion_ExhaustCard", new PrioritizedAction(() => { List handPile = user.deckSubmodule.HandPile; if (handPile.Contains(card)) { if (handPile.Filtered(CardFilter).TryGetRandom(out CardInstance randomCard)) { CommandQueueManager.Instance.AddCommand(user.deckSubmodule.ExhaustCard(randomCard)); } } })); } } public partial class Oblivion { private static bool CardFilter(CardInstance card) { return card.contentSubmodule.cardType is not CardType.Status and not CardType.Curse; } } }