Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: francordoba en Agosto 21, 2013, 03:20:14 PM

Título: Asignar valor a una variable interna de un objeto recién creado.
Publicado por: francordoba en Agosto 21, 2013, 03:20:14 PM
Tengo un personaje que dispara una bala selectiva.
Ésta impacta y daña a un determinado enemigo dependiente de su variable interna "origen".

Es decir, si origen es "1", la bala destruye zombies. Si origen es "2" daña e impacta en vampiros solamente. Ignorando lo demás, lo cual ya lo tengo programado.

Quiero hacerlo todo con el mismo proyectil.

instance_create(x+lengthdir_x(5,image_angle),y+lengthdir_y(0,image_angle),disparo_obj);

Con esto creo la bala que sale desde el atacante.  ¿Pero como predetermino el valor de la variable interna "origen" de esa misma bala para que ella misma salga ya con la variable interna en "1" o en "2"?

Gracias.
Título: Re:Asignar valor a una variable interna de un objeto recién creado.
Publicado por: Emd4600 en Agosto 21, 2013, 05:22:52 PM
En el mismo código, después de lo que has puesto.

disparo_obj.origen = 1

Esto hará que la bala salga con el origen (que sería la variable) en 1.
Título: Re:Asignar valor a una variable interna de un objeto recién creado.
Publicado por: Zela en Agosto 22, 2013, 12:34:26 AM
Pues Si Lo Estas Creando Y Luego Modificando Yo Lo Entiendo De La Siguiente Manera
var _Bala; // Variable Donde Guardaré La ID Del Objeto a Crear
// Creo El Objeto
_Bala = instance_create(x+lengthdir_x(5,image_angle),y+lengthdir_y(0,image_angle),disparo_obj);
// Modifico Variables Internas De Aquel ID Del Objeto Creado
_Bala.origen = 1 // si destruyes Zombies
Título: Re:Asignar valor a una variable interna de un objeto recién creado.
Publicado por: francordoba en Agosto 22, 2013, 08:13:48 PM
Gracias a los dos!