-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.c
82 lines (75 loc) · 2.08 KB
/
main.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* main.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: ablizniu <[email protected]> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2018/06/12 21:23:38 by ablizniu #+# #+# */
/* Updated: 2018/08/07 23:00:48 by ablizniu ### ########.fr */
/* */
/* ************************************************************************** */
#include "filler.h"
int main(void)
{
char *line;
t_token token;
t_filler *filler;
filler = (t_filler *)ft_memalloc(sizeof(t_filler));
filler->number = 1;
filler->me = 0;
filler->map = NULL;
token.token = NULL;
filler->fd = 0;
if (get_next_line(filler->fd, &line) > 0 && filler->me == 0)
{
(filler->me == 0) ? (choose_player(&filler, line)) : (0);
ft_strdel(&line);
}
while (get_next_line(filler->fd, &line) > 0)
{
if (ft_strstr(line, "==") || ft_strstr(line, "<got "))
break ;
map_creator(&filler, &token, line);
free(line);
}
free_map(&filler);
free(filler);
return (0);
}
void free_map(t_filler **filler)
{
int i;
i = 0;
while (i < (*filler)->len_y)
{
free((*filler)->map[i]);
i++;
}
free((*filler)->map);
}
void choose_player(t_filler **filler, char *line)
{
if (*(ft_strchr(line, 'p') + 1) == '1')
{
(*filler)->me = 'O';
(*filler)->enemy = 'X';
}
else if (*(ft_strchr(line, 'p') + 1) == '2')
{
(*filler)->me = 'X';
(*filler)->enemy = 'O';
}
}
int kostil_for_map_creator(t_filler **filler,
char *buff, t_token *token, int *i)
{
if (*i == (*filler)->len_y)
{
*i = 0;
read_token(buff, filler, token);
ft_strdel(&buff);
return (1);
}
return (0);
}