pues tengo que mi personaje esta sobra una plataforma que se mueve de manera vertical, y el personaje se mueve con ella, y cuando te tiras de la plataforma pues tienes gravedad y cuando caes en una plataforma nueva cn movimiento vertical te mueves con ella, pero no logro hacerlo... ahi les van los codigos:
step personaje:
if place_free(x,y+4){gravity_direction=270 gravity=1}else{gravity=0;y+=-4;}
colission con la plataforma:
move_contact_solid(270,0)
create de la paltaforma:
vspeed=-4
y los codigos de moverse a derecha e izquierda con x+=4 y x+=-4 :O
mm...
fijate asi
/*esto para que se mueva*/
/*Ev_step*/
if instance_place(x,y,Obj_plataforma)
{
ID=instance_place(x,y,Obj_plataforma)
if instance_exists(ID)
{
x+=ID.x-ID.xprevious
y+=ID.y-ID.xprevious
}
}
todo lo demas creo que lo pusiste bien.. dejalo como esta
no, ahora nisiquiera se mueve ni nada...
Yo consegui ingeniarmelas para conseguir que el personaje se moviera con la plataforma da igual la direccion que esta tuviera y el movimiento que esta siguiera, que el personaje la iba a seguir, os garantizo que NO podeis apoyaros en las variables predefinidas tales como: vspeed, hspeed, direction, speed, xprevious, yprevious, teneis que crearos vuestro propio sistema de movimiento para la plataforma, la cuestion es que la plataforma antes de hacer un cambio brusco de direccion (como por ejemplo dejar de ir hacia arriba para ir hacia abajo en su clico de subida-bajada) debe avisar antes por medio de una variable que llamariaoms velocidadY de su intencion, y luego en el evento step de esta plataforma hacer y+=velocidadY. Con esto tienes la mayor parte del problema resuleto, ya que el personaje al detectar la plataforma debajo suya tendria este codigo (en evento step)
if(place_meeting(x,y+1+vspeed,Plat_Vertical)){
_plat=instance_place(x,y+1+vspeed,Plat_Vertical);
vspeed=0;
y+=_plat.velocidadY;
tambien es importante que en el evento colision con esta Plataforma pongamos:
move_contact_solid(270,12);
vspeed=0;