Ejemplo n.º 1
0
        private void ShowMetrics(bool ending)
        {
            var cells    = _grid.Dimensions.Width * _grid.Dimensions.Height;
            var duration = DateTime.UtcNow.Subtract(RoundStarted).TotalMilliseconds;
            var cps      = ((decimal)1 / ((decimal)duration / (decimal)1000)) * (decimal)cells;

            var messages = new List <GameMessage>();

            messages.Add(new GameMessage(string.Format("Grid {0}x{1} - Cells {2} - Round: {3}", _grid.Dimensions.Width, _grid.Dimensions.Height, cells, CurrentRound)));
            messages.Add(new GameMessage(string.Format("Generate Time: {0:#,##0.0} ms ({1:#,##0.0} cps)", duration, cps)));
            messages.Add(new GameMessage(string.Format("Game Time: {0}", DateTime.UtcNow.Subtract(GameStarted))));

            messages.Add(new GameMessage(""));

            if (ending)
            {
                messages.Add(new GameMessage("Goodbye!", true));
            }
            else
            {
                messages.Add(new GameMessage("Press [r] to reset, [q] to abort.  To reload/regenerate, press [g].", true));
            }

            _gridRenderer.RenderMessages(messages);
        }