Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: cristopher2545 en Agosto 16, 2017, 06:27:57 AM

Título: Plataformas moviles
Publicado por: cristopher2545 en Agosto 16, 2017, 06:27:57 AM
Hola a todos!

eh vuelto con una nueva duda que me tiene muy nervioso y esto es sobre las plataformas móviles o ascensores oh los pixeles que te mueven de arriba y abajo pues vale como siempre me vi como el dios shaun spalding programaba las horizontales y al seguir el tutorial (copiar y pegar de forma salvaje el codigo) me di cuenta que solo había programado las horizontales y dado que no soy muy bueno con gml decidí yo sólito programar el de las verticales y empezó mi calvario...

el personaje se sube a la plataforma la plataforma lo sube y aquí viene el primer error el personaje se baja un pixel al subir y se hunde a la plataforma lo cual no le puse mucha atención porque realmente funcionaba bien de no ser por lo que pasaba después, la plataforma esta programada para rebotar en la pared para que siga su ciclo de movimiento pero al hacer eso el personaje da un salto y se queda saltando cuando la plataforma va de bajada y al subir el pixel que se hunde el personaje hace que este se calme para volver a repetir la acción cuando la plataforma baja. ademas de vez en cuando al rebotar la plataforma  el jugador decide que ya no quiere estar sobre ella y se baja sólito no entiendo porque pero lo hace

no se que estoy saltando en el código o que estoy poniendo de mas pero  me esta poniendo muy nervioso pero es este siento que tal-vez le falta algo para que el personaje se quede pegado en todo momento al piso de la plataforma hasta que yo le ordene saltar o moverse pero bueno este es mi código modificado

evento CREATE de la plataforma

vsp=0
dir=1
movespeed=2



evento STEP de la plataforma

//movimiento de la plataforma
vsp=dir*movespeed

//al tener algo solido la plataforma rebota de vuelta o empuja al jugador fuera
if (place_meeting(x,y+vsp,obj_wall))
{
while(!place_meeting(x,y+sign(vsp),obj_wall))
{
y+=sign(vsp)
}
vsp=0
dir*=-1
}
y+=vsp


// si el jugador esta sobre ella esta lo sube y aveces lo baja
    if place_meeting(x,y-1,obj_player)
    {
    obj_player.vsp=vsp
    }



por favor ayúdenme que me esta poniendo muy nervioso y no puedo hacer un juego si no tiene estas plataformas roba hijos </3 se los agradecere de todo corazon  :love: y de antemano muchísimas gracias por sus respuestas
Título: Re:Plataformas moviles
Publicado por: 3dgeminis en Agosto 17, 2017, 02:37:20 AM
Podrias fijar al jugador encima de la plataforma jugador.y=y , a menos que use la tecla de saltar o caiga de la plataforma.