Untitled

 avatar
unknown
java
a year ago
3.8 kB
1
Indexable
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