예제 #1
0
        public void createCardsForDeck(ICardFactory cardFactory)
        {
            this.CardFactory = cardFactory;

            for (int i = 0; i < 4; i++)
            {
                CardDeck.Add(CardFactory.CreateWildCard(CardType.Wild));
                CardDeck.Add(CardFactory.CreateWildCard(CardType.WildDrawFour));
            }

            foreach (CardColor color in Enum.GetValues(typeof(CardColor)))
            {
                foreach (CardType type in Enum.GetValues(typeof(CardType)))
                {
                    if (type != CardType.Wild && type != CardType.WildDrawFour)
                    {
                        CardDeck.Add(CardFactory.CreateCard(color, type));

                        if (type != CardType.Zero)
                        {
                            CardDeck.Add(CardFactory.CreateCard(color, type));
                        }
                    }
                }
            }
        }
예제 #2
0
        public void ReturnCardTest()
        {
            CardDeck    target = new CardDeck();
            PlayingCard card   = target.Deal();

            target.Add(card);
            card = target.Deal();
            Assert.AreEqual("KS", card.Code);
        }
예제 #3
0
        private static void TestComposite()
        {
            CardDeck deck        = new CardDeck();
            CardDeck attackDeck  = new CardDeck();
            CardDeck defenseDeck = new CardDeck();

            attackDeck.Add(new Card("Basic Infantry", 12, 0));
            attackDeck.Add(new Card("Cavalry Unit", 32, 5));

            defenseDeck.Add(new Card("Wooden Shield", 0, 6));
            defenseDeck.Add(new Card("Iron Shield", 0, 9));
            defenseDeck.Add(new Card("Royal Armor", 0, 40));

            deck.Add(new Card("Small Beast", 16, 25));
            deck.Add(new Card("High Elf", 20, 10));
            deck.Add(attackDeck);
            deck.Add(defenseDeck);

            Console.WriteLine(deck.Display());
        }
예제 #4
0
        private static void TestComposite()
        {
            CardDeck deck        = new CardDeck();
            CardDeck attackDeck  = new CardDeck();
            CardDeck defenseDeck = new CardDeck();

            attackDeck.Add(new Card("Basic Infantry Unit", 12, 15));
            attackDeck.Add(new Card("Advanced Infantry Unit", 25, 18));
            attackDeck.Add(new Card("Cavarly Unit", 32, 24));

            defenseDeck.Add(new Card("Wooden Shield", 0, 6));
            defenseDeck.Add(new Card("Iron Shield", 0, 9));
            defenseDeck.Add(new Card("Shining Royal Armor", 0, 40));

            deck.Add(attackDeck);
            deck.Add(new Card("Small Beast", 16, 3));
            deck.Add(new Card("High Elf Rogue", 22, 7));
            deck.Add(defenseDeck);

            Console.WriteLine(deck.Display());
        }
예제 #5
0
파일: Dealer.cs 프로젝트: AlbinBlent/Kator
 public void ShuffleDeck()
 {
     var rnd = new Random();
     var rndDeck = new CardDeck();
     rndDeck.Clear();
     while (Deck.Count > 0)
     {
         var rndThis = rnd.Next(Deck.Count);
         rndDeck.Add(Deck[rndThis]);
         Deck.Remove(Deck[rndThis]);
     }
     Deck = rndDeck;
 }
예제 #6
0
        public Deck()
        {
            this.RandomNr = new Random();//Instantiated in this Constructor cus i use it in drawCard();
            this.CardDeck = new List <Card>();

            string[] suitnames =
            { "of Spades", "of Hearts", "of Diamonds", "of Clubs" };

            foreach (string suit in suitnames)
            {
                for (int i = 1; i <= 13; i++)
                {
                    CardDeck.Add(new Card(suit, i));
                }
            }
        }
예제 #7
0
        public Deck()
        {
            this.RandomNr = new Random();
            this.CardDeck = new List <Card>();

            string[] suitnames =
            { "of Spades", "of Hearts", "of Diamonds", "of Clubs" };

            // Foreach suit add 13 cards and the suit name to our list/deck of cards
            // This creates our deck of cards.
            foreach (string suit in suitnames)
            {
                // WARNING: This might create a bug making no card have the Value of 1
                // Meaning the deck will have no Ace's
                // To fix this simply set: int i = 0;
                for (int i = 1; i < 14; i++)
                {
                    CardDeck.Add(new Card(suit, i));
                }
            }
        }
예제 #8
0
 public void addCard(BasicCard card)
 {
     CardDeck.Add(card);
 }
예제 #9
0
 public void Add_CardIsNull_ThrowsArgumentNullException()
 {
     _deck.Add(null);
 }