Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Braxpok en Enero 01, 2014, 08:48:12 PM

Título: [Duda]¿Como obtengo el ID de un objeto que se crea?
Publicado por: Braxpok en Enero 01, 2014, 08:48:12 PM
Hola a todos, estuve intentando hacer un juego de disparos en 2D, hasta el momento todo bien.
Cuando presiono la tecla de disparo, mi personaje dispara, pero cuando me doy vuelta mi personaje dispara siempre para la derecha. Entonces lo que quiero es obtener el id de cada bala que se crea y que cada una valla para donde el personaje mira.
¿Como lo harían?
Gracias de antemano.
Título: Re:[Duda]¿Como obtengo el ID de un objeto que se crea?
Publicado por: Mega G en Enero 01, 2014, 09:00:04 PM
Hola Braxpok, si quieres obtener la id de un objeto que acabas de crear pon esto en el código de crear la bala:

bala=instance_create(x,y,objeto_bala);

Y luego ya puedes cambiarle la dirección:

if direccion_personaje="Izquierda" { bala.hspeed=-2; } else if direcion_personaje="Derecha" { bala.hspeed=2; }
(No sé qué utilizas para saber si el personaje mira hacia la derecha o la izquierda así que me he inventado las variables)

Espero que te haya servido!
Título: Re:[Duda]¿Como obtengo el ID de un objeto que se crea?
Publicado por: Braxpok en Enero 01, 2014, 09:20:41 PM
Gracias a tu respuesta me he dado cuenta de algo y lo he hecho y me ha salido a la perfección.

Así fue como lo he hecho:
if keyboard_check(vk_left){x -= 3; val = 2; image_index = 1;}
if keyboard_check(vk_right){x += 3; val = 1; image_index = 0;}
if keyboard_check(vk_up){y -= 3; val = 3; image_index = 3;}
if keyboard_check(vk_down){y += 3; val = 4; image_index = 2;}

if (keyboard_check_pressed(vk_enter)){
play = instance_create(x,y,obj_Bala);

if (val = 1){
    play.hspeed = +10;
}
if (val = 2){
    play.hspeed = -10;
}
if (val = 3){
    play.vspeed = -10;
}
if (val = 4){
    play.vspeed = +10;
}
}


Bueno, gracias me ha servido.