private static string ParseCards(List <Data.Card> playerCards) { if (playerCards.Count != 2) { throw new ArgumentException("Es gibt immer nur 2 Hole Cards!!"); } var cards = CardConverter.ConvertCards(playerCards); var secondSuit = playerCards[0].Suit == playerCards[1].Suit ? "s" : "h"; return(cards[0] + "s " + cards[3] + secondSuit); }
public static double CalculateOdds(List <Data.Card> playerCards, List <Data.Card> tableCards, int alivePlayers) { //Flop/turn/river calcs if (tableCards.Count <= 0) { return(HoleCardLookup.GetOdds(playerCards, alivePlayers)); } var cards = Hand.ParseHand(CardConverter.ConvertCards(playerCards)); var table = Hand.ParseHand(CardConverter.ConvertCards(tableCards)); const long durationMillis = 4500; //Has to be figured out var winOdds = MonteCarlo.WinOddsMonteCarlo(cards, table, alivePlayers, durationMillis); return(winOdds); }