From b71e91e052a2884626c297cb014cbe2b63131c80 Mon Sep 17 00:00:00 2001 From: Charles Date: Wed, 13 Nov 2019 17:29:19 +0100 Subject: Basic parsing structure, Added subject --- cub3d.h | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 cub3d.h (limited to 'cub3d.h') diff --git a/cub3d.h b/cub3d.h new file mode 100644 index 0000000..78e5b84 --- /dev/null +++ b/cub3d.h @@ -0,0 +1,67 @@ +#ifndef CUB3D_H +# define CUB3D_H + +# include +# include "libft.h" + +# define TRUE 1 +# define FALSE 0 + +typedef int t_bool; + +typedef struct +{ + int x; + int y; +} t_point; + +typedef struct +{ + int r; + int g; + int b; +} t_color; + +typedef enum +{ + CELL_EMPTY, + CELL_WALL, + CELL_ITEM, + CELL_LOOK_NORTH, + CELL_LOOK_SOUTH, + CELL_LOOK_WEST, + CELL_LOOK_EAST +} t_cell; + +typedef t_cell** t_map; + +typedef struct +{ + int resolution_height; + int resolution_width; + char *north_texture_path; + char *south_texture_path; + char *west_texture_path; + char *east_texture_path; + char *sprite_texture_path; + t_color floor_color; + t_color ceilling_color; + t_map map; +} t_parsing; + +typedef t_bool (*func)(t_parsing *parsing, char *line) t_line_parser_func; + +typedef struct +{ + char *id; + t_line_parser_func func; +} t_line_parser; + +/* +** parse.c +*/ + +t_parsing *parse(char *filename); +t_bool parse_line(t_parsing *parsing, char *line); + +#endif -- cgit