From ee329812fdccab3f9b9d3f29eb95ea9a3ab57b13 Mon Sep 17 00:00:00 2001 From: Theo Champion Date: Wed, 13 Aug 2025 14:57:06 +0200 Subject: [PATCH] dev: Added sprite types and gave 'base' sprites their types --- src/sprites/create_sprite.c | 5 +++++ src/sprites/sprite.h | 45 ++++++++++++++++++++++--------------- src/utils/inits.c | 2 +- 3 files changed, 33 insertions(+), 19 deletions(-) diff --git a/src/sprites/create_sprite.c b/src/sprites/create_sprite.c index b55299f..a9aabff 100644 --- a/src/sprites/create_sprite.c +++ b/src/sprites/create_sprite.c @@ -6,7 +6,11 @@ /* By: tchampio +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/08/12 15:43:19 by tchampio #+# #+# */ +<<<<<<< HEAD /* Updated: 2025/08/14 21:24:03 by tchampio ### ########.fr */ +======= +/* Updated: 2025/08/13 14:53:38 by tchampio ### ########.fr */ +>>>>>>> f9c846b (dev: Added sprite types and gave 'base' sprites their types) /* */ /* ************************************************************************** */ @@ -25,6 +29,7 @@ t_sprite *create_sprite(t_cub3d_data *data, char *texture, return (NULL); sprite->x = x; sprite->y = y; + sprite->sprite_type = OTHER; sprite->image = load_single_texture(data, texture); return (sprite); } diff --git a/src/sprites/sprite.h b/src/sprites/sprite.h index f58e116..d581980 100644 --- a/src/sprites/sprite.h +++ b/src/sprites/sprite.h @@ -6,7 +6,7 @@ /* By: tchampio +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/08/05 12:59:44 by tchampio #+# #+# */ -/* Updated: 2025/08/12 16:12:37 by tchampio ### ########.fr */ +/* Updated: 2025/08/13 14:44:02 by tchampio ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,6 +15,14 @@ # include "../draw/img_data.h" +typedef enum e_sprite_type +{ + ZOMBIE, + PERK, + BOX, + OTHER +} t_sprite_type; + /* * x - real position for the sprite * y - real position for the sprite @@ -36,23 +44,24 @@ */ typedef struct s_sprite { - double x; - double y; - t_img_data *image; - int img_width; - int img_height; - double sprite_pos_x; - double sprite_pos_y; - double inv_det; - double transform_x; - double transform_y; - int sprite_screen_x; - int sprite_height; - int sprite_draw_start_y; - int sprite_draw_end_y; - int sprite_width; - int sprite_draw_start_x; - int sprite_draw_end_x; + double x; + double y; + t_img_data *image; + int img_width; + int img_height; + double sprite_pos_x; + double sprite_pos_y; + double inv_det; + double transform_x; + double transform_y; + int sprite_screen_x; + int sprite_height; + int sprite_draw_start_y; + int sprite_draw_end_y; + int sprite_width; + int sprite_draw_start_x; + int sprite_draw_end_x; + t_sprite_type sprite_type; } t_sprite; #endif // SPRITE_H diff --git a/src/utils/inits.c b/src/utils/inits.c index d533f07..916f2d9 100644 --- a/src/utils/inits.c +++ b/src/utils/inits.c @@ -6,7 +6,7 @@ /* By: kcolin +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/07/31 13:43:05 by kcolin #+# #+# */ -/* Updated: 2025/08/14 21:37:58 by tchampio ### ########.fr */ +/* Updated: 2025/08/14 21:41:23 by tchampio ### ########.fr */ /* */ /* ************************************************************************** */