using System.Collections; using System.Collections.Generic; public class BT1_021 : CEntity_Effect { public override List CardEffects(EffectTiming timing, CardSource card) { List cardEffects = new List(); if (timing == EffectTiming.OnAllyAttack) { ActivateClass activateClass = new ActivateClass(); activateClass.SetUpICardEffect("Memory +3", CanUseCondition, card); activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription()); cardEffects.Add(activateClass); string EffectDiscription() { return "[When Attacking] Gain 3 memory. At end of turn lose 3 memory."; } bool CanUseCondition(Hashtable hashtable) { return CardEffectCommons.CanTriggerOnAttack(hashtable, card); } bool CanActivateCondition(Hashtable hashtable) { return CardEffectCommons.IsExistOnBattleArea(card); } IEnumerator ActivateCoroutine(Hashtable _hashtable) { yield return ContinuousController.instance.StartCoroutine(card.Owner.AddMemory(3, activateClass)); card.Owner.UntilEachTurnEndEffects.Add(GetCardEffect); ICardEffect GetCardEffect(EffectTiming _timing) { if (_timing == EffectTiming.OnEndTurn) { return CardEffectFactory.EoTLose3Memory(card); } return null; } yield return ContinuousController.instance.StartCoroutine(GManager.instance.GetComponent().CreateBuffEffect(card.PermanentOfThisCard())); } } return cardEffects; } }