Class TresEnRaya
java.lang.Object
Modelo.Juego
Modelo.TresEnRaya
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate StringUsername del ganador.private char[][]Tablero 3x3.Fields inherited from class Juego
descripcion, juegoFinalizado, listaPuntuacionPorJugador, nombreJuego -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate booleancasillaOcupada(int fila, int columna) voidRestaura el estado desde un String serializado.Devuelve el estado actual del tablero en formato texto.Devuelve el username del ganador de la partida.char[][]Devuelve una copia del tablero para evitar modificaciones externas.private booleanhayVictoria(char ficha) voidInicializa o reinicia la partida.booleanjugarTurno(String username, char ficha, int fila, int columna) Realiza una jugada en la posición indicada.Serializa el estado completo a un String.private booleanvoidterminar()Marca la partida como finalizada.Methods inherited from class Juego
getDescripcion, getNombre, getPuntuacion, getPuntuaciones, isTerminado, sumarPuntos
-
Field Details
-
tablero
private char[][] tableroTablero 3x3. Cada celda contiene 'X', 'O' o ' ' si está vacía. -
ganador
Username del ganador. null si la partida no ha terminado o acabó en empate.
-
-
Constructor Details
-
TresEnRaya
public TresEnRaya()Crea una nueva instancia de Tres en Raya. Llamar ainicializar()antes de empezar a jugar.
-
-
Method Details
-
inicializar
public void inicializar()Inicializa o reinicia la partida. Limpia el tablero, resetea el ganador y marca el juego como no finalizado.- Specified by:
inicializarin classJuego
-
getEstadoTexto
Devuelve el estado actual del tablero en formato texto.- Specified by:
getEstadoTextoin classJuego- Returns:
- String con el estado actual del juego.
-
serializarEstado
Serializa el estado completo a un String. Formato:casilla00,casilla01,...,casilla22;ganador- Specified by:
serializarEstadoin classJuego- Returns:
- String con el estado serializado.
-
deserializarEstado
Restaura el estado desde un String serializado.- Specified by:
deserializarEstadoin classJuego- Parameters:
s- String con el estado serializado previamente.
-
terminar
-
jugarTurno
Realiza una jugada en la posición indicada.- Parameters:
username- username del jugadorficha- 'X' o 'O'fila- 0-2columna- 0-2- Returns:
truesi la jugada fue válida
-
casillaOcupada
private boolean casillaOcupada(int fila, int columna) -
hayVictoria
private boolean hayVictoria(char ficha) -
tableroLleno
private boolean tableroLleno() -
getGanador
Devuelve el username del ganador de la partida.- Returns:
- username del ganador, o
nullsi no hay ganador todavía (empate o en curso)
-
getTablero
public char[][] getTablero()Devuelve una copia del tablero para evitar modificaciones externas.- Returns:
- matriz 3x3 con el estado actual; celdas vacías contienen
' '
-