Dejo el proyecto aquí para  :GMS:
No se que es lo que hago mal, la verdad. Todo está escrito correctamente y no da ningún error, pero el personaje no se mueve.
Ahora si.

La fricción es mucha e impide que avance. 

Pues este error tan tonto me tiene paralizado 2 semanas o_O
Gracias por tu ayuda.
Ahora si.

Ahora cambia lo del evento step por esto:
[spoiler]//movimiento horizontal
if keyboard_check(vk_left) {
  phy_linear_velocity_x=-40*room_speed;
}

if keyboard_check(vk_right) {
  phy_linear_velocity_x=40*room_speed;
}

if ((!keyboard_check(vk_right) && !keyboard_check(vk_left)) || (keyboard_check(vk_right) && keyboard_check(vk_left))) {
  phy_linear_velocity_x=0;
}

//movimientos verticales
if keyboard_check_pressed(vk_up) && physics_test_overlap(x, y+1, phy_rotation, obj_suelo1) {
    phy_linear_velocity_y=-160;
}


//Anular rotación
phy_fixed_rotation=true;
[/spoiler]

¿Porque cuando se mueve a los lados con phy_linear_velocity_x no se activa la gravedad ni el cmando phy_linear_velocity_y?
Ahora si.

Cita de: venus en Octubre 25, 2014, 04:45:33 PM
Ahora cambia lo del evento step por esto:
[spoiler]//movimiento horizontal
if keyboard_check(vk_left) {
  phy_linear_velocity_x=-40*room_speed;
}

if keyboard_check(vk_right) {
  phy_linear_velocity_x=40*room_speed;
}

if ((!keyboard_check(vk_right) && !keyboard_check(vk_left)) || (keyboard_check(vk_right) && keyboard_check(vk_left))) {
  phy_linear_velocity_x=0;
}

//movimientos verticales
if keyboard_check_pressed(vk_up) && physics_test_overlap(x, y+1, phy_rotation, obj_suelo1) {
    phy_linear_velocity_y=-160;
}


//Anular rotación
phy_fixed_rotation=true;
[/spoiler]

¿Porque cuando se mueve a los lados con phy_linear_velocity_x no se activa la gravedad ni el cmando phy_linear_velocity_y?

Una pregunta: ¿No podes cambiar el tamaño de la ventana del código?
Es que está muy chiquita la ventana, apenas veo un renglón  :-\

#5 Octubre 25, 2014, 08:30:45 PM Ultima modificación: Octubre 25, 2014, 08:35:00 PM por venus

No se como se cambia eso, yo veo 1/4 de línea.

De todas maneras te dejo el código aquí:
//movimiento horizontal
if keyboard_check(vk_left) {
  phy_linear_velocity_x=-40*room_speed;
}

if keyboard_check(vk_right) {
  phy_linear_velocity_x=40*room_speed;
}

if ((!keyboard_check(vk_right) && !keyboard_check(vk_left)) || (keyboard_check(vk_right) && keyboard_check(vk_left))) {
  phy_linear_velocity_x=0;
}

//movimientos verticales
if keyboard_check_pressed(vk_up) && physics_test_overlap(x, y+1, phy_rotation, obj_suelo1) {
    phy_linear_velocity_y=-160;
}


//Anular rotación
phy_fixed_rotation=true;



Tienes que cambiarlo por lo que haya en el evento step.
Ahora si.