|
1234567891011121314151617181920212223242526272829 |
- #include "Animation.h"
-
- #include "Win.h"
- #include "gfxutil.h"
-
- namespace Swan {
-
- void Animation::tick(float dt) {
- timer_ -= dt;
- if (timer_ <= 0) {
- timer_ += interval_;
-
- frame_ += 1;
- if (frame_ >= resource_.num_frames_)
- frame_ = 0;
- }
- }
-
- void Animation::draw(const Vec2 &pos, Win &win) {
- SDL_Rect rect = resource_.frameRect(frame_);
- win.showTexture(pos, resource_.texture_.get(), &rect, { .flip = flip_ });
- }
-
- void Animation::reset() {
- timer_ = interval_;
- frame_ = 0;
- }
-
- }
|