private static void Test2() { var card = new PlayingCard(CardValue.Ess, CardSuit.Spader); var card2 = new PlayingCard(CardValue.Fyra, CardSuit.Klöver); // PrintCard(card); card.PrintCard(); card2.PrintCard(); card.PrintCard(); }
//private static List<PlayingCard> DrawCards(CardDeck currentDeck, int numberOfCards) //{ // var random = new Random(); // List<PlayingCard> visibleCards = new List<PlayingCard>(); // for (int i = 1; i <= numberOfCards; i++) // { // int index = random.Next(currentDeck.PlayingCards.Count); // currentDeck.PlayingCards[index].IsVisible = true; // visibleCards.Add(currentDeck.PlayingCards[index]); // currentDeck.PlayingCards.Remove(currentDeck.PlayingCards[index]); // } // return visibleCards; //} private static PlayingCard DrawRandomCard(CardDeck currentDeck) { var random = new Random(); int index = random.Next(currentDeck.PlayingCards.Count); currentDeck.PlayingCards[index].IsVisible = true; PlayingCard playingCard = currentDeck.PlayingCards[index]; currentDeck.PlayingCards.Remove(currentDeck.PlayingCards[index]); return(playingCard); }
private static CardDeck CreateCardDeck() { List <PlayingCard> cardList = new List <PlayingCard>(); for (int i = 1; i <= 13; i++) { PlayingCard playingCard1 = new PlayingCard { Color = CardColor.Hjärter, Value = i, IsVisible = false }; cardList.Add(playingCard1); PlayingCard playingCard2 = new PlayingCard { Color = CardColor.Ruter, Value = i, IsVisible = false }; cardList.Add(playingCard2); PlayingCard playingCard3 = new PlayingCard { Color = CardColor.Spader, Value = i, IsVisible = false }; cardList.Add(playingCard3); PlayingCard playingCard4 = new PlayingCard { Color = CardColor.Klöver, Value = i, IsVisible = false }; cardList.Add(playingCard4); } CardDeck cardDeck = new CardDeck { PlayingCards = cardList }; return(cardDeck); }
public void AddSomeCards() { foreach (CardSuit suit in Enum.GetValues(typeof(CardSuit))) { foreach (CardValue value in Enum.GetValues(typeof(CardValue))) { var card = new PlayingCard(value, suit, faceDown); cards.Add(card); } } //var card = new PlayingCard(CardValue.Kung, CardSuit.Klöver); //cards.Add(card); //var card2 = new PlayingCard(CardValue.Tio, CardSuit.Ruter); //cards.Add(card2); //var card3 = new PlayingCard(CardValue.Sju, CardSuit.Hjärter); //cards.Add(card3); }
public List <PlayingCard> CreateDeck() { List <PlayingCard> cards = new List <PlayingCard>(); var suitArray = Enum.GetValues(typeof(Suit)); var valuesArray = Enum.GetValues(typeof(Value)); foreach (var suit in suitArray) { foreach (var value in valuesArray) { PlayingCard card = new PlayingCard(); card.Suit = (Suit)Enum.Parse(typeof(Suit), suit.ToString()); card.Value = (Value)Enum.Parse(typeof(Value), value.ToString()); cards.Add(card); } } return(cards); }
private bool CompareCards(PlayingCard playerCard, PlayingCard computerCard, string guess) { bool win = false; if (playerCard.Face > computerCard.Face || (playerCard.Face == computerCard.Face && playerCard.Suit < computerCard.Suit)) { if (guess == "h") { win = true; } } else { if (guess == "l") { win = true; } } return(win); }
private void CurrentTrickPlay(Player currentPlayer, Trick trick) { var playerIndex = game.Players.IndexOf(currentPlayer); var playedCardCounter = 0; while (playedCardCounter < game.Players.Count) { if (IsPlayerHuman(playerIndex)) { PlayingCard.ForHuman(trick, game.Players[playerIndex], currentPlayer); } else { PlayingCard.ForComputer(trick, game.Players[playerIndex], currentPlayer); } if (playerIndex == game.Players.Count - 1) { playerIndex = -1; } playerIndex++; playedCardCounter++; } }
internal static void PutCardLast(List <PlayingCard> deck, PlayingCard x) { deck.Add(x); }
public void PlaceCardAtBottom(PlayingCard card) { Deck.Enqueue(card); }
public void PlayGame() { Console.Clear(); string userName = AskUserForName(); WelcomeUser(userName); int score = 0; int roundCounter = 0; //Skapar en ny kortlek PlayingCardDeck playingCardDeck = new PlayingCardDeck(); List <PlayingCard> cards = playingCardDeck.CreateDeck(); playingCardDeck.Shuffle(cards); //Har nu skapat en kortlek med randomiserad ordning i Console.Clear(); while (cards.Count >= 2) { PrintInstructions("\nWrite 'h' for higher and 'l' for lower. Write 'exit' to go back to main menu "); PlayingCard firstCard = playingCardDeck.PickFirstCardFromDeck(cards); Console.WriteLine($"\nThe card is {firstCard.Suit} {firstCard.Value}"); cards.Remove(firstCard); string input = ""; Console.Write("Do you think the next card will be higher or lower? "); while (true) { Console.ForegroundColor = ConsoleColor.Green; input = Console.ReadLine(); Console.ResetColor(); if (input.ToLower() == "l" || input.ToLower() == "h") { score = CompareCards(playingCardDeck, cards, firstCard, input, score); roundCounter++; break; } else if (input.ToLower() == "exit") { break; } else { Console.Write("I didn't quite get that. Please write 'h' or 'l': "); continue; } } if (input.ToLower() == "exit") { break; } if (roundCounter == 10) { WriteGreen("\nThe round is over!\n"); break; } } double percent = CalculatePercent(score, roundCounter); EndGame(userName, percent); }
private int CompareCards(PlayingCardDeck playingCardDeck, List <PlayingCard> cards, PlayingCard firstCard, string answer, int score) { PlayingCard secondCard = playingCardDeck.PickFirstCardFromDeck(cards); Console.Write($"The second card is {secondCard.Suit} {secondCard.Value}, "); cards.Remove(secondCard); switch (answer) { case "l": if (firstCard.Value > secondCard.Value) { WriteGreen("your answer was correct!\n"); score++; Console.ReadKey(); Console.Clear(); } else if (firstCard.Value == secondCard.Value) { WriteGreen("the cards have the same value!\n"); Console.ReadKey(); Console.Clear(); } else { WriteRed("your answer was wrong!\n"); Console.ReadKey(); Console.Clear(); } break; case "h": if (firstCard.Value < secondCard.Value) { WriteGreen("your answer was correct!\n"); score++; Console.ReadKey(); Console.Clear(); } else if (firstCard.Value == secondCard.Value) { WriteGreen("the cards have the same value!\n"); Console.ReadKey(); Console.Clear(); } else { WriteRed("your answer was wrong!\n"); Console.ReadKey(); Console.Clear(); } break; default: break; } return(score); }
public PlayingCard GetFirstCard(PlayingCard playingCardDeck) { return(null); }
private void DisplayCard(PlayingCard card) { Console.WriteLine(card.Face.ToString() + " of " + card.Suit.ToString() + "\n"); }
public void PutCardLast(List <PlayingCard> playingCards, PlayingCard card) => playingCards.Add(card);
private static void PrintCard(PlayingCard card) { Console.WriteLine($"Ditt kort är: {card.Suit} {card.Value}"); }