diff options
Diffstat (limited to 'src/crepe/api/Script.hpp')
-rw-r--r-- | src/crepe/api/Script.hpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/crepe/api/Script.hpp b/src/crepe/api/Script.hpp index aceb38b..a064a90 100644 --- a/src/crepe/api/Script.hpp +++ b/src/crepe/api/Script.hpp @@ -1,7 +1,6 @@ #pragma once #include "../ComponentManager.h" -#include "../Exception.h" #include "BehaviorScript.h" #include "Script.h" @@ -10,21 +9,20 @@ namespace crepe { template <typename T> T & Script::get_component() const { - std::vector<std::reference_wrapper<T>> all_components - = this->get_components<T>(); + using namespace std; + vector<reference_wrapper<T>> all_components = this->get_components<T>(); if (all_components.size() < 1) - throw Exception("Script: no component found with type = {}", - typeid(T).name()); + throw runtime_error( + format("Script: no component found with type = {}", typeid(T).name())); return all_components.back().get(); } template <typename T> std::vector<std::reference_wrapper<T>> Script::get_components() const { - auto & parent = *this->parent_ref; auto & mgr = *this->component_manager_ref; - return mgr.get_components_by_id<T>(parent.game_object_id); + return mgr.get_components_by_id<T>(this->game_object_id); } } // namespace crepe |