aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/ComponentManager.hpp
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-11-12 22:43:32 +0100
committerLoek Le Blansch <loek@pipeframe.xyz>2024-11-12 22:43:32 +0100
commit3e94ecb3dac5003a3d58210ed1a4d1f1cb2083d1 (patch)
tree67c3e1c122652ae09e58e7de49db668e252c4730 /src/crepe/ComponentManager.hpp
parentf2509e89c02894ebd3ad992324eb300103621d26 (diff)
add script unit tests + major refactoring
Diffstat (limited to 'src/crepe/ComponentManager.hpp')
-rw-r--r--src/crepe/ComponentManager.hpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/crepe/ComponentManager.hpp b/src/crepe/ComponentManager.hpp
index 98efb49..89a8536 100644
--- a/src/crepe/ComponentManager.hpp
+++ b/src/crepe/ComponentManager.hpp
@@ -31,7 +31,10 @@ T & ComponentManager::add_component(game_object_id_t id, Args &&... args) {
// Create a new component of type T (arguments directly forwarded). The
// constructor must be called by ComponentManager.
- T * instance_ptr = new T(id, forward<Args>(args)...);
+ T * instance_ptr = new T(Component::Data {
+ .id = id,
+ .component_manager = *this,
+ }, forward<Args>(args)...);
if (instance_ptr == nullptr) throw std::bad_alloc();
T & instance_ref = *instance_ptr;