Пример #1
0
 private void LogAll(MatchRender renderP1)
 {
     foreach (ILogger logger in _loggers)
     {
         logger.Log(renderP1);
     }
 }
Пример #2
0
        public void Log(MatchRender rendered)
        {
            SaveMap(rendered);
            SaveState(rendered);

            SavePlayerOneMove(rendered);
            SavePlayerTwoMove(rendered);
        }
        public void Log(MatchRender rendered)
        {
            FileWriter.WriteLine();
            FileWriter.WriteLine(rendered.Round);
            FileWriter.WriteLine(rendered.Map);

            foreach (var move in rendered.Moves)
            {
                FileWriter.WriteLine(move);
            }
        }
Пример #4
0
 public void Log(MatchRender rendered)
 {
     // 1 title line, 2 spacing lines and 2 move lines
     if (IsConsoleTooSmall(CalculateRenderedMapHeight(rendered.Map) + 1 + 2 + 2))
     {
         LogWithScrolling(rendered);
     }
     else
     {
         LogWithoutScrolling(rendered);
     }
 }
Пример #5
0
        protected void LogWithScrolling(MatchRender rendered)
        {
            WriteToConsoleAndDebug(title);
            WriteToConsoleAndDebug(rendered.Map);

            Console.WriteLine();
            Console.WriteLine();

            foreach (var move in rendered.Moves)
            {
                WriteToConsoleAndDebug(move);
            }
        }
Пример #6
0
        public void Log(MatchRender rendered)
        {
            WriteToConsoleAndDebug(title);
            WriteToConsoleAndDebug(rendered.MapAdvanced);

            Console.WriteLine();
            Console.WriteLine();

            foreach (var move in rendered.Moves)
            {
                WriteToConsoleAndDebug(move);
            }
        }
Пример #7
0
        protected void LogWithoutScrolling(MatchRender rendered)
        {
            var line = 0;

            WriteToConsoleAndDebug(0, line++, title);

            WriteToConsoleAndDebug(0, line, rendered.Map);
            line += CalculateRenderedMapHeight(rendered.Map);

            foreach (var move in rendered.Moves)
            {
                WriteToConsoleAndDebug(0, line++, move);
            }
        }
Пример #8
0
        public string GetMove(MatchRender rendered)
        {
            OutputFile(_mapFilename, rendered.Map);
            OutputFile(_stateFilename, rendered.State);

            _botTimer.Reset();
            _botTimer.Start();

            var process = CreateProcess();

            AddEventHandlersToProcess(process);
            StartProcess(process);
            var result = HandleProcessResponse(process);

            AppendLogs();
            ClearRoundFiles();

            return(result);
        }
Пример #9
0
        public MatchRender Render(IMatch renderMatch)
        {
            var match = (Match)renderMatch;

            var result = new MatchRender
            {
                Map         = RenderMap(match),
                State       = RenderState(match),
                RoundNumber = match.GetRoundNumber(),
                Round       = String.Format("Round {0}", match.GetRoundNumber())
            };

            result.Moves[0] = String.Format("Player {0}: {1,-20} > {2}",
                                            1, match.GetPlayerLastMove(1), match.GetPlayerLastMoveResult(1));
            result.Moves[1] = String.Format("Player {0}: {1,-20} > {2}",
                                            2, match.GetPlayerLastMove(2), match.GetPlayerLastMoveResult(2));

            return(result);
        }
Пример #10
0
 private void LogAll(MatchRender renderP1)
 {
     _logger.Log(renderP1);
     _replayLogger.Log(renderP1);
     _consoleLogger.Log(renderP1);
 }
Пример #11
0
        private void GetMove(BotRunner player, MatchRender rendered)
        {
            var move = player.GetMove(rendered);

            Match.SetPlayerMove(player.PlayerNumber, move);
        }
Пример #12
0
 public void Log(MatchRender rendered)
 {
     LogWithoutScrolling(rendered);
 }
Пример #13
0
 protected void SavePlayerTwoMove(MatchRender rendered)
 {
     WriteFile(rendered.RoundNumber, Settings.Default.ReplayPlayerTwoMoveFilename, rendered.Moves[1]);
 }
Пример #14
0
 protected void SaveState(MatchRender rendered)
 {
     WriteFile(rendered.RoundNumber, Settings.Default.StateFilename, rendered.State);
 }
Пример #15
0
 protected void SaveMapAdvanced(MatchRender rendered)
 {
     WriteFile(rendered.RoundNumber, Settings.Default.MapAdvancedFilename, rendered.MapAdvanced);
 }