public void PlayGame(Arguments arguments) { var initialGameState = LoadInitialGameState(arguments); _renderer = _gameRendererFactory.CreateGameRenderer(initialGameState.Board.GetType()); initialGameState = _gameProcessor.StartNewGame(initialGameState); _renderer.Render(initialGameState); while (true) { var nextGameState = _gameProcessor.Tick(); _renderer.Render(nextGameState); if (ShouldSaveGame(nextGameState)) { _gamePersistence.SaveGame(nextGameState, _savePath); } } }
public void Render(IGameRenderer renderer) { renderer.Render(board); }
protected override void OnPaint(PaintEventArgs e) { _renderer.Graphics = e.Graphics; _renderer.Render(); }
public override void OnDraw(float elapsedTime) { _gameRenderer.Render(elapsedTime, Game.SpriteBatch, TransitionRenderTarget); _finishedSprite.Draw(Game.SpriteBatch); }