private static void Draw(IConsoleBuffer border, IConsoleBuffer board, IConsoleBuffer nextPiecePanel, IConsoleBuffer scorePanel, string lastCommand) { frame.Fill(ConsoleColor.DarkGray); for (var i = 0; i < PADDING; ++i) { var j = 2 * i; border.Stroke( i, i, border.Width - j, border.Height - j, DoubleLight, ConsoleColor.Gray); } board.Fill(ConsoleColor.Black); board.DrawPuzzle(0, 0, game); board.DrawPuzzle(game.CursorX, game.CursorY, game.Current); nextPiecePanel.Draw(0, 0, "Next", ConsoleColor.Black); nextPiecePanel.DrawPuzzle(2, 1, game.Next); var score = game.Score.ToString(CultureInfo.CurrentCulture); scorePanel.Draw(0, 0, $"Score", ConsoleColor.Black); scorePanel.Draw(2, 1, score, ConsoleColor.White); scorePanel.Draw(0, 2, lastCommand, ConsoleColor.Black); frame.Flush(); }