Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: gamemar en Octubre 13, 2014, 11:45:48 PM

Título: Laser creado con Draw Line al colisionar con el personaje se reinicie la room
Publicado por: gamemar en Octubre 13, 2014, 11:45:48 PM
Hola Comunidad, este es mi primer pregunta. Estoy creado un juego similar a GIVE UP. Voy bien creo.
Me traque en lo que indico en el titulo. Cree un laser usando Draw Line. Quiero que cuando este colisione con mi personaje se reinicie la room. El problema es que Draw Line no es nada solido sino una línea dibujada. He probado de mil formas y nada. Le puse tipo un burn al final de el laser que ese si cuando colisiona con mi personaje se reinicia. Pero cuando la línea dibujada toca mi Personaje no pasa nada. Agradezco muchísimo cualquier ayuda que me puedan dar.
Gracias desde ya!!!!
Título: Re:Laser creado con Draw Line al colisionar con el personaje se reinicie la room
Publicado por: p34 en Octubre 14, 2014, 12:44:23 AM
La función collision_line(x1,y1,x2,y2,obj,prec,notme) es lo que te podría ayudar en este caso.

Va así:


collision_line( x1, y1, x2, y2, obj, prec, notme );


donde le pones el punto de origen en x1, y1;
el punto final en x2, y2;
el objeto que quieres que cheque la colisión en obj;
si quieres colisión perfecta basada en pixeles pones true en prec o falso si es colisión normal;
y si quieres que omita al objeto que llama esta función le pones true en notme o false para que te tome en cuenta.

La puedes poner en una condición para que cuando pase la colisión se ejecute el código necesario.


if(collision_line( obj_laser.x,obj_laser.y,obj_laser.x+20,obj_laser.y, obj_jug1, 1, 0))
{
  room_restart();
}


PD: Bienvenido :)
Título: Re:Laser creado con Draw Line al colisionar con el personaje se reinicie la room
Publicado por: gamemar en Octubre 16, 2014, 03:43:54 AM
Muchisimas gracias por la respuesta!!!! Enserio! lo pruebo y te dijo.  ;)