Untitled

mail@pastecode.io avatar
unknown
java
7 months ago
3.4 kB
2
Indexable
Never
package juego;

import piezas.Piezas;
import piezas.Torre;

public class Tablero {
    private final int filas = 8;
    private final int columnas = 8;
    private Piezas[][] tablero = new Piezas[filas][columnas];

    public void inicializarTablero() {
        // Inicializar el tablero con las piezas en sus posiciones iniciales
        tablero[0][0] = new Torre("negro");

        // ... completar con otras inicializaciones de piezas

        // Puedes tener métodos separados para inicializar cada tipo de pieza
    }

  
    public void mostrarTablero() {
        String[][] tablero = new String[filas][columnas];
        for (int i = 0; i < 8; i++) {
            switch (i) {
                case 0:
                    tablero[0][i] = "Tn";
                    tablero[7][i] = "Tb";
                    break;
                case 1:
                    tablero[0][i] = "Cn";
                    tablero[7][i] = "Cb";
                    break;
                case 2:
                    tablero[0][i] = "An";
                    tablero[7][i] = "Ab";
                    break;
                case 3:
                    tablero[0][i] = "rn";
                    tablero[7][i] = "rb";
                    break;
                case 4:
                    tablero[0][i] = "Rn";
                    tablero[7][i] = "Rb";
                    break;
                case 5:
                    tablero[0][i] = "An";
                    tablero[7][i] = "Ab";
                    break;
                case 6:
                    tablero[0][i] = "Cn";
                    tablero[7][i] = "Cb";
                    break;
                case 7:
                    tablero[0][i] = "Tn";
                    tablero[7][i] = "Tb";
                    break;
            }
        }
        for (int j = 0; j < 8; j++) {
            tablero[1][j] = "Pn";
            tablero[6][j] = "Pb";
        }
        System.out.println("    A    B    C    D    E    F    G    H");
        for (int i = 0; i < filas; i++) {
            System.out.print(i + 1 + " | ");
            for (int j = 0; j < columnas; j++) {
                if (tablero[i][j] != null) {
                    System.out.print(tablero[i][j] + "    | ");
                } else {
                    System.out.print("    | ");
                }
            }
            System.out.println();
        }
    }

    public boolean realizarMovimiento(Jugador jugador, String nombrePieza, int origenX, int origenY, int destinoX,
                                      int destinoY) {
        Piezas pieza = tablero[origenX][origenY];

        // Verifica si la pieza pertenece al jugador
        if (pieza != null && pieza.getColor().equals(jugador.getColor())) {
            // Verifica si el movimiento es válido según la pieza específica
            if (pieza.esMovimientoValido(origenX, origenY, destinoX, destinoY)) {
                // Realiza el movimiento si es válido
                tablero[destinoX][destinoY] = pieza;
                tablero[origenX][origenY] = null;
                return true;
            }
        }

        // Movimiento no válido
        return false;
    }

    public boolean validarPiezaDeJugador(String nombrePieza, Jugador jugador) {
        // Implementación necesaria
        return false;
    }
}
Leave a Comment