aboutsummaryrefslogtreecommitdiff
path: root/mwe/ecs-homemade/inc/Components.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'mwe/ecs-homemade/inc/Components.hpp')
-rw-r--r--mwe/ecs-homemade/inc/Components.hpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/mwe/ecs-homemade/inc/Components.hpp b/mwe/ecs-homemade/inc/Components.hpp
new file mode 100644
index 0000000..85da5a5
--- /dev/null
+++ b/mwe/ecs-homemade/inc/Components.hpp
@@ -0,0 +1,20 @@
+#include "Components.h"
+#include <iostream>
+
+template<typename T>
+BehaviourWrapper<T>::BehaviourWrapper() : instance() {}
+
+template<typename T>
+void BehaviourWrapper<T>::onStart() {
+ instance.onStart();
+}
+
+template<typename T>
+void BehaviourWrapper<T>::onUpdate() {
+ instance.onUpdate();
+}
+
+template<typename T>
+void BehaviourScript::addScript() {
+ behaviour = std::make_unique<BehaviourWrapper<T>>();
+}