41 lines
791 B
C++
41 lines
791 B
C++
#ifndef CLASSICARROW_H
|
|
#define CLASSICARROW_H
|
|
|
|
#include "notegraphicsentity.h"
|
|
|
|
#include <SFML/Graphics/RectangleShape.hpp>
|
|
|
|
class ClassicArrow : public NoteGraphicsEntity
|
|
{
|
|
public:
|
|
|
|
enum class Type
|
|
{
|
|
ARROW_UP,
|
|
ARROW_RIGHT,
|
|
ARROW_DOWN,
|
|
ARROW_LEFT
|
|
};
|
|
|
|
explicit ClassicArrow();
|
|
virtual ~ClassicArrow() override;
|
|
|
|
virtual void update() override;
|
|
|
|
virtual void onKeyPressed() override;
|
|
virtual void onKeyReleased() override;
|
|
|
|
virtual void show() override;
|
|
virtual void killAsExpired() override;
|
|
virtual void reset() override;
|
|
|
|
virtual bool isActive() const override;
|
|
|
|
private:
|
|
sf::RectangleShape static_sprite;
|
|
sf::RectangleShape trail_sprite;
|
|
sf::VertexArray trail_vertex;
|
|
};
|
|
|
|
#endif // CLASSICARROW_H
|