コード例 #1
0
        public string Compare(int r = 1)
        {
            string winner = "";

            if (r == 1)
            {
                if (player1.RecentCard.Rank < player2.RecentCard.Rank)
                {
                    player1.Take();
                    player1.Remove();
                    player2.Remove();
                    winner = player1.Name + " wins.  " + player1.Name + ":" + player1.Score + "  " + player2.Name + ":" + player2.Score;
                }
                else if (player1.RecentCard.Rank > player2.RecentCard.Rank)
                {
                    player2.Take();
                    player1.Remove();
                    player2.Remove();
                    winner = player2.Name + " wins.  " + player1.Name + ":" + player1.Score + "  " + player2.Name + ":" + player2.Score;
                }
                else if (player1.RecentCard.Rank == player2.RecentCard.Rank)
                {
                    Console.WriteLine("Draw!");
                    int drewCard = player1.RecentCard.Rank;
                    if (drewCard < player1.Pile.Count || drewCard < player2.Pile.Count)
                    {
                        player1.Deal(player1.RecentCard.Rank + 1);
                        player2.Deal(player2.RecentCard.Rank + 1);
                        Console.Write(Compare(drewCard));
                    }
                    else if (player1.Pile.Count != 1 && player2.Pile.Count != 1)
                    {
                        Console.WriteLine("Not enough cards to play. Shuffling>>>");
                        player1.Shuffle();
                        player2.Shuffle();
                        Console.WriteLine("\nPress Any Key to Continue");
                    }
                    else
                    {
                        Console.WriteLine("\t\t\t\t\tIt is the last card. Game is ending.");
                        player1.Remove();
                        player2.Remove();
                    }
                }
            }

            else
            {
                if (player1.RecentCard.Rank < player2.RecentCard.Rank)
                {
                    player1.Take(r + 1);
                    player1.Remove(r + 1);
                    player2.Remove(r + 1);
                    winner = player1.Name + " wins.  " + player1.Name + ":" + player1.Score + "  " + player2.Name + ":" + player2.Score;
                }

                else if (player1.RecentCard.Rank > player2.RecentCard.Rank)
                {
                    player2.Take(r + 1);
                    player1.Remove(r + 1);
                    player2.Remove(r + 1);
                    winner = player2.Name + " wins.  " + player1.Name + ":" + player1.Score + "  " + player2.Name + ":" + player2.Score;
                }

                else if (player1.RecentCard.Rank == player2.RecentCard.Rank)
                {
                    Console.WriteLine("Tie again! Shuffling>>>");
                    player1.Shuffle();
                    player2.Shuffle();
                    Console.WriteLine("\nPress Any Key to Continue");
                }
            }
            return(winner);
        }