Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: michaelosan en Enero 30, 2014, 06:21:40 PM

Título: como HACER QUE LAS BALAS REBOTEN al collisionar EN UN BLOQUE ???(SOLUCIONADO)
Publicado por: michaelosan en Enero 30, 2014, 06:21:40 PM
hola tengo un juego de naves  y cuando disparo hacia arriba quisiera que la bala choque en un bloque de 32 x32 y rebote en cualquier direccion

objeto  bala :   CREATE  :   move it  ,,flecha arriba , velocidad 5

alguna sugerencia ?????? gracias
Título: Re:como HACER QUE LAS BALAS REBOTEN al collisionar EN UN BLOQUE ???
Publicado por: Gutic en Enero 30, 2014, 06:37:46 PM
¡Buenas!

Me temo que vas a tener que usar GML, es muy fácil. Pega este código en el evento de colisión de la bala con el bloque:

x=xprevious;
y=yprevious;

direction=190+random(160);


Con eso debería ser suficiente. Lo que hace el código es volver la bala a la posición de justo antes de colisionar para evitar que se repita el evento y después cambia la dirección aun ángulo entre 190 y 190+160 de forma aleatoria (el ángulo 0 es las 3 en el reloj, y aumenta en sentido contrario a las agujas del reloj). He elegido ese rango porque he supuesto que tus balas van hacia arriba y quieres que reboten en dirección contraria pero no justo en la dirección contraria, ¿no?

Espero haberme explicado bien.

¡Un saludo y mucha suerte!  ;)
Título: Re:como HACER QUE LAS BALAS REBOTEN al collisionar EN UN BLOQUE ???(SOLUCIONADO)
Publicado por: michaelosan en Enero 30, 2014, 07:34:43 PM
gracias funciono aunque cuando rebota se gira un poco la bala , pense en agregarle al codigo image_angle = direction; auqnue no funciona lo puse debajo del codigo ,, gracias