You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
505 B
C++
31 lines
505 B
C++
#ifndef CLASSICNOTESTATE_H
|
|
#define CLASSICNOTESTATE_H
|
|
|
|
#include <SFML/System/Clock.hpp>
|
|
#include <memory>
|
|
|
|
using microsec = sf::Int64;
|
|
|
|
class ClassicNote;
|
|
|
|
class ClassicNoteState
|
|
{
|
|
public:
|
|
|
|
enum Value
|
|
{
|
|
NONE,
|
|
DYING,
|
|
FLYING,
|
|
ACTIVE,
|
|
|
|
COUNT
|
|
};
|
|
|
|
virtual Value value() const = 0;
|
|
virtual Value update(const ClassicNote* note, const microsec& offset) = 0;
|
|
virtual void onEntering(const ClassicNote* note) = 0;
|
|
};
|
|
|
|
#endif // CLASSICNOTESTATE_H
|