package TicTac; import java.util.*; public final class TTEngine{ private char board_status[][]; TTEngine () { int i, j; board_status = new char[TTBoard.SIZE][TTBoard.SIZE]; for (i=0; i0); } public boolean IsMoveLegal(TTMove move) { return (move.isInbound () && board_status[move.x][move.y] == TTPlayer.B); } public void MakeMove (char playerMark, TTMove move) { if (!IsMoveLegal(move)) { throw new RuntimeException("Illegal move!"); } UpdateBoard(playerMark, move); } private void UpdateBoard(char playerMark, TTMove move) { board_status[move.x][move.y] = playerMark; } public Vector GetLegalMoves(char player_color) { int i, j; Vector move_vector = new Vector(); for (i=0; i