Actualmente evento colission de mi personaje con el objeto piso uso el siguiente comando:

if y<other.y
{
move_contact_solid(270,12);
vspeed=0;
}
else
{motion_set(0,0)}


Sin embargo, al usar el tocar mi personaje alguna arista de este objeto, se queda quieto, suspendido y sin fuerza de gravedad, como si lo estuviera pisando.

(Ejemplo, hay un conjunto de estos objetos PISO juntos en el aire, que se usan como plataforma para mi personaje, por encima de la plataforma en donde se encuentra en este momento)

?Alguna sugerencia, amigos?

pues yo para gravedad siempre e usado este
[gml]if place_free(x,y+1)
{gravity = 0.5}
else{
gravity = 0}[/gml]
y para colisi?n este y me funcionan a la perfecci?n
if other.solid{
move_contact_solid(direction,12) vspeed=0}

Yo uso este:
if vspeed>0
{
move_contact_solid(270,vspeed)
vspeed=0
}
if vspeed<0
{
move_contact_solid(90,vspeed)
vspeed=0
}


Y para la gravedad uso el mismo que brunoxzx