#include "./parsing_private.h" static int set_texture(t_map *map, int token, const char *key, char *value) { if (map->img[token - 1] != NULL) { ft_eprintf("redefinition of %s", key); return (1); } map->img[token - 1] = value; return (0); } static int set_color(long long *color, const char *key, char *value) { if (*color != -1) { ft_eprintf("redefinition of %s", key); return (1); } if (ft_atoul_check(value)) { ft_eprintf("%s is to high", value); return (1); } *color = ft_atoul(value); return (0); } int header_is_valid(char ***header, t_map *map) { size_t i; int token; if (header == NULL) return (1); map->color_bot = -1; map->color_top = -1; i = 0; while (i < ft_tablen((const void **) header)) { token = get_token(header[i][0]); if (token > 0 && token < 5 && set_texture(map, token, header[i][0], header[i][1])) return (0); else if ((token == 5 && set_color(&map->color_bot, header[i][0], header[i][1])) || (token == 6 && set_color(&map->color_top, header[i][0], header[i][1]))) return (0); i++; } return (1); }