From ebd97f08ea6e772647f7e08d37177240274c5bb6 Mon Sep 17 00:00:00 2001 From: Linden <65407488+thelindat@users.noreply.github.com> Date: Thu, 18 May 2023 21:10:20 +1000 Subject: [PATCH] feat(client/imports): getClosestPed --- imports/getClosestPed/client.lua | 28 ++++++++++++++++++++++++++++ imports/getNearbyPeds/client.lua | 4 ++-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 imports/getClosestPed/client.lua diff --git a/imports/getClosestPed/client.lua b/imports/getClosestPed/client.lua new file mode 100644 index 0000000..850f5f3 --- /dev/null +++ b/imports/getClosestPed/client.lua @@ -0,0 +1,28 @@ +---@param coords vector3 The coords to check from. +---@param maxDistance number The max distance to check. +---@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 + closestObject = ped + closestCoords = pedCoords + end + end + end + + return closestPed, closestCoords +end + +return lib.getClosestObject diff --git a/imports/getNearbyPeds/client.lua b/imports/getNearbyPeds/client.lua index c723f20..7c296f7 100644 --- a/imports/getNearbyPeds/client.lua +++ b/imports/getNearbyPeds/client.lua @@ -10,8 +10,8 @@ function lib.getNearbyPeds(coords, maxDistance) for i = 1, #peds do local ped = peds[i] - if not NetworkGetPlayerIndexFromPed(ped) then - local pedCoords = GetEntityCoords(playerPed) + if not IsPedAPlayer(ped) then + local pedCoords = GetEntityCoords(ped) local distance = #(coords - pedCoords) if distance < maxDistance then