/Ejemplo
*
*/
package com.minastirith.filemanager;
import com.minastirith.characters.Aragorn;
import com.minastirith.characters.Arwen;
import com.minastirith.characters.Frodo;
import com.minastirith.characters.Gandalf;
import com.minastirith.characters.Gollum;
import com.minastirith.characters.Hobbit;
import com.minastirith.characters.Huargo;
import com.minastirith.characters.Orco;import com.minastirith.characters.Personaje;
import com.minastirith.characters.Saruman;
import com.minastirith.common.TypeCasilla;
import com.minastirith.common.TypeClase;
import com.minastirith.section.Item;
import com.minastirith.section.Punto;
import com.minastirith.decoys.Espada;
import com.minastirith.decoys.Anillo;
import com.minastirith.decoys.Nigromante;
;
// TODO:Auto-generated Javadoc
/**
* The Class Generador.
*
* @author edward
*/
public class Generador {
/** The señuelos. */
private int[] _Señuelos;
/** The eje y. */
private int _EjeX, _EjeY;
/** The _arreglo item. */
private Item[] _arregloItem;
/**
* Instantiates a new generador.
*/
public Generador() {
_Señuelos = new int[3];
_EjeX = 0;
_EjeY = 0;
}
/*** Generar matriz nula.
*/
public void generarMatrizNula() {
for (int IndexY = 0; IndexY < Minas.getSingleton().getDimencion(); IndexY++) {
for (int IndexX = 0; IndexX < Minas.getSingleton().getDimencion(); IndexX++) {
Minas.getSingleton().getMatrizMinas()[IndexX][IndexY] = new Item(
new Punto(IndexX, IndexY));
System.out.print("(x=" + IndexX + ",y=" + IndexY + ")");}
System.out.print("\n");
}
}
/*
* Descripción: Método randomHasta. Autor: Francisco Navarro Fecha de.
* Creación: 28/3/13. Entradas: un número entero positivo. Salidas: un
* número. aleatorio entre 0 y el parámetro de entrada.
*/
/**
* Random hasta.
*
* @param dim
* the dim
* @return the int
*/
public int randomHasta(int dim) {
intrnd = (int) (Math.random() * dim);
return rnd;
}
/**
* Descripción:setea la variable ejeY con un número aleatorio entre 0 y la
* dimension de la matriz Minas. Autor: Francisco Navarro Fecha de
* Creación:4/4 Entradas: Salidas:
*/
public void ObtenerFila() {
this._EjeX = randomHasta(Minas.getSingleton().getDimencion());
}
/**
* Descripción: verifica de una casillaespecifica de matriz Minas esté
* vacia Autor: Francisco Navarro Fecha de Creación:4/4 Entradas:2 enteros
* (indices de la casilla que se desea verificar) Salidas: boolean (depende
* si esta o no vacia la casilla).
*
* @param ejeX
* the eje x
* @param ejeY
* the eje y
* @return true, if successful
*/
public boolean validarPosicionVacia(intejeX, int ejeY) {
return Minas.getSingleton().getMatrizMinas()[ejeX][ejeY].getTipo()
.equals(TypeCasilla.NULL);
}
/*
* Descripción: Método posicionAleatoria asigna una posicion aleatoria en el
* mapa de la mina según el tipo de personaje. Autor: Francisco Navarro
* Fecha de creación: 28/3/13 Entradas: un número entero positivo Salidas:
*/
/**
* Posicion aleatoria.
** @param tipo
* the tipo
*/
public void posicionAleatoria(int tipo) {
boolean _seguir = true;
while (_seguir) {
// posicion aleatoria en las ultimas 3 filas
if (tipo == 3) {
this._EjeY = (Minas.getSingleton().getDimencion() - randomHasta(3)) - 1;
ObtenerFila();
}
// posicion aleatoria en las filas 0,1,2
else if (tipo == 2) {this._EjeY = randomHasta(3);
ObtenerFila();
}
// posicion aleatoria en la fila 0
else if (tipo == 1) {
this._EjeY = 0;
ObtenerFila();
}
// verifica que la posicion este vacia.
if (validarPosicionVacia(_EjeX, _EjeY)) {
_seguir = false;
}
}
}
/**
* Descripción: Recorre la matriz Minas fila por fila, en cada fila guarda
* todos los items en...
Regístrate para leer el documento completo.