viernes, 17 de agosto de 2012

Tutorial de Minimapa con puntero según la posición (avanzado)

Hola gente, estuve haciendo este engine para el Tetrix,
y puesto que he recibido unas cuantas peticiones me he puesto a hacer un tutorial.
Este engine está hecho principalmente para el Rpg Maker 2k3, no lo he probado en otro.
Es la primera versión del engine.
En la versión que tengo en el Tetrix es un poco diferente, tengo hecho que el puntero te diga en el submarino solamente cuando estas a bordo, si te bajas el puntero no te sigue.

Podeis ver como queda:



Avisar de que es complicado si no tienes un nivel algo avanzado con el RPG Maker

Primero, necesitamos una imagen del mapa que queramos para usar como minimapa.
Yo usé el programa rpg2kdev.exe para convertir un mapa a imagen en bmp.

De un mapa de 1462x1696 por ejemplo, tendria que cambiar la resolucion
a 100x115 que es una escala (1/14) Lo mejor creo que sería 1/16 para que tuviese
la misma proporcion en pixeles y tal pero bueno es el tamaño que quería en el juego.

Necesitamos:
1 imagen del minimapa
1 imagen del puntero que seguirá la posición del heroe (Yo usé un picture de 2x2 pixeles
con color blanco, y luego en el minimapa se ve un cuadro blanco)

Haciendo el engine:

En eventos comunes tenemos que poner donde queramos lo siguiente, en 3 eventos comunes
diferentes:

Evento común 1: en Proceso Paralelo
(Nota: Aquí guardaremos la ID del Heroe para mostrar en el mapa que queramos solamente el minimapa)
 Operaciones con variables - Nombre ID:MAP  Poner valor de Sprite - Heroe - ID Map

 Evento común 2: Proceso Paralelo
(Nota: 264-192 es la posición donde se mostrará el minimapa, en la esquina inferior derecha)
 Condiciones y efectos: Si(aqui ponemos la ID de mapa que queremos) es igual a donde está el heroe
  Mostrar picture nº9 MapXXXXminimapa.png   Coord 264-192  a 20% transparencia
   esperar: 0.0s
  
Evento común 3: Proceso Paralelo
Condiciones y efectos: si(aqui ponemos la ID de mapa que queremos) es igual a donde está el heroe
  Guardar en Variable "xposhero" el valor de "Sprite - Heroe - X coordenada"
  Guardar en Variable "yposhero" el valor de "Sprite - Heroe - Y coordenada"
     Guardar en Variable "xpointerminimap" el valor de "xposhero"
     Guardar en Variable "ypointerminimap" el valor de "yposhero"
    Variable "xpointerminimap" sumar + 218  # con este + haremos que el puntero salga donde debe
    Variable "ypointerminimap" sumar + 148  # con este + haremos que el puntero salga donde debe
     Mostrar picture: nº10 Punterominimapa.png en variable "xpointerminimap"   10% transparencia
                                                                        en variable "ypointerminimap"   
  
Tras esto ve y prueba el mapa, yo lo que hago es poner el test play, y voy mirando
que tal sigue el puntero al personaje, si en algun sitio no cuadra minimizo el Rpg Maker y
edito la imagen del minimapa, guardo y miro en el Rpg Maker y se actualiza en tiempo real.
  
  

No hay comentarios:

Publicar un comentario