/// <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); }
/// <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); }
/// <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}"); } }
// 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); }
/// <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)); }