2025-03-18 18:46:09 +11:00
|
|
|
--[[
|
|
|
|
|
https://github.com/overextended/ox_lib
|
|
|
|
|
|
|
|
|
|
This file is licensed under LGPL-3.0 or higher <https://www.gnu.org/licenses/lgpl-3.0.en.html>
|
|
|
|
|
|
2025-03-29 21:44:03 +11:00
|
|
|
Copyright © 2025 Linden <https://github.com/thelindat>
|
2025-03-18 18:46:09 +11:00
|
|
|
]]
|
|
|
|
|
|
2023-05-18 21:10:20 +10:00
|
|
|
---@param coords vector3 The coords to check from.
|
2024-03-19 08:01:52 +01:00
|
|
|
---@param maxDistance? number The max distance to check.
|
2023-05-18 21:10:20 +10:00
|
|
|
---@return number? ped
|
|
|
|
|
---@return vector3? pedCoords
|
|
|
|
|
function lib.getClosestPed(coords, maxDistance)
|
|
|
|
|
local peds = GetGamePool('CPed')
|
|
|
|
|
local closestPed, closestCoords
|
|
|
|
|
maxDistance = maxDistance or 2.0
|
|
|
|
|
|
|
|
|
|
for i = 1, #peds do
|
|
|
|
|
local ped = peds[i]
|
|
|
|
|
|
|
|
|
|
if not IsPedAPlayer(ped) then
|
|
|
|
|
local pedCoords = GetEntityCoords(ped)
|
|
|
|
|
local distance = #(coords - pedCoords)
|
|
|
|
|
|
|
|
|
|
if distance < maxDistance then
|
|
|
|
|
maxDistance = distance
|
2023-06-12 19:51:20 +01:00
|
|
|
closestPed = ped
|
2023-05-18 21:10:20 +10:00
|
|
|
closestCoords = pedCoords
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
return closestPed, closestCoords
|
|
|
|
|
end
|
|
|
|
|
|
2023-05-18 13:35:06 +02:00
|
|
|
return lib.getClosestPed
|