Have a barely working animation thing that animates the evil eye when you click a button.

This commit is contained in:
Zed A. Shaw 2025-01-27 05:40:04 -05:00
parent 51c1e04f61
commit b87217ff90
7 changed files with 35 additions and 2 deletions

27
animator.hpp Normal file
View file

@ -0,0 +1,27 @@
#pragma once
#include <fmt/core.h>
struct Animator {
int width = 0;
int height = 0;
int max_frames = 0;
size_t count = 0;
int frame = 0;
bool playing = false;
inline void step(sf::Sprite& sprite, int rect_x, int rect_y, int rect_w, int rect_h) {
if(playing) {
count++;
frame = ((count / 4) % max_frames);
playing = frame != 0;
}
sprite.setTextureRect(sf::IntRect({
{rect_x + frame * width, rect_y},
{rect_w, rect_h}}));
}
inline void play() {
playing = true;
}
};