Как определить ближайшее энтити к игроку

Как определить ближайшее энтити к игроку из определенного списка

Сравнить расстояние до игрока ( ЭНТИТИ:GetPos():DistToSqr(ИГРОК:GetPos()) )
и найти энтити с наименьшим значением

Как получить энтити и как сравнить?

local Ent = ents.GetAll()
local Tent = {Ent[1],Ent[1]:GetPos():DistToSqr(LocalPlayer():GetPos())}
for i=1,#Ent do -- быстрее чем pairs 
if Ent[i] == LocalPlayer() then continue end-- локальный игрок тоже поподает под это
local Sqr = Ent[i]:GetPos():DistToSqr(LocalPlayer():GetPos())
if Sqr == 0 then continue end-- Оружие тоже....
if Tent[2] > Sqr then Tent = {Ent[i],Sqr} end
end
PrintTable(Tent)-- смотрим что там у нас....

Как сделать так чтобы искало только определенное энтити?

local Ent = ents.GetAll()
local FindE= "" -- класс энтити что нам нужен
local Tent = {Ent[1],Ent[1]:GetPos():DistToSqr(LocalPlayer():GetPos())}
for i=1,#Ent do -- быстрее чем pairs 
if Ent[i] == LocalPlayer() then continue end-- локальный игрок тоже поподает под это
if Ent[i]:GetClass() ~= FindE then continue end -- ищем нужный Ентити
local Sqr = Ent[i]:GetPos():DistToSqr(LocalPlayer():GetPos())
if Sqr == 0 then continue end-- Оружие тоже....

if Tent[2] > Sqr then Tent = {Ent[i],Sqr} end
end
PrintTable(Tent)-- смотрим что там у нас....
1 лайк

как получить getpos от энтити и вставить его в другой скрипт?

Я не понял вопроса.
Подробнее

надо активировать скрипт и передать getpos энтити в gps