Septiembre 25, 2013, 08:55:35 PM Ultima modificación: Septiembre 25, 2013, 09:31:57 PM por DarkKRuleR
Heyyss! Qué manera hay de hacer un instance_nearest sólo de objetos cuya variable valga cierto valor? algo así como hacer instance_nearest de todos los objetos posibles, guardarlos en un array e ir chequeando..

la cuestión es que programo una IA, donde puede haber varios enemigos, y tiene que localizar al enemigo "más débil", con menos defensas, para hacerle focus y atacarle, es obvio, a menos que tengas a un enemigo mediodébil en tus narices y te esté violando, en ese caso mejor le atacas a él que sino mientras caminas hacia el otro ya te han destruido entre los dos. La cuestión, todos los enemigos son el mismo objeto, debería guardarme la ID de todos ellos e ir chequeando, pero no sé cómo...

por ahora sólo tengo implementado 1vs1 y funciona, pero no funcionaría en un 2vs2, ni sabría cómo hacerlo.

Podrías usar un with con un if, no es muy intensivo si no son muchos objetos (más de 50)




#2 Septiembre 25, 2013, 09:31:44 PM Ultima modificación: Septiembre 25, 2013, 09:38:41 PM por DarkKRuleR
... increíblemente obvio, no sé cómo no me di cuenta. Un if de todos los objetos, en cada uno de ellos checo una variable indicando que sea enemigo (o aliado si va a realizar una habilidad de apoyo), los voy agregando a un array para él, y luego checo del array cuál hacer objetivo, por ejemplo el que sea más débil defensivamente..

aunque ahora que lo pienso, podría ser mejor guardarme las IDs de los demas jugadores en cada jugador al crearlo. Así me ahorro los with y los ifs, y paso directamente a buscar al objetivo,  teniendo ya delante la lista de id's de todos. Me ahorro mucho tiempo de procesado =D

Gracias =)

Citar... increíblemente obvio, no sé cómo no me di cuenta. Un if de todos los objetos, en cada uno de ellos checo una variable indicando que sea enemigo (o aliado si va a realizar una habilidad de apoyo), los voy agregando a un array para él, y luego checo del array cuál hacer objetivo, por ejemplo el que sea más débil defensivamente..

Gracias =)
Claro, aclaro por las dudas que no sería un with de TODOS los objetos, sino del objeto en cuestión, digo por si las dudas, tu mensaje fue un poco ambigüo xD




Xacto, un with de todos los objetos enemigo, me expresé muy ambiguamente ^^