public Game(GameRenderer gameRenderer, GameController gameController) { this.gameRenderer = gameRenderer; this.gameController = gameController; this.gameBoard = new GameBoard(4); this.random = new Random(); RandomBlock(); RandomBlock(); // Show board gameRenderer.DrawBoard(gameBoard); hasBlocksMerged = false; hasBlocksMoved = false; }
public void Step() { switch (gameController.GetCommand()) { case "MoveLeft": MoveLeft(); break; case "MoveUp": MoveUp(); break; case "MoveRight": MoveRight(); break; case "MoveDown": MoveDown(); break; case "Quit": quitGame = true; break; default: return; } // add random block if (hasBlocksMerged || hasBlocksMoved) { RandomBlock(); hasBlocksMerged = false; hasBlocksMoved = false; } // check end game isGameEnd = EndGameCheck(); // calculate score gameBoard.CalculateScore(); // Show board gameRenderer.DrawBoard(gameBoard); }