示例#1
0
        public bool Contains(Card card, int numberOfCards)
        {
            var cards = TreasureSupply.Select(x => x.Cards)
                        .Concat(VictorySupply.Select(x => x.Cards))
                        .Concat(KingdomSupply.Select(x => x.Cards));

            return(cards.Select(x => x.FirstOrDefault())
                   .Count(x => x == card) >= numberOfCards);
        }
示例#2
0
        //TODO: needs to be modified
        //TODO: implement ruins pile
        public bool Contains(Card card)
        {
            var cards = TreasureSupply.Select(x => x.Cards)
                        .Concat(VictorySupply.Select(x => x.Cards))
                        .Concat(KingdomSupply.Select(x => x.Cards));

            return(cards.Select(x => x.FirstOrDefault())
                   .Contains(card));
        }
示例#3
0
        public int EmptyPileCount()
        {
            var count = TreasureSupply.Count(pile => pile.Cards.Count == 0)
                        + VictorySupply.Count(pile => pile.Cards.Count == 0)
                        + KingdomSupply.Count(pile => pile.Cards.Count == 0);

            if (RuinsPile != null)
            {
                count += +RuinsPile.Cards.Count == 0 ? 1 : 0;
            }

            return(count);
        }
示例#4
0
 public bool NoProvincesRemain()
 {
     return(!VictorySupply.Any(pile => pile.Cards.Count > 0 && pile.Cards[0] == Card.Province));
 }