#pragma once #include #include "Animation.h" class AnimationController { public: AnimationController(Fader *fader); void changeAnimation(std::unique_ptr anim, bool transition = true); void loop(void); void restart(void); bool isIdle(void) { return m_animation->finished() && !m_nextAnimation; } private: Fader *m_fader; std::unique_ptr m_animation; std::unique_ptr m_nextAnimation; uint64_t m_frame; };