diff --git a/src/hooks.c b/src/hooks.c index f9a6302..3b65c15 100644 --- a/src/hooks.c +++ b/src/hooks.c @@ -2,6 +2,7 @@ int key_hook(int keycode, void *FDF) { + printf("%d\n", keycode); if (keycode == 65307) quit(FDF); if (keycode == 113) @@ -24,5 +25,7 @@ int key_hook(int keycode, void *FDF) zoom_in(FDF); if (keycode == 65453) zoom_out(FDF); + if (keycode == 114) + reset(FDF); return (0); } \ No newline at end of file diff --git a/src/map_init.c b/src/map_init.c index 2b32c72..99113e9 100644 --- a/src/map_init.c +++ b/src/map_init.c @@ -5,13 +5,18 @@ int wrong_symbols(char **line) char *tmp; tmp = *line; - while (*tmp) + while ((*tmp == '-' || ft_isdigit(*tmp)) && *tmp) + tmp++; + if ((ft_strstr(tmp, ",0x") == tmp) && (tmp += 3)) { - while ((*tmp == '-' || (*tmp >= '0' && *tmp <= '9') || *tmp == ',' || *tmp == 'x') && *tmp) - tmp++; - if (!tmp) + if (!*tmp) return (1); + else + while (ft_isdigit(*tmp) || (*tmp >= 'A' && *tmp <= 'F')) + tmp++; } + if (*tmp) + return (1); return (0); } @@ -40,7 +45,6 @@ int map_width(char **tab) line_tab = ft_strsplit(*tab, ' '); width = tab_length(line_tab); width_tmp = width; - tab++; while (*tab) { if ((line_tab = ft_strsplit(*tab, ' '))) @@ -120,4 +124,4 @@ t_map *map_init(char *path) free(str_map); free_tab(tab_map); return (map); -} +} \ No newline at end of file diff --git a/tests/simple.fdf b/tests/simple.fdf index 5a00d4f..b135531 100644 --- a/tests/simple.fdf +++ b/tests/simple.fdf @@ -1,3 +1,3 @@ -0 0 +1a 0 1 1 -0 0 +0 1