use of eidolons.game.battlecraft.ai.tools.priority.PriorityManagerImpl in project Eidolons by IDemiurge.
the class DefaultActionHandler method pickAutomatically.
//
private static DC_ActiveObj pickAutomatically(List<DC_ActiveObj> subActions, BattleFieldObject target) {
DC_ActiveObj pick = null;
int max = 0;
for (DC_ActiveObj attack : subActions) {
if (attack.getActiveWeapon().isNatural())
if (attack.getOwnerObj().getWeapon(attack.isOffhand()) != null)
continue;
if (!attack.canBeActivated(attack.getRef(), true))
continue;
if (!attack.canBeTargeted(target.getId()))
continue;
DC_PriorityManager.toggleImplementation(new PriorityManagerImpl(target.getGame().getAiManager()) {
@Override
public Unit getUnit() {
return attack.getOwnerObj();
}
});
int priority = 0;
try {
priority = DC_PriorityManager.getAttackPriority(attack, target);
} catch (Exception e) {
main.system.ExceptionMaster.printStackTrace(e);
} finally {
DC_PriorityManager.toggleImplementation(null);
}
if (priority >= max) {
pick = attack;
max = priority;
}
}
return pick;
}
Aggregations