//public override List<SpellCardAbilityTime> SpellCardAbilityTimes { get; set; } = new List<SpellCardAbilityTime>() { SpellCardAbilityTime.己方回合开始 }; public override bool TryCapture(Card card, IEvent @event) { ICardLocationFilter filter = GameActivator <F> .CreateInstance(); UserContext uc = @event.Parameter.GameContext.GetUserContextByMyCard(card); return(filter.Filter(card) && @event.GetType() == typeof(MyTurnStartEvent) && uc.IsActivation); }
public bool TryCapture(Card card, IEvent @event) { F locationFilter = GameActivator <F> .CreateInstance(); ICardLocationFilter filter = GameActivator <F> .CreateInstance(); return(filter.Filter(card) && Activator.CreateInstance <EVENT>().Compare(@event) && @event.Parameter.GameContext.IsThisActivationUserCard(card)); }
//public override List<SpellCardAbilityTime> SpellCardAbilityTimes { get; set; } = new List<SpellCardAbilityTime>() { SpellCardAbilityTime.己方随从受到伤害后 }; public override bool TryCapture(Card card, IEvent @event) { ICardLocationFilter filter = GameActivator <F> .CreateInstance(); return(filter.Filter(card) && @event.GetType() == typeof(MyServantHurtEvent) && @event.EventCard.IsFirstPlayerCard == card.IsFirstPlayerCard); }
public override bool TryCapture(Card card, IEvent @event) { ICardLocationFilter filter = GameActivator <F> .CreateInstance(); return(filter.Filter(card) && @event.GetType() == typeof(ServantAttackingEvent)); }
public override bool TryCapture(Card card, IEvent @event) { ICardLocationFilter filter = GameActivator <F> .CreateInstance(); return(filter.Filter(card) && @event.GetType() == typeof(PrimaryPlayerPlayCardEvent) && @event.Parameter.GameContext.IsThisActivationUserCard(card)); }