// Copyright (c) 2022 Dominic Masters
// 
// This software is released under the MIT License.
// https://opensource.org/licenses/MIT

#pragma once
#include "SimpleAnimation.hpp"
#include "scene/components/display/TiledSprite.hpp"

namespace Dawn {
  struct TiledSpriteAnimation : public SimpleAnimation<int32_t> {
    public:
      int32_t frame = 0;
      TiledSprite *sprite = nullptr;

      /**
       * Construct a new Tiled Sprite Animation.
       * 
       * @param sprite Sprite that this animation will control.
       */
      TiledSpriteAnimation(TiledSprite *sprite);

      void tick(const float_t delta) override;
  };
}