summaryrefslogtreecommitdiff
path: root/src/sprite.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sprite.c')
-rw-r--r--src/sprite.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/sprite.c b/src/sprite.c
index c905f7a..c6ee82e 100644
--- a/src/sprite.c
+++ b/src/sprite.c
@@ -10,6 +10,7 @@ sprite create_sprite(image* img, int frame_count, int fwidth, int fheight, float
s.img_height = img->height;
s.sec_per_frame = sec_per_frame;
s.time = 0.0f;
+ s.frame_start = 0;
return s;
}
@@ -30,8 +31,8 @@ sprite_frame sprite_get_frame(sprite* sprite) {
float column_percentage = 1.0f / columns;
float row_percentage = 1.0f / rows;
- int column = sprite->current_frame % columns;
- int row = sprite->current_frame / columns;
+ int column = (sprite->frame_start + sprite->current_frame) % columns;
+ int row = (sprite->frame_start + sprite->current_frame) / columns;
frame.tl = (vec2f){column * column_percentage, row * row_percentage};
frame.tr = (vec2f){column * column_percentage + column_percentage, row * row_percentage};