#pragma once #include "core/time.h" #include class ClassicNoteGraphics; class ClassicAnimationScenario { public: virtual ~ClassicAnimationScenario() = default; virtual void launch(const std::shared_ptr sprite, const kku::microsec& time_begin, const kku::microsec &time_end) = 0; virtual void update(const kku::microsec& music_offset) = 0; virtual bool isDone() const = 0; protected: std::shared_ptr _sprite; kku::microsec _time_begin; kku::microsec _time_end; };