aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/Script.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/api/Script.h')
-rw-r--r--src/crepe/api/Script.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/crepe/api/Script.h b/src/crepe/api/Script.h
index d543df8..c5e3cc4 100644
--- a/src/crepe/api/Script.h
+++ b/src/crepe/api/Script.h
@@ -9,6 +9,7 @@ class ScriptSystem;
namespace crepe {
class BehaviorScript;
+class ComponentManager;
class Script {
//! ScriptSystem calls \c update()
@@ -31,14 +32,18 @@ protected:
template <typename T>
std::vector<std::reference_wrapper<T>> get_components();
-protected:
+private:
// NOTE: Script must have a constructor without arguments so the game
// programmer doesn't need to manually add `using Script::Script` to their
// concrete script class.
Script() = default;
//! Only \c BehaviorScript instantiates Script
friend class BehaviorScript;
+
+ // These references are set by BehaviorScript immediately after calling the
+ // constructor of Script.
BehaviorScript * parent_ref = nullptr;
+ ComponentManager * component_manager_ref = nullptr;
};
} // namespace crepe