#ifndef HOLESOME_ANIMATED_SPRITE_HPP #define HOLESOME_ANIMATED_SPRITE_HPP #include #include "../game/game_object.h" #include "sprite.hpp" class AnimatedSprite : public GameObject, public Sprite { public: explicit AnimatedSprite(const std::vector& sprites, const sf::Vector2f& size = sf::Vector2f(0, 0)); void update() override; void draw(sf::RenderWindow *window) override; sf::Time frameDuration = sf::seconds(0.1f); void setSize(const sf::Vector2f &size) override; [[nodiscard]] sf::Vector2f getSize() const override; sf::Sprite getSprite() const override; private: int currentFrame = 0; sf::Time timeSinceLastFrame = sf::Time::Zero; std::vector sprites; }; #endif //HOLESOME_ANIMATED_SPRITE_HPP