From e137c9614df63c4a71445c1638af26fd821b02e0 Mon Sep 17 00:00:00 2001 From: aortigos Date: Fri, 28 Nov 2025 19:59:01 +0100 Subject: [PATCH] Parsing finished --- src/parsing/parsing.c | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/src/parsing/parsing.c b/src/parsing/parsing.c index 5499a43..f0f3e8e 100644 --- a/src/parsing/parsing.c +++ b/src/parsing/parsing.c @@ -6,7 +6,7 @@ /* By: aortigos sq_map[i]) + { + j = 0; + while (data->sq_map[i][j]) + { + if (data->sq_map[i][j] == 'N' || data->sq_map[i][j] == 'S' + || data->sq_map[i][j] == 'W' || data->sq_map[i][j] == 'E') + { + data->p_x = j; + data->p_y = i; + return ; + } + j++; + } + i++; + } } int check_extension_map(char *file) @@ -47,5 +66,20 @@ int check_extension_map(char *file) int parsing(int ac, char **av, t_data *data) { - + int count; + + if (ac != 2 || !check_extension_map(av[1])) + return (ft_putstr_fd(ERR_INV_COP, 2), 0); + count = 0; + if (!read_map(av[1], data, &count)) + return (0); + if (!valid_map(data)) + return (0); + data->t_list = NULL; + if (!lst_ture(data, &data->t_list)) + return (free_map(data), freelist(&data->t_list), 0); + if (!color_ture(data, data->t_list)) + return (free_map(data), freelist(&data->t_list), 0); + get_x_y_player(data); + return (1); } \ No newline at end of file