From 89cb7213841a0035b3948df1f465e9723595f510 Mon Sep 17 00:00:00 2001 From: mrSkortch Date: Sun, 10 Aug 2014 02:06:45 -0600 Subject: [PATCH] added mist.getUnitsInPolygon like getUnitsInZones this function returns a table of unit objects --- mist.lua | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/mist.lua b/mist.lua index 333b6d3..12d232a 100644 --- a/mist.lua +++ b/mist.lua @@ -5,6 +5,7 @@ added mist.stringMatch added mist.groupTableCheck added mist.spawnRandomizedGroup added mist.randomizeGroupOrder +added mist.getUnitsInPolygon v27 @@ -2034,6 +2035,22 @@ function mist.pointInPolygon(point, poly, maxalt) --raycasting point in polygon. end end +mist.getUnitsInPolygon = function (unit_names, polyZone, max_alt) + local units = {} + + for i = 1, #unit_names do + units[#units + 1] = Unit.getByName(unitNames[i]) + end + + local inZoneUnits = {} + for i =1, #units do + if mist.pointInPolygon(units[i]:getPosition().p, polyZone, max_alt) then + inZoneUnits[inZoneUnits + 1] = units[i] + end + end + + return inZoneUnits +end function mist.flagFunc.units_in_polygon(vars) --[[vars needs to be: