VisualScan

Perform visual scan of area

Usage: Used in 2 task(s)

Lua Implementation

-- Visual Scan
function execute(params)
    local contacts = this:getContactList()
    local visualRange = params.visual_range or 5000
    local visualContacts = {}

    for _, contact in ipairs(contacts) do
        if contact:isValid() then
            local range = spatialUtil.distance(this:getLocation3D(), contact:getLocation3D())
            if range <= visualRange and this:hasLosToObject(contact) then
                table.insert(visualContacts, contact)
            end
        end
    end

    params.visualContacts = visualContacts
    return true
end