diff options
author | Loek Le Blansch <loek@pipeframe.xyz> | 2024-11-28 10:13:11 +0100 |
---|---|---|
committer | Loek Le Blansch <loek@pipeframe.xyz> | 2024-11-28 10:13:11 +0100 |
commit | 6fd7cec7d4bbf5aeb361b3f1337671bb0f9af61b (patch) | |
tree | 01f6977c66a1e07e07aae42358a7e1a4e55ef53c /src/crepe/api/SceneManager.cpp | |
parent | d1eed940b8119e95a14f1d08bf26184c7f0a0d8f (diff) |
manager mediator refactor
Diffstat (limited to 'src/crepe/api/SceneManager.cpp')
-rw-r--r-- | src/crepe/api/SceneManager.cpp | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/src/crepe/api/SceneManager.cpp b/src/crepe/api/SceneManager.cpp deleted file mode 100644 index 1f783ad..0000000 --- a/src/crepe/api/SceneManager.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#include <algorithm> -#include <memory> - -#include "../ComponentManager.h" - -#include "SceneManager.h" - -using namespace crepe; -using namespace std; - -SceneManager::SceneManager(ComponentManager & mgr) : component_manager(mgr) {} - -void SceneManager::set_next_scene(const string & name) { next_scene = name; } - -void SceneManager::load_next_scene() { - // next scene not set - if (this->next_scene.empty()) return; - - auto it = find_if(this->scenes.begin(), this->scenes.end(), - [&next_scene = this->next_scene](unique_ptr<Scene> & scene) { - return scene.get()->get_name() == next_scene; - }); - - // next scene not found - if (it == this->scenes.end()) return; - unique_ptr<Scene> & scene = *it; - - // Delete all components of the current scene - ComponentManager & mgr = this->component_manager; - mgr.delete_all_components(); - - // Load the new scene - scene->load_scene(); -} |