diff options
| author | Aldrik Ramaekers <aldrik@amftech.nl> | 2022-12-20 21:12:07 +0100 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrik@amftech.nl> | 2022-12-20 21:12:07 +0100 |
| commit | 38d8d7f442a4b5cb66815ada7bb508c734186c6e (patch) | |
| tree | 17454b271f82719f25d6fdeff7a0be4ad016d573 /src/sprite.c | |
| parent | 1683c214b37c2bb8f3e43fd9054f3a53f7695f4a (diff) | |
assets, sprites
Diffstat (limited to 'src/sprite.c')
| -rw-r--r-- | src/sprite.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/sprite.c b/src/sprite.c new file mode 100644 index 0000000..6b35e62 --- /dev/null +++ b/src/sprite.c @@ -0,0 +1,28 @@ +#include "../include/sprite.h" + +sprite create_sprite(image* img, int frame_count, int fwidth, int fheight, float sec_per_frame) { + sprite s; + s.current_frame = 0; + s.frame_count = frame_count; + s.frame_height = fheight; + s.frame_width = fwidth; + s.image = img; + s.sec_per_frame = sec_per_frame; + s.time = 0.0f; + return s; +} + +void update_sprite(sprite* sprite) { + int frame = sprite->time / sprite->sec_per_frame; + sprite->current_frame = frame; + sprite->time += update_delta; +} + +sprite_frame get_frame(sprite* sprite) { + sprite_frame frame; + frame.tl = (vec2f){0,0}; + frame.tr = (vec2f){1,0}; + frame.bl = (vec2f){0,1}; + frame.br = (vec2f){1,1}; + return frame; +}
\ No newline at end of file |
