[ :GMS:
Estoy elaborando un juego en el que tienes que ir saltando por plataformas pero algunas veces el sprite se queda atorado en las esquinas.
Alguien me podría ayudar por favor ;)
El código es el de la colisión con el piso
Primero, el código que pusiste tiene un error. El punto y coma al final de la condición normalmente causaría un error. Lol, toy ciego xDDD olvida eso xD
Segundo, creo que el error tiene que ver principalmente con el movimiento lateral, en vez de la colisión vertical.
Intenta evitar que el personaje se mueva cuando hay un bloque en frente suyo, para que no se atasque.
Por ejemplo, al presionar la tecla de moverse hacia la derecha:
[gml]
if place_free(x + velocidad, y)
x += velocidad;
[/gml]
Y al moverse a la izquierda:
[gml]
if place_free(x - velocidad, y)
x -= velocidad;
[/gml]
También revisa la mascara del sprite, tendría que ser cuadrada, supongo...
Tal como dijo el usuario Rosergio1. El error en este tipos de casos no siempre se deba al código. Trata en lo posible siempre de utilizar máscaras de colisión. Y también tratar de no usas "Precise collition checking".