private static IEnumerable <Character> ValidSpellTargets(SpellCard card, GameState gameState, Player player) { var applier = card.EffectAppliers.OfType <Targetable>().FirstOrDefault(); return(applier == null? Enumerable.Empty <Character>() : applier.GetValidTargets(gameState, player)); }
public CastSpellTargetless(Player owner, SpellCard card) : base(owner, card) { }
public CastSpellTargetable(Player owner, SpellCard card, Character target) : base(owner, card) { Target = target; }
protected CastSpell(Player owner, SpellCard card) : base(owner) { Card = card; }