using DominionBase.Enums; using DominionBase.Piles; using DominionBase.Players; using System.Diagnostics.Contracts; namespace DominionBase.Cards.Menagerie { public class Stampede : Event { public Stampede() : base(Source.Menagerie, 5, Traits.ConditionalBenefit | Traits.Gainer | Traits.IncludesExtraPiles) { } public override void Finalize(IGame game) { Contract.Requires(game != null, "game cannot be null"); base.Finalize(game); Horse.SetupSupply(game); } public override void Bought(IPlayer player) { Contract.Requires(player != null, "player cannot be null"); base.Bought(player); if (player.InPlayAndSetAside.Count <= 5) player.Gain((ISupply)player._Game.Table[TypeClass.Horse], this, DeckLocation.Deck, DeckPosition.Top, 5); } } }