Thu, 10 Jul 2025 22:19:48 +0200
improve signature of asc_sprite_set_size()
src/ascension/sprite.h | file | annotate | diff | comparison | revisions | |
src/sprite.c | file | annotate | diff | comparison | revisions | |
test/snake/snake.c | file | annotate | diff | comparison | revisions |
--- a/src/ascension/sprite.h Thu Jul 10 22:13:39 2025 +0200 +++ b/src/ascension/sprite.h Thu Jul 10 22:19:48 2025 +0200 @@ -69,8 +69,9 @@ #define asc_sprite(...) \ asc_sprite_create((struct asc_sprite_create_args) { __VA_ARGS__ }) -void asc_sprite_set_size(AscSceneNode *node, unsigned width, unsigned height); +void asc_sprite_set_size(AscSprite *sprite, asc_vec2u size); +// TODO: can be removed once AscText does no longer depend on AscSprite void asc_sprite_draw(const AscCamera *camera, const AscSceneNode *node); #endif //ASCENSION_SPRITE_H
--- a/src/sprite.c Thu Jul 10 22:13:39 2025 +0200 +++ b/src/sprite.c Thu Jul 10 22:19:48 2025 +0200 @@ -141,10 +141,9 @@ return node; } -void asc_sprite_set_size(AscSceneNode *node, unsigned width, unsigned height) { - AscSprite *sprite = (AscSprite*) node; - sprite->width = width; - sprite->height = height; - asc_node_update(node); +void asc_sprite_set_size(AscSprite *sprite, asc_vec2u size) { + sprite->width = size.width; + sprite->height = size.height; + asc_node_update((AscSceneNode *) sprite); }
--- a/test/snake/snake.c Thu Jul 10 22:13:39 2025 +0200 +++ b/test/snake/snake.c Thu Jul 10 22:19:48 2025 +0200 @@ -83,9 +83,9 @@ static void scale_backdrop(AscBehavior *behavior) { // scale the backdrop to the size of the window if (asc_active_window->resized) { - AscSceneNode *node = behavior->node; + asc_ptr_cast(AscSprite, sprite, behavior->node); asc_vec2u window_size = asc_active_window->dimensions; - asc_sprite_set_size(node, window_size.width, window_size.height); + asc_sprite_set_size(sprite, window_size); } }