Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            StreamReader myFile = new StreamReader("poker.txt");

            int player1wins = 0;

            Hand player1 = new Hand();
            Hand player2 = new Hand();
            List<Card> twoHands = new List<Card>();

            while (!myFile.EndOfStream)
            {
                player1 = new Hand();
                twoHands = ParseString(myFile.ReadLine());

                for (int i = 0; i < 5; i++)
                {
                    player1.Add(twoHands[0]);
                    twoHands.RemoveAt(0);
                }

                player2 = new Hand();

                for (int i = 0; i < 5; i++)
                {
                    player2.Add(twoHands[0]);
                    twoHands.RemoveAt(0);
                }

                ScoringEngine.GetScore(player1);
                ScoringEngine.GetScore(player2);

                if (player1.Score > player2.Score)
                {
                    player1wins++;
                }
                else if (player1.Score == player2.Score)
                {
                    if (player1.TieBreakValue > player2.TieBreakValue)
                    {
                        player1wins++;
                    }
                    else
                        if (player1.TieBreakValue == player2.TieBreakValue)
                        {
                            if (player1.HighCard > player2.HighCard)
                                player1wins++;
                        }
                }

            }

            myFile.Close();

            Console.WriteLine("Player 1 wins: " + player1wins);
        }
Ejemplo n.º 2
0
 private Hand GeneratePokerHand(string[] cards)
 {
     Hand hand = new Hand("player");
     foreach (string s in cards)
     {
         char[] c = s.ToCharArray();
         Card card = new Card();
         hand.Add(card);
         switch (c[0])
         {
             case '2':
                 card.FaceValue = 0;
                 break;
             case '3':
                 card.FaceValue = (CardTypes.CardType)1;
                 break;
             case '4':
                 card.FaceValue = (CardTypes.CardType)2;
                 break;
             case '5':
                 card.FaceValue = (CardTypes.CardType)3;
                 break;
             case '6':
                 card.FaceValue = (CardTypes.CardType)4;
                 break;
             case '7':
                 card.FaceValue = (CardTypes.CardType)5;
                 break;
             case '8':
                 card.FaceValue = (CardTypes.CardType)6;
                 break;
             case '9':
                 card.FaceValue = (CardTypes.CardType)7;
                 break;
             case 'T':
                 card.FaceValue = (CardTypes.CardType)8;
                 break;
             case 'J':
                 card.FaceValue = (CardTypes.CardType)9;
                 break;
             case 'Q':
                 card.FaceValue = (CardTypes.CardType)10;
                 break;
             case 'K':
                 card.FaceValue = (CardTypes.CardType)11;
                 break;
             case 'A':
                 card.FaceValue = (CardTypes.CardType)12;
                 break;
             default:
                 break;
         }
         switch (c[1])
         {
             case 'C':
                 card.Suit = 0;
                 break;
             case 'D':
                 card.Suit = (CardTypes.Suits)1;
                 break;
             case 'H':
                 card.Suit = (CardTypes.Suits)2;
                 break;
             case 'S':
                 card.Suit = (CardTypes.Suits)3;
                 break;
         }
     }
     hand.Sort();
     return hand;
 }