Buenas a todos, me gustaría saber como hacer para que cuando por ejemplo mi sprite del personaje que va hacia la izquierda dispare y asi en todas las direcciones.

Por el momento tengo esto:
En STEP del Jugador (object_player2):
if image_index = arriba {direction = 90 instance_create(x,y,object_bullet)}
if image_index = abajo {direction = 270 instance_create(x,y,object_bullet)}
if image_index = izquierda {direction = 180 instance_create(x,y,object_bullet)}
if image_index = derecha {direction = 0 instance_create(x,y,object_bullet)}


Y en la bala, en CREATE:
"Set direction and speed of motion" (en move, las flechas grises)
object_player2.direction y velocidad 5

El jugador siempre dispara para arriba por ahora, y basicamente quiero que cuando detecte que esta mirando hacia abajo por ejemplo, que cree la instancia de la bala hacia abajo.

Muchísimas gracias de antemano, un saludo!!  :)




en el evento step del jugador solo pon esto:

if (boton que se vaya a pulsar)

{
instance_create(x,y,obj_bala)
}


en el evento create de la bala:

direction = obj_player.direction;
speed = (la que quieras)
//////
lo que no se es como mueves al jugador (si lo mueves con la variable direction te funcionara, pero si lo mueves con hspeed y vspeed deberas poner en el evento step del jugador la direccion conforme  hspeed y vspeed) pero hay mejores metodos asi que si puedes poner con que variables se mueve tu jugador mejor...


Estoy utilizando dos joysticks de 4 direcciones, el izquierdo para el manejo y el derecho para mirar y disparar.
Y básicamente el único fallo que tengo es ese que al mover el joystick derecho hacia la derecha por ejemplo mira hacia la derecha pero no dispara a la derecha, si no para arriba..

Tengo 4 sprites del jugador principal, se llaman, arriba, abajo, izquierda y derecha.
Por eso mismo he echo un if para que detecte si esta mirando para la derecha por ejemplo que cree la bala dirección 0 que es hacia la derecha, etc.

Pero nada, no funciona.. Un saludo!  :)

if image_index = arriba {direction = 90 with( instance_create(x,y,object_bullet)){direction=90;speed=10}};
if image_index = abajo {direction = 270 with( instance_create(x,y,object_bullet)){direction=270;speed=10}};
if image_index = izquierda {direction = 180 with( instance_create(x,y,object_bullet)){direction=180;speed=10}};
if image_index = derecha {direction = 0 with( instance_create(x,y,object_bullet)){direction=0;speed=10}};


Lo acabo de leer... mas vale tarde que nunca...