/* ******************************************************* * Se seleccionan las posiciones para asignar los enemigos. * Se deben haber seleccionado previamente la meta y el inicio. *********************************************************/ public void seleccionarEnemigos(int numeroEnemigos) { this.enemigos = new Enemigo[numeroEnemigos]; // Creo N número de enemigos. for (int i = 0; i < numeroEnemigos; i++) { Ficha fichaTemp = obtenerficha(); // La ficha no puede ser la meta o el jugador. while (fichaTemp.compararFicha(this.meta) || fichaTemp.compararFicha(this.jugador) || fichaTemp.compararMuchasFichas(this.enemigos)) { fichaTemp = obtenerficha(); } this.enemigos[i] = new Enemigo(fichaTemp.getX(), fichaTemp.getY()); // Agregué el nuevo enemigo. } }
/* ******************************************************* * Se selecciona el jugador por primera vez. * No se deben haber generado enemigos. *********************************************************/ public void seleccionarInicio() { Ficha fichaTemp = obtenerficha(); // Si la ficha del jugador no está en el mismo lugar que la meta. while (fichaTemp.compararFicha(this.meta)) { fichaTemp = obtenerficha(); } this.jugador = new Jugador("Temp", fichaTemp.getX(), fichaTemp.getY()); }
/* ******************************************************* * Se selecciona la meta a seguir. * No se deben haber generado enemigos. *********************************************************/ public void seleccionarMeta() { Ficha fichaTemp = obtenerficha(); // Si la ficha de la meta no está en el mismo lugar que el jugador. while (fichaTemp.compararFicha(this.jugador)) { fichaTemp = obtenerficha(); } this.meta = new Meta(fichaTemp.getX(), fichaTemp.getY()); }
/* Compare si llegue a la meta. */ public Boolean compararMeta(int x, int y) { Ficha meta = this.campoJuego.getMeta(); Ficha fichaTemp = this.campoJuego.getFicha(x, y); // Si es la meta. if (fichaTemp.compararFicha(meta)) { return(true); } return(false); }
/* Revise si ya había hecho ese movimiento previamente. */ public Boolean compararPrevios(Ficha posActual, Ficha nuevoHijo) { Ficha temp = posActual.getPrevious(); while (temp != null) { if (temp.compararFicha(nuevoHijo)) { return(true); } temp = temp.getPrevious(); } return(false); }