/* * Game execution: Gets input events, processes game logic and draws sprites on the screen */ void Game::gameLoop() { _gameState = GameState::PLAY; while (_gameState != GameState::EXIT) { //Start synchronization between refresh rate and frame rate _fpsLimiter.startSynchronization(); //Process the input information (keyboard and mouse) processInput(); //Execute the player actions (keyboard and mouse) executePlayerCommands(); //Update the game status doPhysics(); //Draw the objects on the screen renderGame(); //Force synchronization _fpsLimiter.forceSynchronization(); } }
/* * Game execution: Gets input events, processes game logic and draws sprites on the screen */ void Game::gameLoop() { _gameState = GameState::PLAY; while (_gameState != GameState::EXIT) { if (_network.GetNetworkState() == NetworkState::SAYINGHELLO) { _network.SayHello(); } int positionSquare = aSquares[_network.GetIdSquare()].GetPosition(); _network.SendMove(positionSquare,_inputState, _inputStateList); Receiving(); //Update the game physics doPhysics(); //Detect keyboard and/or mouse events _graphic.detectInputEvents(); //Execute the player commands executePlayerCommands(); //Render game renderGame(); } }