/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* draw.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: cchauvet mlx, img_path, &bozo, &bozo); if (img == NULL) return ; mlx_put_image_to_window(data->mlx, data->window, img, x, y); mlx_destroy_image(data->mlx, img); } static char *ft_char2xpm(t_data data, char c) { if (c == 'C') return (data.ccolor); if (c == '1') return (data.wcolor); if (c == 'E') return (data.ecolor); if (c == 'P') return (data.pcolor); return (NULL); } int ft_draw_map(t_data *data) { ssize_t tab[2]; char **patern; char *path; ft_fill_pos(data); ft_color_changer(data); patern = ft_get_player_map(*data->map); if (patern == NULL) return (1); ft_draw_xpm(data, data->bcolor, 0, 0); tab[1] = -1; while (patern[++tab[1]] != NULL) { tab[0] = -1; while (patern[tab[1]][++tab[0]] != '\0') { path = ft_char2xpm(*data, patern[tab[1]][tab[0]]); if (path != NULL) ft_draw_xpm(data, path, tab[0] * CASE_SIZE, tab[1] * CASE_SIZE); } } ft_freer_ultimate(3, data->bcolor, data->pcolor, data->ccolor); ft_freer_ultimate(2, data->wcolor, data->ecolor); ft_freer_tab_ultimate(1, patern); return (0); }