Diciembre 08, 2018, 05:16:43 PM Ultima modificación: Diciembre 09, 2018, 06:13:46 PM por Yuzo
SALUDOS;

El titulo del post la verdad es que no lo explica muy bien, asi que mejor paso a hacer la pregunta debidamente.

Tengo un objeto que se va desplazando por la pantalla (OBJETO A) y de repente se elimina a si mismo y crea otro objeto (OBJETO B).

El OBJETO A se crea con una variable llamada VIDA que tiene un valor inicial de 100, antes de eliminarse a si mismo y crear al OBJETO B la variable VIDA es posible que se modicase y su valor ya no fuera 100.

El caso es que cuando se elimine el OBJETO A y cree al OBJETO B, me gustaría poder transferir dicha variable y su valor al OBJETO B.

Esto es posible ?, con algún with, other o algo ?, no se como hacerlo.

Gracias chicos.

#1 Diciembre 08, 2018, 07:30:30 PM Ultima modificación: Diciembre 08, 2018, 09:50:34 PM por Goganpis
Puedes hacer simplemente
var inst;
inst = instance_create(x,y,objB); // inst guardo la variable del ID
inst.VIDA = 100; // inst. el (.) se usa para buscar la variable o alterarla sin llamar el with o tanto codigo


o esta otra forma
var v;
v = VIDA; // Al declarar una var fuera de las llaves puedes usarla dentro y fuera del with
with (instance_create(x,y,objB)) // Acudiendo
{
VIDA = v; // ajusta la variable con la variable temporal declarada fuera de las llaves
}

El primer método no me ha funcionado, pero el segundo sí, pero sin crear la variable V, si no me daba error y añadiendo other, quedándose así:

[gml]with (instance_create(x,y,objB))
{
vida = other.vida;
}[/gml]

Muchísimas gracias !! ;-)

nota extra: es muy muy muy raro que no te funcione el primer metodo :S
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Pues lo mas seguro es que algo haya hecho mal yo, pero nuestro compañero nos ha dado dos opciones y una me ha salido bien, me quedo con eso