1
0
forked from 0ad/0ad

fix animals taken as target in move-attack after 66770feed6, use the same filter as in AttackEntitiesByPreference

This was SVN commit r14478.
This commit is contained in:
mimo 2014-01-02 14:17:46 +00:00
parent 5b2cb0e72f
commit 7d26f93666

View File

@ -5004,9 +5004,14 @@ UnitAI.prototype.GetTargetsFromUnit = function()
if (!cmpAttack)
return [];
const animalfilter = function(e) {
var cmpUnitAI = Engine.QueryInterface(e, IID_UnitAI);
return !cmpUnitAI || !cmpUnitAI.IsAnimal() || cmpUnitAI.IsDangerousAnimal();
};
var rangeMan = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
var entities = rangeMan.ResetActiveQuery(this.losRangeQuery);
var targets = entities.filter(function (v, i, a) { return cmpAttack.CanAttack(v); })
var targets = entities.filter(function (v, i, a) { return cmpAttack.CanAttack(v) && animalfilter(v); })
.sort(function (a, b) { return cmpAttack.CompareEntitiesByPreference(a, b); });
return targets;