diff options
-rw-r--r-- | yage/entity/engine.cpp | 10 | ||||
-rw-r--r-- | yage/entity/engine.h | 6 |
2 files changed, 10 insertions, 6 deletions
diff --git a/yage/entity/engine.cpp b/yage/entity/engine.cpp index 1cef4504..73774093 100644 --- a/yage/entity/engine.cpp +++ b/yage/entity/engine.cpp @@ -21,13 +21,14 @@ Engine::~Engine() quit(); } -void Engine::init() +Engine &Engine::init() { yage::init(); window_.create("Game Engine", 800, 640); + return *this; } -void Engine::mainLoop() +Engine &Engine::mainLoop() { while (!window_.shouldClose()) { window_.pollEvents(); @@ -37,6 +38,8 @@ void Engine::mainLoop() window_.swapBuffer(); } + + return *this; } void Engine::update() @@ -46,9 +49,10 @@ void Engine::update() } } -void Engine::addSpace(std::unique_ptr<Space> space) +Engine &Engine::addSpace(std::unique_ptr<Space> space) { spaces_.push_back(std::move(space)); + return *this; } Engine &Engine::instance() diff --git a/yage/entity/engine.h b/yage/entity/engine.h index 9a1f6d2b..6719eeaf 100644 --- a/yage/entity/engine.h +++ b/yage/entity/engine.h @@ -32,16 +32,16 @@ public: ~Engine(); /// Initialize window and other aspects of the engine. - void init(); + Engine &init(); /// Main game loop of the engine. - void mainLoop(); + Engine &mainLoop(); /// Updates the systems. void update(); /// Add spaces to the engine - void addSpace(std::unique_ptr<Space> space); + Engine &addSpace(std::unique_ptr<Space> space); /// Returns the instance of the engine, as there is only one instance of the /// engine. |