static void Main(string[] args) { var shapeFactory = new ShapeFactory(); var player1 = new ConsoleHumanPlayer() { Name = "Frank" }; var player2 = new MachinePlayer() { Name = "PC" }; Console.Write("Use decision machine? (Y): "); var userReponse = Console.ReadLine(); var useDecisionMachine = userReponse.Equals("Y", StringComparison.InvariantCultureIgnoreCase); var game = new Game(player1, player2, useDecisionMachine); game.ShapePlayedEvent += Game_ShapePlayedEvent; do { Console.WriteLine($"Player 1 : {player1.Name}"); Console.WriteLine($"Player 2 : {player2.Name}"); var roundResult = game.PlayNewRound(); Console.WriteLine($"Result: {(roundResult.IsDraw ? "Draw" : $"{roundResult.WinnerPlayer.Name} Wins!")}"); Console.Write("Play again? (Y): "); userReponse = Console.ReadLine(); Console.WriteLine("====================================================="); } while (userReponse.Equals("Y", StringComparison.InvariantCultureIgnoreCase));
public static void Main(string[] args) { var blackPlayer = ConsoleHumanPlayer.CreateFor(Player.Black); var whitePlayer = ConsoleHumanPlayer.CreateFor(Player.White); var shogiGame = new ShogiGame( new BoardConsoleRender(), blackPlayer, whitePlayer, new Board()); shogiGame.Start(); }