* 3|4|5
* 6|7|8
*
- * Returns: TTT_ERROR_NONE if a move is made succesfully. TTT_ERROR_NOT_VALID_MOVE
- * if a move is invalid (the given cell is not empty).
+ * Returns: TTT_ERROR_NONE if a move is made
+ * succesfully. TTT_ERROR_NOT_VALID_MOVE if a move is invalid (the
+ * given cell is not empty). TTT_ERROR_NOT_GRID if the move is
+ * impossible (user input 'a' or '9' etc.)
*/
ttt_error_t ttt_board_make_move (ttt_board_t *board, int move)
{
+ if (move < 0 || move > 8)
+ return TTT_ERROR_NOT_GRID;
+
if (board->cells[move] != TTT_CELL_EMPTY)
return TTT_ERROR_NOT_VALID_MOVE;
-
+
board->cells[move] = board->current_player;
if (board->current_player == TTT_CELL_X)