Hola gente el problema que tengo es el siguiente: tengo un objeto torreta que rota automáticamente en sentido horario y antihorario de 10º(derecha) a 170º(izquierda) y viceversa. Al presionar space crea un objeto proyectil que toma la dirección(ángulo de la torreta) y se desplaza hacia donde esta apunta con motion_add(obj_Torreta.angulo, velocidad_movimiento) y con un angulo del sprite igual al de la torreta. Lo que necesito es que el proyectil rebote en los bordes de la pantalla con un ángulo de sprite y dirección correcta.
Pone lo siguiente en el evento STEP del proyectil:
image_angle=direction
if x>=room_width
{hspeed*=-1}
if x<=0
{hspeed*=-1}
if y>=room_height
{vspeed*=-1}
if y<=0
{vspeed*=-1}
gracias, hoy tengo el siguiente problema, quiero que rebote el objetos cuyos ángulos son diagonales no totalmente verticales u horizontales, como le harías para que la dirección que tome sea lo mas natural posible????
Solamente se necesita invertir la dirección, es decir, sumarle 180 grados a la variable direction. De este modo, no es necesario usar hspeed y vspeed al mismo tiempo, sólo, vspeed