using DominionBase.Enums; using DominionBase.Players; using DominionBase.Properties; using System.Diagnostics.Contracts; namespace DominionBase.Cards.Nocturne { public class Poverty : Hex { public Poverty() : base(Source.Nocturne, Traits.Discard) { } public override void Receive(IPlayer player) { Contract.Requires(player != null, "player cannot be null"); base.Receive(player); var choice = new Choice(Resource.DiscardDownTo3Cards, this, player.Hand, ChoiceOutcome.Discard, player, minimum: player.Hand.Count - 3, maximum: player.Hand.Count - 3); var result = player.MakeChoice(choice); player.Discard(DeckLocation.Hand, result.Cards); } } }