diff options
Diffstat (limited to 'src/crepe/ScriptSystem.cpp')
-rw-r--r-- | src/crepe/ScriptSystem.cpp | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/src/crepe/ScriptSystem.cpp b/src/crepe/ScriptSystem.cpp deleted file mode 100644 index 171b490..0000000 --- a/src/crepe/ScriptSystem.cpp +++ /dev/null @@ -1,47 +0,0 @@ -#include <forward_list> -#include <functional> -#include <vector> - -#include "api/BehaviorScript.h" -#include "api/Script.h" -#include "util/log.h" - -#include "ComponentManager.h" -#include "ScriptSystem.h" - -using namespace std; -using namespace crepe; -using namespace crepe::api; - -ScriptSystem::ScriptSystem() { dbg_trace(); } -ScriptSystem::~ScriptSystem() { dbg_trace(); } - -ScriptSystem & ScriptSystem::get_instance() { - static ScriptSystem instance; - return instance; -} - -void ScriptSystem::update() { - using namespace std; - dbg_trace(); - - forward_list<Script *> scripts = this->get_scripts(); - for (Script * script : scripts) script->update(); -} - -forward_list<Script *> ScriptSystem::get_scripts() { - forward_list<Script *> scripts = {}; - ComponentManager & mgr = ComponentManager::get_instance(); - vector<reference_wrapper<BehaviorScript>> behavior_scripts - = mgr.get_components_by_type<BehaviorScript>(); - - for (auto behavior_script_ref : behavior_scripts) { - BehaviorScript & behavior_script = behavior_script_ref.get(); - if (!behavior_script.active) continue; - Script * script = behavior_script.script.get(); - if (script == nullptr) continue; - scripts.push_front(script); - } - - return scripts; -} |