hola necesito ayuda con la colision al mover el personaje y llegar digamos un muro se detiene 5 pixeles antes y como es un juego de resolucion pequeña se nota bastante la distancia, es en gms2 y ya probe las soluciones de gms 1 y no funcionan.
Que codigos estas usando ?
Cita de: 3dgeminis en Agosto 21, 2018, 03:57:00 PM
Que codigos estas usando ?
gml este /// COLISION
pm = place_meeting(x+hspeed,y+vspeed,object2);
if (pm) {
///comprobar colision
for(var i=0;i<abs(vspeed);i++){
if (place_meeting(x+sign(hspeed),y,object2)) then break;
x += sign(hspeed);
}
hspeed = 0;
}
intenta implementar el engine de colisiones que se encuentra en la seccion de menus, te debe bastar para lo que necesitas sin que te quiebres la Cabeza, solo ten cuidado de tener tus mascaras de collision del mismo tamano
Hola, buenas tardes.
1.Error en linea 3 "vspeed" no se recomienda en colisión horizontal.
2.Las colisiones verticales y horizontales pueden tratarse por separado en plataformas.
3.Debes decirle al objeto que regule su velocidad.
4.Existen tres clases de movimiento horizontal:
a. la suma de x
b. hspeed
c. speed + direction 0, 180, -180
5.La suma de x no se lleva con hspeed, pues hspeed lo gobierna todo.
[EVENTO STEP]
b1=keyboard_check(37)
b3=keyboard_check(39)
v=(b3-b1)*6
//COLISIÓN
while(place_meeting(x+v,y,object2))v-=1*sign(v)
x+=v