BT7_032.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. // Pulsemon
  4. public class BT7_032 : CEntity_Effect
  5. {
  6. public override List<ICardEffect> CardEffects(EffectTiming timing, CardSource card)
  7. {
  8. List<ICardEffect> cardEffects = new List<ICardEffect>();
  9. if (timing == EffectTiming.OnAllyAttack)
  10. {
  11. ActivateClass activateClass = new ActivateClass();
  12. activateClass.SetUpICardEffect("If you have 3 security cards, gain 2 memory", CanUseCondition, card);
  13. activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, 1, false, EffectDiscription());
  14. activateClass.SetIsInheritedEffect(true);
  15. activateClass.SetHashString("Memory+2_BT7_032");
  16. cardEffects.Add(activateClass);
  17. string EffectDiscription()
  18. {
  19. return "[When Attacking][Once Per Turn] If you have 3 security cards, gain 2 memory.";
  20. }
  21. bool CanUseCondition(Hashtable hashtable)
  22. {
  23. return CardEffectCommons.IsExistOnBattleArea(card)
  24. && CardEffectCommons.CanTriggerOnAttack(hashtable, card);
  25. }
  26. bool CanActivateCondition(Hashtable hashtable)
  27. {
  28. return CardEffectCommons.IsExistOnBattleArea(card);
  29. }
  30. IEnumerator ActivateCoroutine(Hashtable hashtable)
  31. {
  32. if (card.Owner.SecurityCards.Count == 3)
  33. {
  34. yield return ContinuousController.instance.StartCoroutine(card.Owner.AddMemory(2, activateClass));
  35. }
  36. else
  37. {
  38. activateClass.RemoveUse();
  39. }
  40. }
  41. }
  42. return cardEffects;
  43. }
  44. }