7 #include "coordinates.h"
10 int row
, col
, errno
= 0, round
= 0, player
= 0, key_pressed
;
15 getmaxyx(stdscr
, row
, col
);
19 /* array of the active coordinates in the entered order */
20 coordinates_t coordinates_array
[MAX_COORDINATES
];
21 init_coordinates(coordinates_array
);
22 coordinates_t new_coordinates
= {0, 0, 0};
24 /* center base coordinates for the board */
25 int base_y
= row
/2 - 4;
26 int base_x
= col
/2 - 7;
28 print_board(base_y
, base_x
);
31 if (round
% 2 == 0 || round
== 0) {
33 top_msg
= "Joueur 1 joue";
36 top_msg
= "Joueur 2 joue";
39 mvprintw(base_y
- 2, (base_x
+ 7 - strlen(top_msg
)/2), top_msg
);
40 mvprintw(base_y
+ 10, (base_x
+ 7 - strlen(back_msg
)/2), back_msg
);
42 print_coordinates(coordinates_array
, base_y
, base_x
);
44 key_pressed
= getch();
45 switch (key_pressed
) {
47 new_coordinates
= set_coordinates(1, 1, player
);
50 new_coordinates
= set_coordinates(1, 2, player
);
53 new_coordinates
= set_coordinates(1, 3, player
);
56 new_coordinates
= set_coordinates(2, 1, player
);
59 new_coordinates
= set_coordinates(2, 2, player
);
62 new_coordinates
= set_coordinates(2, 3, player
);
65 new_coordinates
= set_coordinates(3, 1, player
);
68 new_coordinates
= set_coordinates(3, 2, player
);
71 new_coordinates
= set_coordinates(3, 3, player
);
78 errno
= add_coordinates(new_coordinates
, coordinates_array
);
81 back_msg
= "Choisir une case vide";
83 } else if (errno
== 3) {
84 back_msg
= "Coordonnees invalides";
86 } else if (errno
== 0) {
92 } while (errno
== 0 || errno
== 2);