diff options
author | JozanLeClerc <bousset.rudy@gmail.com> | 2020-01-28 16:22:51 +0100 |
---|---|---|
committer | JozanLeClerc <bousset.rudy@gmail.com> | 2020-01-28 16:22:51 +0100 |
commit | 6ee3017b31456ae8bcf4f21389e514b67d885098 (patch) | |
tree | 39a8354d65268b607d110c67deee9faac081cb5d /src/ft_get_tex.c | |
parent | Bug fix (diff) | |
download | 42-cub3d-6ee3017b31456ae8bcf4f21389e514b67d885098.tar.gz 42-cub3d-6ee3017b31456ae8bcf4f21389e514b67d885098.tar.bz2 42-cub3d-6ee3017b31456ae8bcf4f21389e514b67d885098.tar.xz 42-cub3d-6ee3017b31456ae8bcf4f21389e514b67d885098.tar.zst 42-cub3d-6ee3017b31456ae8bcf4f21389e514b67d885098.zip |
Got tex
Diffstat (limited to 'src/ft_get_tex.c')
-rw-r--r-- | src/ft_get_tex.c | 111 |
1 files changed, 20 insertions, 91 deletions
diff --git a/src/ft_get_tex.c b/src/ft_get_tex.c index 1a936bd..a409a3c 100644 --- a/src/ft_get_tex.c +++ b/src/ft_get_tex.c @@ -2,121 +2,50 @@ #include <cub3d.h> #include <stdlib.h> -static int -ft_get_tex_no(int fd, t_cub *clist) +int +ft_get_tex_no(char **words, t_cub *clist) { - char *line; - char **words; - - if (get_next_line(fd, &line) <= 0 || !(words = ft_split(line, ' '))) - { - ft_memdel(line); - return (ft_map_error(2, clist)); - } - if (!(*words) || ft_strcmp(*words, "NO") - || !(*(words + 1)) || (*(words + 2))) - { - ft_free_words(words, line); - return (ft_map_error(2, clist)); - } + if (!(*words) || !(*(words + 1)) || (*(words + 2))) + return (-1); ft_memdel(clist->no_tex_path); if (!(clist->no_tex_path = ft_strdup(*(words + 1)))) - { - ft_free_words(words, line); return (-1); - } - ft_free_words(words, line); + ft_free_words(words); return (0); } -static int -ft_get_tex_so(int fd, t_cub *clist) +int +ft_get_tex_so(char **words, t_cub *clist) { - char *line; - char **words; - - if (get_next_line(fd, &line) <= 0 || !(words = ft_split(line, ' '))) - { - ft_memdel(line); - return (ft_map_error(3, clist)); - } - if (!(*words) || ft_strcmp(*words, "SO") - || !(*(words + 1)) || (*(words + 2))) - { - ft_free_words(words, line); - return (ft_map_error(3, clist)); - } + if (!(*words) || !(*(words + 1)) || (*(words + 2))) + return (-1); ft_memdel(clist->so_tex_path); if (!(clist->so_tex_path = ft_strdup(*(words + 1)))) - { - ft_free_words(words, line); return (-1); - } - ft_free_words(words, line); + ft_free_words(words); return (0); } -static int -ft_get_tex_we(int fd, t_cub *clist) +int +ft_get_tex_ea(char **words, t_cub *clist) { - char *line; - char **words; - - if (get_next_line(fd, &line) <= 0 || !(words = ft_split(line, ' '))) - { - ft_memdel(line); - return (ft_map_error(4, clist)); - } - if (!(*words) || ft_strcmp(*words, "WE") - || !(*(words + 1)) || (*(words + 2))) - { - ft_free_words(words, line); - return (ft_map_error(4, clist)); - } - ft_memdel(clist->we_tex_path); - if (!(clist->we_tex_path = ft_strdup(*(words + 1)))) - { - ft_free_words(words, line); + if (!(*words) || !(*(words + 1)) || (*(words + 2))) return (-1); - } - ft_free_words(words, line); - return (0); -} - -static int -ft_get_tex_ea(int fd, t_cub *clist) -{ - char *line; - char **words; - - if (get_next_line(fd, &line) <= 0 || !(words = ft_split(line, ' '))) - { - ft_memdel(line); - return (ft_map_error(5, clist)); - } - if (!(*words) || ft_strcmp(*words, "EA") - || !(*(words + 1)) || (*(words + 2))) - { - ft_free_words(words, line); - return (ft_map_error(5, clist)); - } ft_memdel(clist->ea_tex_path); if (!(clist->ea_tex_path = ft_strdup(*(words + 1)))) - { - ft_free_words(words, line); return (-1); - } - ft_free_words(words, line); + ft_free_words(words); return (0); } int -ft_get_tex(int fd, t_cub *clist) +ft_get_tex_we(char **words, t_cub *clist) { - if (ft_get_tex_no(fd, clist) < 0 || - ft_get_tex_so(fd, clist) < 0 || - ft_get_tex_we(fd, clist) < 0 || - ft_get_tex_ea(fd, clist) < 0) + if (!(*words) || !(*(words + 1)) || (*(words + 2))) + return (-1); + ft_memdel(clist->we_tex_path); + if (!(clist->we_tex_path = ft_strdup(*(words + 1)))) return (-1); + ft_free_words(words); return (0); } |