/* in all print routine, y and x are the coordinates of the first character of the shape
* which can be a space ' ' */
+/* FIXME: one can split this shape in building blocks and build it using them */
void print_board(int y, int x) {
mvprintw(y, x, " | |");
if (y == 1) {
return 0;
- } else if (y == 2) {
- return 3;
- } else {
- return 6;
+ } else if (y > 1 && y <= 3) {
+ return (remap_y(y - 1) + 3);
+ } else {
+ return -1;
}
}
if (x == 1) {
return 1;
- } else if (x == 2) {
- return 6;
+ } else if (x > 1 && x <= 3) {
+ return (remap_x(x - 1) + 5);
} else {
- return 11;
+ return -1;
}
}
void print_coordinates(coordinates_t coordinates_array[], int base_y, int base_x) {
unsigned i = 0;
- while ((coordinates_array + i)->y != 0 && (coordinates_array + i)->x != 0) {
+ while ((coordinates_array + i)->y != 0 && (coordinates_array + i)->x != 0 && \
+ i < MAX_COORDINATES) {
if ((coordinates_array + i)->type == 0) {
print_o(base_y + remap_y((coordinates_array + i)->y), base_x + remap_x((coordinates_array + i)->x));
} else {
i++;
}
}
-
-/* void printf_result(unsigned player, unsigned round) {
- char* result_msg = "";
-
- if (round < MAX_COORDINATES + 1) {
- if (player == 0) {
- result_msg = "Joueur 1";
- } else {
- result_msg = "Joueur 2";
- }
- printf("%s gagne !\n", result_msg);
- } else {
- printf("Egalite !\n");
- }
-} */
-