Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            _client = new DragonsClient("127.0.0.1", 50051);
            if (args.Length == 0)
            {
                SinglePlayerStart(PlayerType.HardComputer, PlayerType.HardComputer).Wait();
            }
            else
            {
                var playerTasks = new[]
                {
                    MultiPlayerStart(PlayerType.HardComputer, PlayerMode.Waiter),
                    MultiPlayerStart(PlayerType.HardComputer, PlayerMode.Joiner)
                };
                Task.WaitAll(playerTasks);
            }

            _client.Dispose();

            System.Console.WriteLine("Done!");

            var joinerLogString = new StringBuilder();
            var waiterLogString = new StringBuilder();

            while (_waiterLog.TryDequeue(out var log))
            {
                waiterLogString.AppendLine(log.Item1);
                System.Console.ForegroundColor = log.Item2;
                System.Console.WriteLine(log.Item1);
            }

            while (_joinerLog.TryDequeue(out var log))
            {
                joinerLogString.AppendLine(log.Item1);
                System.Console.ForegroundColor = log.Item2;
                System.Console.WriteLine(log.Item1);
            }
            File.WriteAllText(LogFilePath, $"{waiterLogString}{Environment.NewLine}{joinerLogString}");
            System.Console.ReadLine();
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            _client = new DragonsClient(new Uri("http://localhost:51962/"), Guid.NewGuid().ToString(), Constants.ValidApiKey);

            if (args.Length == 0)
            {
                SinglePlayerStart(PlayerType.HardComputer, PlayerType.HardComputer).Wait();
            }
            else
            {
                var playerTasks = new[]
                {
                    MultiPlayerStart(PlayerType.HardComputer, PlayerMode.Waiter),
                    MultiPlayerStart(PlayerType.HardComputer, PlayerMode.Joiner)
                };
                Task.WaitAll(playerTasks);
            }

            System.Console.WriteLine("Done!");

            var joinerLogString = new StringBuilder();
            var waiterLogString = new StringBuilder();

            while (_waiterLog.TryDequeue(out var log))
            {
                waiterLogString.AppendLine(log.Item1);
                System.Console.ForegroundColor = log.Item2;
                System.Console.WriteLine(log.Item1);
            }

            while (_joinerLog.TryDequeue(out var log))
            {
                joinerLogString.AppendLine(log.Item1);
                System.Console.ForegroundColor = log.Item2;
                System.Console.WriteLine(log.Item1);
            }
            File.WriteAllText(LogFilePath, $"{waiterLogString}{Environment.NewLine}{joinerLogString}");
            System.Console.ReadLine();
        }