Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: angel_33 en Octubre 19, 2017, 01:47:22 AM

Título: Colison objeto con pared
Publicado por: angel_33 en Octubre 19, 2017, 01:47:22 AM
Hola, tengo un problema con mi obj_player. Resulta que funciona todo correcto, pero cuando estoy pegado a un objeto pared, he intento atravesarlo, el personaje intenta hacer la animacion de seguir andando y se pone a temblar, quedando bastante feo y me gustaria saber como hacer para que se quede quito y no tiemble ;)

saludos y gracias
Título: Re:Colison objeto con pared
Publicado por: bygdle en Octubre 19, 2017, 02:16:27 AM
¿Cuál es el código que usas?
Título: Re:Colison objeto con pared
Publicado por: angel_33 en Octubre 19, 2017, 01:17:43 PM
Colision horizontal
if (!place_meeting(x + sign(intVX), y, obj_block))
    {
        x += sign(intVX);
    }
    else
    {
        intVX = 0;
        break;
    }
}

variales de colision:

intColLeft  = place_meeting(x - 1, y, obj_block);
intColRight = place_meeting(x + 1, y, obj_block);

un saludo y gracias
Título: Re:Colison objeto con pared
Publicado por: Bugisoft en Octubre 19, 2017, 04:12:41 PM
Parece el típico problema de máscara de colisión. Si el sprite es animado debes ponerle una máscara de colisión no precisa, yo recomiendo la cuadrada.
Título: Re:Colison objeto con pared
Publicado por: angel_33 en Octubre 19, 2017, 08:58:29 PM
Tengo creado un sprite un rectangulo que es la mascara de colisiones del objeto_player ;) pero sigue funcionado mal  :'(
Título: Re:Colison objeto con pared
Publicado por: 3dgeminis en Octubre 20, 2017, 04:36:17 AM
El problema parec estar en el resto del codigo, en el manejo del cambio de sprites
Título: Re:Colison objeto con pared
Publicado por: shoonky en Octubre 25, 2017, 11:32:01 PM
eso me pasaba cuando la variable responsable del movimiento no era X_speed(por ejemplo) sino una V_speed que entraba en producto con la x