Esempio n. 1
0
        /// <summary>
        /// Deals a random hand of cards
        /// </summary>
        /// <param name="cardsDealt">number of cards to be dealt</param>
        public static Deck <Card> CreateHand(int cardsDealt)
        {
            Deck <Card> myHand = new Deck <Card>();

            {
                myHand.Add(new Card {
                    Suit = (Suit)1, CardValue = (CardValue)2
                });
                myHand.Add(new Card {
                    Suit = (Suit)3, CardValue = (CardValue)4
                });

                for (int i = 0; i < (cardsDealt - 2); i++)
                {
                    int[] randomCard = RandomCard();
                    myHand.Add(new Card {
                        Suit = (Suit)randomCard[0], CardValue = (CardValue)randomCard[1]
                    });
                }
            }
            return(myHand);
        }
Esempio n. 2
0
        /// <summary>
        /// This method creates a deck of 52 cards, all 13 numbers in all 4 suites.
        /// </summary>
        /// <returns>The deck that was created</returns>
        public static Deck <Card> CreateFullDeck()
        {
            Deck <Card> deckOfCards  = new Deck <Card>();
            Card        AceHeart     = new Card(Number.Ace, Suites.Hearts);
            Card        TwoHeart     = new Card(Number.Two, Suites.Hearts);
            Card        ThreeHeart   = new Card(Number.Three, Suites.Hearts);
            Card        FourHeart    = new Card(Number.Four, Suites.Hearts);
            Card        FiveHeart    = new Card(Number.Five, Suites.Hearts);
            Card        SixHeart     = new Card(Number.Six, Suites.Hearts);
            Card        SevenHeart   = new Card(Number.Seven, Suites.Hearts);
            Card        EightHeart   = new Card(Number.Eight, Suites.Hearts);
            Card        NineHeart    = new Card(Number.Nine, Suites.Hearts);
            Card        TenHeart     = new Card(Number.Ten, Suites.Hearts);
            Card        JackHeart    = new Card(Number.Jack, Suites.Hearts);
            Card        QueenHeart   = new Card(Number.Queen, Suites.Hearts);
            Card        KingHeart    = new Card(Number.King, Suites.Hearts);
            Card        AceDiamond   = new Card(Number.Ace, Suites.Diamonds);
            Card        TwoDiamond   = new Card(Number.Two, Suites.Diamonds);
            Card        ThreeDiamond = new Card(Number.Three, Suites.Diamonds);
            Card        FourDiamond  = new Card(Number.Four, Suites.Diamonds);
            Card        FiveDiamond  = new Card(Number.Five, Suites.Diamonds);
            Card        SixDiamond   = new Card(Number.Six, Suites.Diamonds);
            Card        SevenDiamond = new Card(Number.Seven, Suites.Diamonds);
            Card        EightDiamond = new Card(Number.Eight, Suites.Diamonds);
            Card        NineDiamond  = new Card(Number.Nine, Suites.Diamonds);
            Card        TenDiamond   = new Card(Number.Ten, Suites.Diamonds);
            Card        JackDiamond  = new Card(Number.Jack, Suites.Diamonds);
            Card        QueenDiamond = new Card(Number.Queen, Suites.Diamonds);
            Card        KingDiamond  = new Card(Number.King, Suites.Diamonds);
            Card        AceClub      = new Card(Number.Ace, Suites.Clubs);
            Card        TwoClub      = new Card(Number.Two, Suites.Clubs);
            Card        ThreeClub    = new Card(Number.Three, Suites.Clubs);
            Card        FourClub     = new Card(Number.Four, Suites.Clubs);
            Card        FiveClub     = new Card(Number.Five, Suites.Clubs);
            Card        SixClub      = new Card(Number.Six, Suites.Clubs);
            Card        SevenClub    = new Card(Number.Seven, Suites.Clubs);
            Card        EightClub    = new Card(Number.Eight, Suites.Clubs);
            Card        NineClub     = new Card(Number.Nine, Suites.Clubs);
            Card        TenClub      = new Card(Number.Ten, Suites.Clubs);
            Card        JackClub     = new Card(Number.Jack, Suites.Clubs);
            Card        QueenClub    = new Card(Number.Queen, Suites.Clubs);
            Card        KingClub     = new Card(Number.King, Suites.Clubs);
            Card        AceSpades    = new Card(Number.Ace, Suites.Spades);
            Card        TwoSpades    = new Card(Number.Two, Suites.Spades);
            Card        ThreeSpades  = new Card(Number.Three, Suites.Spades);
            Card        FourSpades   = new Card(Number.Four, Suites.Spades);
            Card        FiveSpades   = new Card(Number.Five, Suites.Spades);
            Card        SixSpades    = new Card(Number.Six, Suites.Spades);
            Card        SevenSpades  = new Card(Number.Seven, Suites.Spades);
            Card        EightSpades  = new Card(Number.Eight, Suites.Spades);
            Card        NineSpades   = new Card(Number.Nine, Suites.Spades);
            Card        TenSpades    = new Card(Number.Ten, Suites.Spades);
            Card        JackSpades   = new Card(Number.Jack, Suites.Spades);
            Card        QueenSpades  = new Card(Number.Queen, Suites.Spades);
            Card        KingSpades   = new Card(Number.King, Suites.Spades);

            deckOfCards.Add(AceHeart);
            deckOfCards.Add(TwoHeart);
            deckOfCards.Add(ThreeHeart);
            deckOfCards.Add(FourHeart);
            deckOfCards.Add(FiveHeart);
            deckOfCards.Add(SixHeart);
            deckOfCards.Add(SevenHeart);
            deckOfCards.Add(EightHeart);
            deckOfCards.Add(NineHeart);
            deckOfCards.Add(TenHeart);
            deckOfCards.Add(JackHeart);
            deckOfCards.Add(QueenHeart);
            deckOfCards.Add(KingHeart);
            deckOfCards.Add(AceDiamond);
            deckOfCards.Add(TwoDiamond);
            deckOfCards.Add(ThreeDiamond);
            deckOfCards.Add(FourDiamond);
            deckOfCards.Add(FiveDiamond);
            deckOfCards.Add(SixDiamond);
            deckOfCards.Add(SevenDiamond);
            deckOfCards.Add(EightDiamond);
            deckOfCards.Add(NineDiamond);
            deckOfCards.Add(TenDiamond);
            deckOfCards.Add(JackDiamond);
            deckOfCards.Add(QueenDiamond);
            deckOfCards.Add(KingDiamond);
            deckOfCards.Add(AceClub);
            deckOfCards.Add(TwoClub);
            deckOfCards.Add(ThreeClub);
            deckOfCards.Add(FourClub);
            deckOfCards.Add(FiveClub);
            deckOfCards.Add(SixClub);
            deckOfCards.Add(SevenClub);
            deckOfCards.Add(EightClub);
            deckOfCards.Add(NineClub);
            deckOfCards.Add(TenClub);
            deckOfCards.Add(JackClub);
            deckOfCards.Add(QueenClub);
            deckOfCards.Add(KingClub);
            deckOfCards.Add(AceSpades);
            deckOfCards.Add(TwoSpades);
            deckOfCards.Add(ThreeSpades);
            deckOfCards.Add(FourSpades);
            deckOfCards.Add(FiveSpades);
            deckOfCards.Add(SixSpades);
            deckOfCards.Add(SevenSpades);
            deckOfCards.Add(EightSpades);
            deckOfCards.Add(NineSpades);
            deckOfCards.Add(TenSpades);
            deckOfCards.Add(JackSpades);
            deckOfCards.Add(QueenSpades);
            deckOfCards.Add(KingSpades);
            return(deckOfCards);
        }
Esempio n. 3
0
        /// <summary>
        /// This method creates a deck with numbers from 2 to 10 and Ace, King, Queen, Jack all in the Heart suite.
        /// </summary>
        /// <returns>The deck of all numbers with only the heart suite</returns>
        public static Deck <Card> CreateHeartDeck()
        {
            Deck <Card> deckOfCards = new Deck <Card>();
            Card        AceHeart    = new Card(Number.Ace, Suites.Hearts);
            Card        TwoHeart    = new Card(Number.Two, Suites.Hearts);
            Card        ThreeHeart  = new Card(Number.Three, Suites.Hearts);
            Card        FourHeart   = new Card(Number.Four, Suites.Hearts);
            Card        FiveHeart   = new Card(Number.Five, Suites.Hearts);
            Card        SixHeart    = new Card(Number.Six, Suites.Hearts);
            Card        SevenHeart  = new Card(Number.Seven, Suites.Hearts);
            Card        EightHeart  = new Card(Number.Eight, Suites.Hearts);
            Card        NineHeart   = new Card(Number.Nine, Suites.Hearts);
            Card        TenHeart    = new Card(Number.Ten, Suites.Hearts);
            Card        JackHeart   = new Card(Number.Jack, Suites.Hearts);
            Card        QueenHeart  = new Card(Number.Queen, Suites.Hearts);
            Card        KingHeart   = new Card(Number.King, Suites.Hearts);

            deckOfCards.Add(AceHeart);
            deckOfCards.Add(TwoHeart);
            deckOfCards.Add(ThreeHeart);
            deckOfCards.Add(FourHeart);
            deckOfCards.Add(FiveHeart);
            deckOfCards.Add(SixHeart);
            deckOfCards.Add(SevenHeart);
            deckOfCards.Add(EightHeart);
            deckOfCards.Add(NineHeart);
            deckOfCards.Add(TenHeart);
            deckOfCards.Add(JackHeart);
            deckOfCards.Add(QueenHeart);
            deckOfCards.Add(KingHeart);
            return(deckOfCards);
        }
        static void GenericCollection()
        {
            // Instantiate collection
            // Instantiate ten cards with values
            Deck <Card> myCards = new Deck <Card>()
            {
                new Card {
                    Suit = CardSuit.Spades, Value = Value.Ace
                },
                new Card {
                    Suit = CardSuit.Hearts, Value = Value.Eight
                },
                new Card {
                    Suit = CardSuit.Diamonds, Value = Value.Two
                },
                new Card {
                    Suit = CardSuit.Hearts, Value = Value.King
                },
                new Card {
                    Suit = CardSuit.Clubs, Value = Value.Queen
                },
                new Card {
                    Suit = CardSuit.Spades, Value = Value.Four
                },
                new Card {
                    Suit = CardSuit.Spades, Value = Value.Five
                },
                new Card {
                    Suit = CardSuit.Hearts, Value = Value.Six
                },
                new Card {
                    Suit = CardSuit.Clubs, Value = Value.Ace
                },
                new Card {
                    Suit = CardSuit.Spades, Value = Value.Jack
                }
            };

            Console.WriteLine("Add ten cards to the deck:");
            // Prints out the deck to the console
            foreach (Card card in myCards)
            {
                Console.WriteLine($"Suit: {card.Suit}, Value: {card.Value}");
            }

            Console.WriteLine("----------");
            Console.WriteLine("Add a card to the deck:");
            // Adds a new card to the deck
            Card card1 = new Card();

            card1.Suit  = CardSuit.Diamonds;
            card1.Value = Value.Nine;
            myCards.Add(card1);
            Console.WriteLine($"Suit: {card1.Suit}, Value: {card1.Value}");

            // Print out the deck, including the newly added card, to the console
            foreach (Card card in myCards)
            {
                Console.WriteLine($"Suit: {card.Suit}, Value: {card.Value}");
            }

            Console.WriteLine("----------");
            // Removes the last card added to the deck and prints it out on console
            Console.WriteLine("Remove last card added to the deck:");
            myCards.Remove();
            foreach (Card card in myCards)
            {
                Console.WriteLine($"Suit: {card.Suit}, Value: {card.Value}");
            }

            Console.WriteLine("----------");
            // Returns a particular suit and prints out the updated deck to console
            Console.WriteLine("Return all cards with Suit of Clubs:");
            Deck <Card> clubs = myCards.ReturnSuit(CardSuit.Clubs);

            foreach (Card card in clubs)
            {
                Console.WriteLine($"Suit: {card.Suit}, Value: {card.Value}");
            }
        }
Esempio n. 5
0
        // adds cards to deck, calls the shuffle method and remove method, prints cards (weird glitch i need to talk to amanda about)...
        //maybe you know why but my LAST console.WriteLine is only printing out like 4 or 5 cards... then it stops.... however all my main
        //functions are working
        static void PopulateDeck()
        {
            Card card1 = new Card()
            {
                Color  = "red",
                Number = 4,
                Suit   = Suit.Club
            };
            Card card2 = new Card()
            {
                Color  = "black",
                Number = 6,
                Suit   = Suit.Diamond
            };
            Card card3 = new Card()
            {
                Color  = "red",
                Number = 8,
                Suit   = Suit.Club
            };
            Card card4 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Spade,
                Number = 7
            };
            Card card5 = new Card()
            {
                Color  = "red",
                Suit   = Suit.Heart,
                Number = 7
            };
            Card card6 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Spade,
                Number = 8
            };
            Card card7 = new Card()
            {
                Color  = "red",
                Suit   = Suit.Diamond,
                Number = 4
            };
            Card card8 = new Card()
            {
                Color  = "red",
                Suit   = Suit.Heart,
                Number = 5
            };
            Card card9 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Heart,
                Number = 9
            };
            Card card10 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Club,
                Number = 9
            };
            Card card11 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Diamond,
                Number = 7
            };
            Card card12 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Heart,
                Number = 7
            };
            Card card13 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Heart,
                Number = 7
            };
            Card card14 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Heart,
                Number = 7
            };
            Card card15 = new Card()
            {
                Color  = "black",
                Suit   = Suit.Diamond,
                Number = 10
            };

            Deck <Card> myCards = new Deck <Card>()
            {
                card1, card2, card3, card4, card5, card5, card6, card7, card8, card9, card10, card11, card12, card13, card14, card15
            };

            Deal(myCards);
            // REMOVE FUNCTION
            myCards.Remove(card1);
            // ADD FUNCTION
            myCards.Add(card1);
        }
Esempio n. 6
0
        /// <summary>
        /// Instantiate cards from Card class
        /// </summary>
        public static void CardTest()
        {
            Card cardOne = new Card()
            {
                CardSuits = Suits.Clubs, CardFace = CardValue.Four
            };
            Card cardTwo = new Card()
            {
                CardSuits = Suits.Spades, CardFace = CardValue.Queen
            };
            Card cardThree = new Card()
            {
                CardSuits = Suits.Diamonds, CardFace = CardValue.Two
            };
            Card cardFour = new Card()
            {
                CardSuits = Suits.Hearts, CardFace = CardValue.Ace
            };
            Card cardFive = new Card()
            {
                CardSuits = Suits.Clubs, CardFace = CardValue.Ace
            };
            Card cardSix = new Card()
            {
                CardSuits = Suits.Spades, CardFace = CardValue.Five
            };
            Card cardSeven = new Card()
            {
                CardSuits = Suits.Diamonds, CardFace = CardValue.King
            };
            Card cardEight = new Card()
            {
                CardSuits = Suits.Clubs, CardFace = CardValue.Eight
            };
            Card cardiNne = new Card()
            {
                CardSuits = Suits.Diamonds, CardFace = CardValue.Ace
            };
            Card cardTen = new Card()
            {
                CardSuits = Suits.Hearts, CardFace = CardValue.Two
            };

            Deck <Card> deckOfCards = new Deck <Card>
            {
                cardOne, cardTwo, cardThree, cardFour, cardFive, cardSix, cardSeven, cardEight, cardiNne, cardTen
            };

            DisplayCards(deckOfCards);

            Console.WriteLine("**Add cards**");

            Card cardEleven = new Card()
            {
                CardSuits = Suits.Spades, CardFace = CardValue.King
            };
            Card cardTwelve = new Card()
            {
                CardSuits = Suits.Spades, CardFace = CardValue.Two
            };

            deckOfCards.Add(cardEleven);
            deckOfCards.Add(cardTwelve);
            DisplayCards(deckOfCards);

            Console.WriteLine("**Remove Card**");
            deckOfCards.RemoveCard(cardEleven);
            deckOfCards.RemoveCard(cardTwelve);
            DisplayCards(deckOfCards);

            Console.WriteLine("**All cards in this suit**");
            DisplayCards(deckOfCards.ShowCardsInSuit(Suits.Spades));
        }