bool CheckCanPlay(ExecuteCardAction playCardaction)
 {
     if (ThisCard.CurrentZone != playCardaction.Investigator.Assets)
     {
         return(false);
     }
     if (!playCardaction.CardEffect.Type.HasFlag(EffectType.Play) && !playCardaction.CardEffect.Type.HasFlag(EffectType.Fast))
     {
         return(false);
     }
     if (!playCardaction.CardEffect.Card.KeyWords.Contains("Spell"))
     {
         return(false);
     }
     return(true);
 }
 bool CheckEvent(ExecuteCardAction executeCard)
 {
     if (!ThisCard.IsInPlay)
     {
         return(false);
     }
     if (executeCard.CardEffect.Card.CardType != CardType.Event)
     {
         return(false);
     }
     if (!executeCard.CardEffect.Type.HasFlag(EffectType.Play) &&
         !executeCard.CardEffect.Type.HasFlag(EffectType.Fast))
     {
         return(false);
     }
     if (GameControl.ActiveInvestigator != ThisCard.VisualOwner)
     {
         return(false);
     }
     return(true);
 }