hola tengo un problemilla seguramente tonto, pero me tiene un poquito loco.
Estoy haciendo un juego de estrategia tipo warcraft o age of empires de momento va todo sobre ruedas, el problema viene cuando selecciono un objeto "Pe?n/constructor" y hago que intente construir un edificio bien asta aqui la cosa funciona bien construye un edificio, e incluso 2 pero a partir del tercero no lo construye, el problema se donde esta pero no consigo arreglarlo.
Citar//event animationend del objeto Pe?n
if construir=1 {edi_base_obj.building2+=1; tiempo+=1}
eso hace que sume +1 al "building2" cada vez que pega un martillazo al objeto "edi_base_obj" pero se los suma a todos los objetos edi_base_obj.
la pregunta es como vosotros lo har?as para solucionarlo? para que solo haga efecto en el ultimo objeto que haga construido ese dicho objeto"peon"
y no en todos.
os pongo el juego para que lo ve?is ustedes mismos.
espero vuestra ayuda gracias
Asigna la id de la instancia sobre la que el Pe?n esta trabajando a una variable, y usala en lugar de edi_base_obj.
[gml]//event animationend del objeto Pe?n
if construir=1 {ID_contruyendo.building2+=1; tiempo+=1}[/gml]
lo siento pero no entiendo muy bien como asignar la id, por favor explicamelo un poco mejor.
gracias
osea, en el momento que selecciones una accion de construir al peon cargas la id en una variable local al obj_peon.ID_contruyendo
que tenga la id del edificio, la instancia
despues con el codigo de killer podes hacer lo que vos planteas...
PD: no descargue el editable, record? adaptarlo a tus nesecidades.
pero como se la id si todavia no sea creado?
Cuando se crea una instancia a traves de c?digo este retorna la id de la instancia creada, solo asigna dicha id a la variable:
[gml]ID_construyendo = instance_create(mouse_x,mouse_y,edi_base_obj);[/gml]
YEAA.. gracias ya lo entendi y lo e solucionado
muchas gracias.