aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-12-13 17:42:34 +0100
committerLoek Le Blansch <loek@pipeframe.xyz>2024-12-13 17:42:34 +0100
commit3a23e41255af0de3c5c7f5d9df981c8b205e291f (patch)
tree50593d45598dd60eecafef514ef4fe3e9957b845 /src/crepe/api
parentc5667ee90d7d542aa9984eb31b48b59d6240119b (diff)
add timer functionality to script
Diffstat (limited to 'src/crepe/api')
-rw-r--r--src/crepe/api/Script.cpp2
-rw-r--r--src/crepe/api/Script.h12
2 files changed, 14 insertions, 0 deletions
diff --git a/src/crepe/api/Script.cpp b/src/crepe/api/Script.cpp
index 753a9e3..50edea0 100644
--- a/src/crepe/api/Script.cpp
+++ b/src/crepe/api/Script.cpp
@@ -25,3 +25,5 @@ void Script::set_next_scene(const string & name) {
}
SaveManager & Script::get_save_manager() const { return this->mediator->save_manager; }
+
+LoopTimerManager & Script::get_loop_timer() const { return this->mediator->loop_timer; }
diff --git a/src/crepe/api/Script.h b/src/crepe/api/Script.h
index 668e5d1..3569b4a 100644
--- a/src/crepe/api/Script.h
+++ b/src/crepe/api/Script.h
@@ -2,6 +2,7 @@
#include <vector>
+#include "../manager/LoopTimerManager.h"
#include "../manager/EventManager.h"
#include "../manager/Mediator.h"
#include "../system/CollisionSystem.h"
@@ -46,9 +47,17 @@ protected:
/**
* \brief Script update function (empty by default)
*
+ * \param delta_time Time since last fixed update
+ *
* This function is called during the ScriptSystem::update() routine if the \c BehaviorScript
* component holding this script instance is active.
*/
+ virtual void update(duration_t delta_time) { return this->update(); }
+ /**
+ * \brief Fallback script update function (empty by default)
+ *
+ * Allows the game programmer to ignore parameters passed to \c update()
+ */
virtual void update() {}
//! \}
@@ -135,6 +144,9 @@ protected:
//! Retrieve SaveManager reference
SaveManager & get_save_manager() const;
+ //! Retrieve LoopTimerManager reference
+ LoopTimerManager & get_loop_timer() const;
+
//! \}
private: