+ int y;
+ char x;
+ bool input_ok = false;
+ do {
+ y = 0;
+ x = "";
+ char* prompt_msg = "Prochain pion ? - ligne colonne (chiffre lettre):";
+ prompt_values(stdscr, center_y + 26/2 + 1, center_x - strlen(prompt_msg)/2, prompt_msg, &y, &x);
+ /* FIXME: separate the tests to permit to print explicit error messages */
+ if (((y > 0 && y < board_size + 1) || \
+ (map_col_letter_to_int(x) > 0 && map_col_letter_to_int(x) < board_size + 1)) \
+ && is_box_type(y, x, pawns, empty)) {
+ input_ok = true;
+ }
+ } while (!input_ok);
+ pawns[board_size][board_size] = set_pawn(y, map_col_letter_to_int(x), player, pawns);
+
+ round++; /* increment the round count */
+
+ refresh();
+
+ } while (!exit_condition);
+