Exploring raycasters and possibly make a little "doom like" game based on it.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
raycaster/animator.hpp

27 lines
548 B

#pragma once
#include <SFML/Graphics/Sprite.hpp>
#include <SFML/Audio.hpp>
#include <string>
struct Animator {
int width = 0;
int height = 0;
int max_frames = 0;
sf::SoundBuffer buffer;
sf::Sound sound;
size_t count = 0;
int frame = 0;
bool playing = false;
Animator(int w, int h, int max, std::string sound_file) :
width(w), height(h), max_frames(max),
buffer(sound_file),
sound(buffer)
{
}
void step(sf::Sprite& sprite, int rect_x, int rect_y, int rect_w, int rect_h);
void play(bool sound_too=true);
};