forked from rangers321/ttt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtic_tac_toe_2077_deluxe_edition_bot.c
111 lines (95 loc) · 2.36 KB
/
tic_tac_toe_2077_deluxe_edition_bot.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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#include <stdio.h>
#include <string.h>
#include "tic_tac_toe_2077_deluxe_edition_wykonawcze.h"
#include "tic_tac_toe_2077_deluxe_edition_funkcjonalne.h"
int main(int argc, char **argv)
{
int q;
system("clear");
printf("INSTRUKCJA:\n\nSkładnia współrzędnych - K W\ncommands - wypisuje dostępne komendy\nmoves - wypisuje dostępne ruchy\nexit - kończy grę\n\n");
printf("\nWygrywa %d pod rząd\n", wygrywa);
printf("\nWybierz 1 żeby grać z botem\nWybierz 2 żeby grać gracz vs gracz\n");
scanf("%d", &q);
start: system("clear");
struct pole p = zeruj();
p.wygrana = 0;
p.czymgrasz = 'X';
int v = -10000;
p.pozostale_ruchy = wys*szer;
struct listaruchow lr;
lr.koniec = 0;
for(int i=1; i<(wys*szer)*2; i++)
{
system("clear");
wypisz(p);
printf("Ruch X\n\n");
lr = interfejs(p);
if(lr.koniec == 1)
{
return 0;
}
p = graj(p, lr);
if(p.wygrana == 1000)
{
goto koniecX;
}
else if(p.pozostale_ruchy == 0)
{
goto remis;
}
else;
system("clear");
wypisz(p);
if(q == 1)
{
struct listaruchow *najlepszy = najlepszy_ruch(&p, 4, -10000, 10000);
p = graj(p, *najlepszy);
}
else
{
printf("Ruch O\n");
lr = interfejs(p);
if(lr.koniec == 1)
{
return 0;
}
p = graj(p, lr);
}
if(p.wygrana == 1000)
{
goto koniecO;
}
if(p.pozostale_ruchy == 0)
{
goto remis;
}
else;
}
koniecX: system("clear");
wypisz(p);
printf("Gratulacje! Wygrywasz X!\n\n");
if(ponow() == 1)
{
goto start;
}
else
return 0;
koniecO: system("clear");
wypisz(p);
printf("Gratulacje! Wygrywasz O!\n\n");
if(ponow() == 1)
{
goto start;
}
else
return 0;
remis: system("clear");
wypisz(p);
printf("No niestety mamy remis :(\n\n");
if(ponow() == 1)
{
goto start;
}
else
return 0;
}