public void GenerarMapa() { /* * int[,] temporal = new int[,] { {1, 1, 0}, * {1, 1, 1}, * {1, 0, 1} }; * * Debug.Log(Metodos.CantidadLosetasVecinas(temporal, 1, 1, true)); */ // Limpiamos el mapa de losetas. MapaDeLosetas.ClearAllTiles(); // Creamos el array bidimensional del mapa int[,] mapa = null; // Generamos una semilla nueva de forma aleatoria. if (SemillaAleatoria) { Semilla = Random.Range(0f, 1000f); } switch (algoritmo) { case Algoritmo.PerlinNoise: mapa = Metodos.GenerarArray(Ancho, Alto, true); mapa = Metodos.PerlinNoise(mapa, Semilla); break; case Algoritmo.PerlinNoiseSuavizado: mapa = Metodos.GenerarArray(Ancho, Alto, true); mapa = Metodos.PerlinNoiseSuavisado(mapa, Semilla, Intervalo); break; case Algoritmo.RandomWalk: mapa = Metodos.GenerarArray(Ancho, Alto, true); mapa = Metodos.RandomWalk(mapa, Semilla); break; case Algoritmo.RandomWalkSueavizado: mapa = Metodos.GenerarArray(Ancho, Alto, true); mapa = Metodos.RandomWalkSuavisado(mapa, Semilla, MinimoAnchoSeccion); break; case Algoritmo.PerlinNoiseCueva: mapa = Metodos.GenerarArray(Ancho, Alto, false); mapa = Metodos.PerlinNoiseCueva(mapa, Modificador, LosBordesSonMuros, OffsetX, OffsetY, Semilla); break; case Algoritmo.RandomWalkCueva: mapa = Metodos.GenerarArray(Ancho, Alto, false); mapa = Metodos.RandomWalkCueva(mapa, Semilla, PorcentajeAEliminar, LosBordesSonMuros, MovimientoEnDiagonal); break; case Algoritmo.TunelDireccional: mapa = Metodos.GenerarArray(Ancho, Alto, false); mapa = Metodos.TunelDireccional(mapa, Semilla, AnchoMinimo, AnchoMaximo, Aspereza, DesplazamientoMaximo, Desplazamiento); break; case Algoritmo.MapaAleatorio: mapa = Metodos.GenerarMapaAleatorio(Ancho, Alto, Semilla, PorcentajeDeRelleno, LosBordesSonMuros); break; case Algoritmo.AutomataCelularMoore: mapa = Metodos.GenerarMapaAleatorio(Ancho, Alto, Semilla, PorcentajeDeRelleno, LosBordesSonMuros); mapa = Metodos.AutomataCelularMoore(mapa, TotalDePasadas, LosBordesSonMuros); break; case Algoritmo.AutomataCelularVonNeumann: mapa = Metodos.GenerarMapaAleatorio(Ancho, Alto, Semilla, PorcentajeDeRelleno, LosBordesSonMuros); mapa = Metodos.AutomataCelularVonNeumann(mapa, TotalDePasadas, LosBordesSonMuros); break; } //= Metodos.GenerarArray(Ancho, Alto, false); Metodos.GenerarMapa(mapa, MapaDeLosetas, Loseta); Debug.Log("Generar Mapa"); }