public List <CL_cards> InitDeck() { deck = new List <CL_cards>(); List <string> values = new List <string>() { "one", "two", "three", "four", "five", "six", "seven", "heigt", "nine", "ten", "jack", "quenn", "king" }; List <string> suits = new List <string>() { "Hearts", "Diamonds", "Clubs", "Spades" }; suits.ForEach(suit => values.ForEach(value => { CL_cards card = new CL_cards(); card.SetCard(value, suit); // Console.WriteLine(card.value + " of " + card.suit + " added"); deck.Add(card); })); // Console.WriteLine(deck.Count.ToString(), " cartes ont été ajoutées"); return(deck); }
internal void DesignedWinner(CL_player player1, CL_player player2, CL_player bank) { List <CL_player> playerList = new List <CL_player> { player1, player2, bank }; List <int> listPoints = new List <int>() { player1.points, player2.points, bank.points }; listPoints.Sort(); CL_player winner; if (bank.hand[0].value.Equals(bank.hand[1].value).Equals(bank.hand[2].value)) { bank.Victory++; // Console.WriteLine("The bank win with 3 identicals cards \n3 " + bank.hand[0].value); } else { if (listPoints.FindAll(points => points == listPoints[listPoints.Count - 1]).Count == 1) { winner = playerList.Find(player => player.points == listPoints[listPoints.Count - 1]); } else { List <CL_player> playersWithWinnerScore = playerList.FindAll(player => player.points == listPoints[listPoints.Count - 1]); CL_cards higherCard = null; int higherCardValue = 0; playersWithWinnerScore.ForEach(player => { player.hand.ForEach(card => { int cardValue = 0; switch (card.value) { case "king": cardValue = 13; break; case "queen": cardValue = 12; break; case "jack": cardValue = 11; break; default: Value result = (Value)Enum.Parse(typeof(Value), card.value); cardValue = (int)result; break; } if (cardValue > higherCardValue) { higherCard = card; } }); }); winner = playersWithWinnerScore.Find(player => player.hand.Contains(higherCard)); } winner.Victory++; Console.WriteLine("Le gagnant avec un score de " + winner.points + " est " + winner.Name); } listPoints.Clear(); playerList.Clear(); }
public void GiveCard(CL_cards card) { hand.Add(card); }