Esempio n. 1
0
void		w_set_map_or_directive(t_app *app, t_list **lst,
	char *line, int token)
{
	int		size;

	size = 0;
	if ((line[0] >= '0' && line[0] <= '9') || line[0] == '!')
	{
		if (w_check_line(app, line) == 1)
			token = 1;
		if (token == 0)
			line = ft_del_char(line, ' ');
		size = ft_strlen(line) + 2;
		if (line[size - 3] == '0')
			line[size - 3] = '1';
		if (line[0] == '0')
			line[0] = '1';
		ft_lstpush_back(lst, line, size);
		ft_strdel(&line);
		if (token == 0)
			app->map.y++;
		if (size > app->map.x && token == 0)
			app->map.x = size - 2;
	}
}
Esempio n. 2
0
t_list	*ft_lstrotate(t_list *lst)
{
	t_list	*first;

	if (!lst || !lst->next)
		return (lst);
	first = lst->next;
	lst->next = NULL;
	ft_lstpush_back(&first, lst);
	return (first);
}
Esempio n. 3
0
void	ft_lstpush(t_list **lst, t_list *to_add)
{
	if (*lst)
		return (ft_lstpush_back(*lst, to_add));
	*lst = to_add;
}