Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: cristopher2545 en Mayo 22, 2019, 04:55:27 AM

Título: [SOLUCIONADO] Problema con plataformas giratorias
Publicado por: cristopher2545 en Mayo 22, 2019, 04:55:27 AM
hola a todos! Después de trabajar y estar viendo y practicando logre hacer que funcionaran como la seda! agradezco a todos los que me dieron un empujón <3 dejo la solución por si a alguien quiere implementarlas! es pixel perfect y funciona muy suave !

puedes crear cuantas plataformas quieras y si les das un angulo diferente en el código deegree todas giraran en los juegos tipo mario  :)

create

degree = 0;  // The degree you want it to start at.
orginX = x;  // The center of your circle, x coord.
orginY = y;  // The center of your circle, y coord.
rad = 100;  // The radius of your circle.
spd=1
origin=0 // recuerda el ultimo punto en x donde el jugador piso


step


if Angle>=360 {Angle-=360}

Angle += Speed;


origin= obj_player.x - xprevious // esta siempre buscando la x del jugador




// Update position

y = lengthdir_y(Orbit, Angle) + Center_Y;
x = lengthdir_x(Orbit, Angle) + Center_X



if place_meeting(x,y-12,obj_player)
{
if obj_player.force_jump=false
{
obj_player.y = lengthdir_y(Orbit, Angle) + Center_Y
obj_player.x = lengthdir_x(Orbit, Angle) + Center_X + origin // si estas tocando la plataforma el x se congela en el punto exacto que registro el código origin
}

}



Título: Re:Problema con plataformas giratorias
Publicado por: artmaker en Mayo 22, 2019, 06:26:23 AM
Saludos!!

una consulta el segundo código en que objeto lo tienes?.
He probado el siguiente código con una plataforma que se mueve  hacia arriba:

evento step de la plataforma:
if place_meeting(x,y-4,obj_player){obj_player.y-=1}
y-=1;


el código verifica si  el jugador se encuentra arriba , y si lo esta mueve al jugador 1 pixel hacia arriba en cada momento.
y como la plataforma también se mueve a la misma velocidad.

por el momento no me ha dado errores, lo he probado en todas las direcciones,puedes intentar implementarlo en tu código  para ver si funciona!   
Título: Re:Problema con plataformas giratorias
Publicado por: cristopher2545 en Mayo 22, 2019, 08:58:26 AM
gracias por la pronta respuesta <3 el codigo funciona pero des-afortunadamente siguen los mismos errores antes mencionados, la plataforma se niega a mantener al jugador sobre y en su radio de giro pero agradezco el esfuerzo :)
Título: Re:Problema con plataformas giratorias
Publicado por: artmaker en Mayo 22, 2019, 09:25:39 PM
no hay de que!, intente usar el código que colocaste para probar, solo logré que se sostuviera en el eje Y colocando en el jugador

event step del jugador:
if place_meeting(x,y+5,obj_bloque_movible1){

y = obj_bloque_movible1.y-13

}


coloqué y-13 porque es el tamaño de la mascara de sprite que ocupo en mi juego.
Esperemos si alguien mas pueda ayudarnos!
Título: Re:Problema con plataformas giratorias
Publicado por: cristopher2545 en Mayo 23, 2019, 06:58:44 AM
hehe gracias <3 esperemos que si , me gustaría poder implementarlas <3
Título: Re:Problema con plataformas giratorias
Publicado por: cristopher2545 en Mayo 25, 2019, 10:47:46 AM
logre hacer que funcione en el angulo Y pero el X se niega a quedarse quieto el personaje no sigue la trayectoria del circulo y estoy llorando jaja

por si alguien le sirve algo a medias solo hay que agregar esto en el step


if place_meeting(x,y-12,obj_player)
{
obj_player.y = lengthdir_y(Orbit, Angle) + Center_Y
}
Título: Re:Problema con plataformas giratorias
Publicado por: bygdle en Mayo 25, 2019, 08:25:01 PM
¿Cómo es el código de movimiento del personaje?
Título: Re:Problema con plataformas giratorias
Publicado por: cristopher2545 en Mayo 27, 2019, 02:44:20 AM
hola! es el mismo que usa shaun spalding no tiene ninguna modificación en especial