pilas-engine

Creando un Mapa

Hola ! , estaba viendo el ejemplo mapas-niveles y me llamo la atencion la forma que usaba para crear el mapa , y para ver sus limites , edite this.pilas.crear_mapa y puse un monton de bloques de forma horizontal y vertical . Y cuando ejecute el proyecto , los bloques que estaban horizontalmente al final de la escena a la derecha no se mostraron y en su lugar se crearon bloques a la izquierda . Y los que estaban verticalmente hicieron que la camara no siguiera al jugador bien , (Si pongo el jugador en lo alto del mapa , aunque se mueva no lo seguira , pero si pongo el jugador en la parte baja del mapa si lo sigue aunque un poco lento)

Alguien sabe como hacer que no ocurra eso?
Y ya que saque el tema, hay mas formas para hacer un mapa? Tengo curiosidad

Hola @Roidex !!!, los mapas de pilas tienen que tener las misma cantidad de columnas en cada una de las lineas, seguramente eso te esté dando problemas al momento de generar el mapa.

Otra cosa a tener en cuenta es que el movimiento de la cámara va a detenerse en los bordes del escenario, si tu mapa es muy grande no vas a poder recorrerlo completo con los límites que tiene el escenario. Aquí hay dos opciones, la más sencilla para mí es que pongas true como último argumento de esta función:

Vas a encontrar esa linea de código dentro del actor protagonista del ejemplo mapa-niveles.

Otra opción es aumentar el tamaño del escenario directamente desde las propiedades del escenario:

En algún momento me gustaría ver si podemos incluirle un editor de escenarios a pilas, para que los niveles no se tengan que definir con texto. Me gusta mucho tiled para editar niveles, pero es difícil de integrar en este versión de pilas, tal vez tome algunas ideas de ahí y arme un editor de niveles dentro de pilas.

¡Avisame cualquier cosa!

Muchas gracias @hugoruscitti !! hice lo que dijiste y se arreglo! Al parecer eran las columnas
Aunque ahora al ejecutarlo, la camara aparece en la mitad del mapa por unos milisegundos y despues enfoca al personaje. como se hace para que siempre lo enfoque?

Perdon por no haber respondido antes, estaba ocupado con los estudios

Hola @Roidex !!!, la función para seguir al actor va a mover la cámara desde su punto inicial hacia donde está el actor. Creo que en tu juego la cámara está en el centro del escenario y luego se mueve para mostrar al personaje y por eso se ve el movimiento que decis.

Una forma de resolverlo es poner un código como este en el método iniciar del actor protagonista:

this.pilas.camara.x = this.x;
this.pilas.camara.y = this.y;

así, cuando el juego inicie, la cámara se va a mover inmediatamente a la posición del actor.

¡Avisame si te funciona bien!

No funciona @hugoruscitti :frowning:

Hola @Roidex quizás se deba un poco a algún tipo de bajón de FPS o rendimiento. Otra forma de hacer lo que dijo @hugoruscitti es que pongas la cámara sobre el actor antes de ejecutar.
En las propiedades de la escena están:
Cámara X
Cámara Y
Se me ocurre que si lo cambias desde allí para que coincidan con la posición del actor protagonista, puede que se arregle. La otra opción es que compartas el proyecto y ver si alguien te puede ayudar.