aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/Animator.h
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2025-01-06 10:26:03 +0100
committerLoek Le Blansch <loek@pipeframe.xyz>2025-01-06 10:26:03 +0100
commitd4f443070017c5c2e6a938bf4d0a86b70ae6beaa (patch)
treef3a6f399981d69e66916544e34066af6bce3fd93 /src/crepe/api/Animator.h
parentec69f40540317215d0f30e1f8e43d0e18450f8cc (diff)
revert Animator
Diffstat (limited to 'src/crepe/api/Animator.h')
-rw-r--r--src/crepe/api/Animator.h21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/crepe/api/Animator.h b/src/crepe/api/Animator.h
index bcf6379..102894d 100644
--- a/src/crepe/api/Animator.h
+++ b/src/crepe/api/Animator.h
@@ -1,6 +1,5 @@
#pragma once
-#include "../manager/LoopTimerManager.h"
#include "../types.h"
#include "Component.h"
@@ -23,15 +22,16 @@ public:
struct Data {
//! frames per second for animation
unsigned int fps = 1;
- //! The current frame being shown
- unsigned int frame = 0;
-
+ //! The current col being animated.
+ unsigned int col = 0;
+ //! The current row being animated.
+ unsigned int row = 0;
//! should the animation loop
bool looping = false;
//! starting frame for cycling
unsigned int cycle_start = 0;
//! end frame for cycling (-1 = use last frame)
- unsigned int cycle_end = -1;
+ int cycle_end = -1;
};
public:
@@ -60,6 +60,14 @@ public:
* \param end of row animation
*/
void set_cycle_range(int start, int end);
+ /**
+ * \brief select which column to animate from
+ *
+ * \param col animation column
+ */
+ void set_anim(int col);
+ //! will go to the next animaiton of current row
+ void next_anim();
public:
/**
@@ -93,9 +101,6 @@ private:
//! Uses the spritesheet
friend AnimatorSystem;
-
- //! Elasped time since last frame change
- duration_t elapsed;
};
} // namespace crepe