#pragma once #include "tools/mathutils.h" #include "sprite.h" #include class ClassicSprite : public Sprite, public sf::Drawable { public: explicit ClassicSprite(const sf::RectangleShape& shape); virtual void draw(sf::RenderTarget& target, sf::RenderStates states) const override; virtual void reset() override; void setCoordinates(const Coordinates &coordinates); void setTrailCoordinates(const Coordinates &coordinates); Coordinates coordinates() const; Coordinates trailCoordinates() const; void setColor(const sf::Color& color); void setTrailColor(const sf::Color& color); sf::Color color() const; sf::Color trailColor() const; private: sf::RectangleShape _prototype; sf::RectangleShape _shape; sf::RectangleShape _trail; };