コード例 #1
0
ファイル: Program.cs プロジェクト: daveschwartzy/Lab12
        static void Main(string[] args)
        {
            List <Player> opponents = new List <Player>();

            opponents.Add(new RandomPlayer("Ran Dumb"));
            opponents.Add(new DwayneJohnson("Dwayne Johnson"));

            Console.WriteLine("~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~");
            Console.WriteLine("Welcome to the Rock Paper Scissors Simulator");
            Console.WriteLine("~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~\n");

            string      name  = HumanPlayer.GetName("Please enter your name: ");
            HumanPlayer human = new HumanPlayer(name);


            bool again = true;

            while (again)
            {
                int      choose = Validator.ChooseOpponent($"Hi {human.Name}! Please select your opponent.\nChoose 1 for Ran Dumb or 2 for Dwayne Johnson.\n");
                Roshambo choice = human.GenerateRoshambo();
                human.Choice = choice;

                if (opponents[choose] is RandomPlayer)
                {
                    Roshambo opponentChoice = ((RandomPlayer)opponents[choose]).GenerateRoshambo();
                    string   result         = Validator.RoshamResults(human, opponents[choose], human.Choice, (opponents[choose]).Choice);
                    Console.WriteLine(human.ToString() + opponents[choose].ToString() + result);
                }
                else
                {
                    Roshambo opponentChoice = ((DwayneJohnson)opponents[choose]).GenerateRoshambo();
                    string   result         = Validator.RoshamResults(human, opponents[choose], human.Choice, (opponents[choose]).Choice);
                    Console.WriteLine(human.ToString() + opponents[choose].ToString() + result);
                }
                Console.WriteLine($"You won {Validator.win} time(s) and lost {Validator.lose} time(s).\n");
                again = Validator.DoAgain("Would you like to play again? (Y or N)\n");
            }
            Console.WriteLine("Goodbye!");
            Console.ReadLine();
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: edwardsdan/Lab12Actual
 public static void Counter(ref int wins, ref int losses, Human UserName, Player Opponent, Roshambo Input, Roshambo AI)
 {
     Console.WriteLine($"{UserName.Name}: {Input}\n{Opponent.Name}:{AI.ToString()}");
     Console.WriteLine(WinorLoss(Input, AI));
     if (WinorLoss(Input, AI) == "You lose!")
     {
         losses++;
     }
     if (WinorLoss(Input, AI) == "You win!")
     {
         wins++;
     }
 }
コード例 #3
0
ファイル: RockDude.cs プロジェクト: edwardsdan/Lab12Actual
 public override Roshambo generateRoshambo(Roshambo x)
 {
     return(Roshambo.rock);
 }
コード例 #4
0
ファイル: HumanPlayer.cs プロジェクト: daveschwartzy/Lab12
        public override Roshambo GenerateRoshambo()
        {
            Roshambo Choice = Validator.ValidateChoice($"Okay, {Name}, please choose rock, paper, or scissors. (R / P / S)\n");

            return(Choice);
        }
コード例 #5
0
 public abstract Roshambo generateRoshambo(Roshambo x);
コード例 #6
0
ファイル: Validator.cs プロジェクト: daveschwartzy/Lab12
        public static string RoshamResults(Player human, Player opponent, Roshambo choice, Roshambo opponentChoice)
        {
            string result = "";

            if (choice == Roshambo.paper)
            {
                if (opponentChoice == Roshambo.paper)
                {
                    result = "Draw!";
                }
                else if (opponentChoice == Roshambo.rock)
                {
                    win++;
                    result = $"You win!";
                }
                else
                {
                    lose++;
                    result = $"{opponent.Name} wins!";
                }
            }
            else if (choice == Roshambo.rock)
            {
                if (opponentChoice == Roshambo.rock)
                {
                    result = "Draw!";
                }
                else if (opponentChoice == Roshambo.scissors)
                {
                    win++;
                    result = $"You win!";
                }
                else
                {
                    lose++;
                    result = $"{opponent.Name} wins!";
                }
            }
            else
            {
                if (opponentChoice == Roshambo.paper)
                {
                    win++;
                    result = $"You win!";
                }
                else if (opponentChoice == Roshambo.rock)
                {
                    lose++;
                    result = $"{opponent.Name} wins!";
                }
                else
                {
                    result = "Draw!";
                }
            }
            return(result);
        }