Untitled
package juego; import java.util.Scanner; public class Ajedrez { private Jugador jugadorBlanco; private Jugador jugadorNegro; private Tablero tablero; public Ajedrez() { this.jugadorBlanco = new Jugador(); this.jugadorNegro = new Jugador(); this.tablero = new Tablero(); } public void Menu() { Scanner scanner = new Scanner(System.in); boolean continuar = true; while (continuar) { System.out.println("**Menú de Ajedrez**"); System.out.println("1. Jugar"); System.out.println("2. Reglas"); System.out.println("3. Salir"); int opcion = scanner.nextInt(); switch (opcion) { case 1: System.out.println("Introduzca su nombre (Jugador Blanco): "); jugadorBlanco.setNombre(scanner.next()); jugadorBlanco.setColor("Blanco"); System.out.println("Introduzca su nombre (Jugador Negro): "); jugadorNegro.setNombre(scanner.next()); System.out.println("¡Comienza la partida!"); iniciarPartida(); break; case 2: System.out.println("**Reglas del Ajedrez**"); System.out.println("https://www.chess.com/es/como-jugar-\r\n" + "ajedrezhttps://www.chess.com/es/como-jugar-ajedrez\r\n" + ""); break; case 3: System.out.println("¡Hasta pronto!"); continuar = false; break; default: System.out.println("Opción no válida. Seleccione una opción del 1 al 3."); } } } private void iniciarPartida() { tablero.inicializarTablero(); tablero.mostrarTablero(); while (!juegoTerminado()) { turnoJugador(jugadorBlanco); tablero.mostrarTablero(); if (juegoTerminado()) { break; } turnoJugador(jugadorNegro); tablero.mostrarTablero(); } } private void turnoJugador(Jugador jugador) { Scanner scanner = new Scanner(System.in); System.out.println("Turno de " + jugador.getNombre() + " (" + jugador.getColor() + ")"); System.out.println("Introduzca la pieza que desea mover (nombre): "); String nombrePieza = scanner.next(); // Validar si la pieza pertenece al jugador actual if (tablero.validarPiezaDeJugador(nombrePieza, jugador)) { System.out.println("Introduzca las coordenadas de origen (x y): "); int origenX = scanner.nextInt(); int origenY = scanner.nextInt(); System.out.println("Introduzca las coordenadas de destino (x y): "); int destinoX = scanner.nextInt(); int destinoY = scanner.nextInt(); // realizar movimiento if (tablero.realizarMovimiento(jugador, nombrePieza, origenX, origenY, destinoX, destinoY)) { System.out.println("Movimiento válido. ¡Turno completado!"); } else { System.out.println("Movimiento inválido. Inténtalo de nuevo."); turnoJugador(jugador); // Volves a solicitar el movimiento } } else { System.out.println("La pieza no pertenece a " + jugador.getNombre() + ". Inténtalo de nuevo."); turnoJugador(jugador); // Volves a solicitar la pieza } } private boolean juegoTerminado() { return false; } }
Leave a Comment