1
0

🚧」 test: testing things, might broke.

This commit is contained in:
Maelys
2024-09-11 16:00:35 +02:00
parent f62ec3fc0b
commit e7b1209541
10 changed files with 163 additions and 28 deletions

35
empty.cub Normal file

@ -0,0 +1,35 @@

0
empty_2.cub Normal file

@ -6,7 +6,7 @@
/* By: madumerg <madumerg@42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/09/04 17:01:05 by madumerg #+# #+# */
/* Updated: 2024/09/07 17:48:56 by madumerg ### ########.fr */
/* Updated: 2024/09/11 14:54:17 by madumerg ### ########.fr */
/* */
/* ************************************************************************** */
@ -19,10 +19,16 @@
# include <math.h>
# include <unistd.h>
# include <fcntl.h>
# include <stdio.h>
int check_format_file(char *file);
int check_err_arg(int argc, char **argv);
char **parse_map(char *map);
int err_mess(char *str);
int verif_all_map(char **map);
int verif_char(char c);
int check_char_map(char **map);
void convert_white_s(char *str);
#endif

@ -6,7 +6,7 @@
/* By: madumerg <madumerg@42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/09/04 21:59:56 by madumerg #+# #+# */
/* Updated: 2024/09/07 19:13:20 by madumerg ### ########.fr */
/* Updated: 2024/09/11 14:18:39 by madumerg ### ########.fr */
/* */
/* ************************************************************************** */
@ -20,5 +20,6 @@
#define NOT_CLOSE "The map isn't closed"
#define ERR_PLAYER "Incorrect number of players"
#define WRONG_CHAR "Invalid character in the map"
//for permission

9
map.cub Normal file

@ -0,0 +1,9 @@
111111111111111111111111
1 000000000000111111111111
11111111 1111110111111111000000000001
1000000000000000 00000000000000000001
100000000000000000000000 000001111111
1111111111111111111111111111111
11111
10001
11111

@ -6,39 +6,18 @@
/* By: madumerg <madumerg@42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/09/04 16:58:27 by madumerg #+# #+# */
/* Updated: 2024/09/11 11:10:39 by adjoly ### ########.fr */
/* Updated: 2024/09/11 14:53:49 by madumerg ### ########.fr */
/* */
/* ************************************************************************** */
#include "cub3d.h"
char **ft_parse_map(char *map)
{
int fd;
char **parse_map;
char *save;
char *join;
fd = open(map, O_RDONLY);
save = get_next_line(fd);
join = ft_calloc(1, 1);
if (!join)
return (NULL);
while (save != NULL)
{
join = ft_strjoin(join, save);
free(save);
save = get_next_line(fd);
}
parse_map = ft_split(join, '\n');
free(join);
close(fd);
return (parse_map);
}
int main(int ac, char **av)
{
if (check_err_arg(ac, av) == 1)
return (1);
char **map = parse_map(av[1]);
if (verif_all_map(map) == 1)
return (1);
return (0);
}

@ -6,7 +6,7 @@
/* By: madumerg <madumerg@42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/09/04 21:33:35 by madumerg #+# #+# */
/* Updated: 2024/09/11 11:11:05 by adjoly ### ########.fr */
/* Updated: 2024/09/11 11:19:25 by madumerg ### ########.fr */
/* */
/* ************************************************************************** */

@ -0,0 +1,74 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* check_map.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: madumerg <madumerg@42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/09/11 11:24:13 by madumerg #+# #+# */
/* Updated: 2024/09/11 15:24:53 by madumerg ### ########.fr */
/* */
/* ************************************************************************** */
#include "cub3d.h"
int verif_all_map(char **map)
{
if (check_char_map(map) == 1)
return (err_mess(WRONG_CHAR));
return (0);
}
int verif_char(char c)
{
if (c != '1' && c != '0' && c != 'N' && c != 'S' && c != 'W' && c != 'E' && c != ' ')
return (1);
return (0);
}
int check_char_map(char **map)
{
int y;
int x;
y = 0;
while (map[y])
{
x = 0;
convert_white_s(map[y]);
while (map[y][x])
{
if (verif_char(map[y][x]) == 1)
return (1);
x++;
}
y++;
}
return (0);
}
char **parse_map(char *map)
{
int fd;
char **parse_map;
char *save;
char *join;
fd = open(map, O_RDONLY);
save = get_next_line(fd);
join = ft_calloc(1, 1);
if (!join)
return (NULL);
while (save != NULL)
{
join = ft_strjoin(join, save);
free(save);
save = get_next_line(fd);
}
parse_map = ft_split(join, '\n');
free(join);
close(fd);
return (parse_map);
}

@ -12,7 +12,12 @@
//envoyer de 4 a 5 inclus dans check rgb format
//envoyer de 6 a jusqu a la fin dans check map
// convertir tt les whites spaces en simple espace
struct typedef s_pars
{
} t_pars;
//faire struct de coor
utiliser la ft pour couleur

26
src/utils/parse_utils.c Normal file

@ -0,0 +1,26 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* parse_utils.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: madumerg <madumerg@42angouleme.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/09/11 14:20:54 by madumerg #+# #+# */
/* Updated: 2024/09/11 14:31:27 by madumerg ### ########.fr */
/* */
/* ************************************************************************** */
#include "cub3d.h"
void convert_white_s(char *str)
{
int i;
i = 0;
while (str[i])
{
if (str[i] >= 9 && str[i] <= 13)
str[i] = 32;
i++;
}
}