From 9619f340827b00d4836406ded073a73b6df9386f Mon Sep 17 00:00:00 2001 From: Loek Le Blansch Date: Thu, 21 Nov 2024 09:10:40 +0100 Subject: do not call event handlers when behaviorscript is not active + add doxygen --- src/crepe/api/BehaviorScript.hpp | 5 ++++- src/crepe/api/Event.h | 6 ++++- src/crepe/api/EventManager.h | 4 ++-- src/crepe/api/Script.cpp | 4 +++- src/crepe/api/Script.h | 47 +++++++++++++++++++++++++++++++++++----- src/crepe/api/Script.hpp | 8 +++++-- 6 files changed, 61 insertions(+), 13 deletions(-) (limited to 'src/crepe/api') diff --git a/src/crepe/api/BehaviorScript.hpp b/src/crepe/api/BehaviorScript.hpp index dd197b3..5b5a418 100644 --- a/src/crepe/api/BehaviorScript.hpp +++ b/src/crepe/api/BehaviorScript.hpp @@ -14,9 +14,12 @@ BehaviorScript & BehaviorScript::set_script(Args &&... args) { dbg_trace(); static_assert(std::is_base_of::value); Script * s = new T(std::forward(args)...); - s->game_object_id = this->game_object_id; + + s->game_object_id_ref = &this->game_object_id; + s->active_ref = &this->active; s->component_manager_ref = &this->component_manager; s->event_manager_ref = &EventManager::get_instance(); + this->script = std::unique_ptr