pues yo lo he hecho en 2 juegos, haber si te sirve.
creamos un quadrado 16x16 o 32x32, depende del tama?o que tu hayas seleccionado. Simplemente desmarca visible y en el sprite desmarca transparent. No hagas nada mas. Lo llamaremos path
plataforma_vertical, marcale solid, de pariente le pones el bloque que usas para las colisiones.
create
colision con path
character. Tu personaje. solo pon este evento:
colision con plataforma_vertical
Ahora simplemente mira esto:
[]
__
[]
-----
los [] son objetos path. Estos indicaran el limite de la plataforma __ , es decir, la plataforma vertical no saldra de esos limites. los --- son bloques. nunca hagas que la plataforma toque bloques o te undiras en los bloques al subir. Dejala libre, sin obstaculos entre su camino
Codigo testeado y va 100%
creamos un quadrado 16x16 o 32x32, depende del tama?o que tu hayas seleccionado. Simplemente desmarca visible y en el sprite desmarca transparent. No hagas nada mas. Lo llamaremos path
plataforma_vertical, marcale solid, de pariente le pones el bloque que usas para las colisiones.
create
Código [Seleccionar]
vspeed = -1
sentido = 'arriba'
colision con path
Código [Seleccionar]
if sentido = 'arriba' {sentido = 'abajo'; vspeed = 1; exit;}
if sentido = 'abajo' {sentido = 'arriba'; vspeed = -1; exit;}
character. Tu personaje. solo pon este evento:
colision con plataforma_vertical
Código [Seleccionar]
if place_meeting(x,y+1,plataforma_vertical) = true
{
if other.sentido = 'arriba' {y -= 1}
if other.sentido = 'abajo' {y += 1}
}
Ahora simplemente mira esto:
[]
__
[]
-----
los [] son objetos path. Estos indicaran el limite de la plataforma __ , es decir, la plataforma vertical no saldra de esos limites. los --- son bloques. nunca hagas que la plataforma toque bloques o te undiras en los bloques al subir. Dejala libre, sin obstaculos entre su camino
Codigo testeado y va 100%