public virtual bool CanBeAddedToAnimal(AddToAnimalContext context) { if (this.Animal != null) { throw new LogicException(); } return(context.Animal.Player == context.Player && context.Animal.All(c => c.Trait.GetType() != this.GetType())); }
public override bool CanBeAddedToAnimal(AddToAnimalContext context) { return(base.CanBeAddedToAnimal(context) && !context.Animal.HasTrait <Carnivorous>()); }
public override bool CanBeAddedToAnimal(AddToAnimalContext context) { return(base.CanBeAddedToAnimal(context) && !context.Animal.HasTrait <Scavanger>()); }
public override bool CanBeAddedToAnimal(AddToAnimalContext context) { var player = context.Game.Players.Single(p => p.Hand.Contains(this.Card)); return(context.Player == player); }