diff --git a/include/game-engine.h b/include/game-engine.h new file mode 100644 index 0000000000000000000000000000000000000000..e66e60194b902cb42eee173381e2cae1d4f7212e --- /dev/null +++ b/include/game-engine.h @@ -0,0 +1,24 @@ +#ifndef __GAME_H__ +#define __GAME_H__ + +#include "logger.h" +#include "entity-manager.h" + +class GameEngine +{ + public: + GameEngine(); + ~GameEngine(); + void init(); + void update(); + + private: + EntityManager _entityManager; + Logger& _logger; + + // Window* _window; + + // Systems +}; + +#endif // __GAME_H__ diff --git a/include/main.h b/include/main.h index c9347f5a965f4f6d2b3fb688d15c8dde11522000..506b94a5c742314d84d9d929efb7432fa51d0426 100644 --- a/include/main.h +++ b/include/main.h @@ -15,6 +15,7 @@ enum GenerationMethod #include "world-hex-2d.h" #include "world-map-3d.h" #include "chunk.h" +#include "game-engine.h" #include "logger.h" #include "entities/entity-generic.h" #include "maths/maths.h" diff --git a/src/game-engine.cpp b/src/game-engine.cpp new file mode 100644 index 0000000000000000000000000000000000000000..806836f90bce64f17b904cea828af91b5f06b374 --- /dev/null +++ b/src/game-engine.cpp @@ -0,0 +1,17 @@ +#include "game-engine.h" + + +GameEngine::GameEngine() + : _logger( Logger::instance() ) +{ + this->_logger.info( "Creating GameEngine Object" ); +} +GameEngine::~GameEngine() +{ + this->_logger.info( "Cleaning GameEngine Object" ); +} +void GameEngine::init(){} +void GameEngine::update() +{ + this->_entityManager.update(); +} diff --git a/src/main.cpp b/src/main.cpp index 3325eb5a3d91864c96f0555a525be3159f29b575..494c2ebac50467a7982a7a171ee4d70631b61d03 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -35,6 +35,9 @@ int main() { // List Saves saveManager.list(); + + GameEngine* game = new GameEngine(); + // Main Loop while( state != Exit ) { @@ -45,7 +48,7 @@ int main() { } // Update Entities - entityManager.update(); + game->update(); // Process Input // Movement Updates // Collision Updates @@ -62,6 +65,7 @@ int main() { entities.pop_back(); delete entity; } + delete game; // Return logger.info( "Process Ending" );