aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/system/AnimatorSystem.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/system/AnimatorSystem.h')
-rw-r--r--src/crepe/system/AnimatorSystem.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/crepe/system/AnimatorSystem.h b/src/crepe/system/AnimatorSystem.h
new file mode 100644
index 0000000..092e131
--- /dev/null
+++ b/src/crepe/system/AnimatorSystem.h
@@ -0,0 +1,28 @@
+#pragma once
+
+#include "System.h"
+
+namespace crepe {
+
+/**
+ * \brief The AnimatorSystem is responsible for managing and updating all Animator components.
+ *
+ * This system is responsible for controlling the behavior of the animations for all entities
+ * that have the Animator component attached. It updates the animations by controlling their
+ * frame changes, looping behavior, and overall animation state.
+ */
+class AnimatorSystem : public System {
+
+public:
+ using System::System;
+ /**
+ * \brief Updates the Animator components.
+ *
+ * This method is called to update the state of all
+ * Animator components, moving the animations forward and managing their behavior (e.g.,
+ * looping).
+ */
+ void frame_update() override;
+};
+
+} // namespace crepe