Main/resources/[jobs]/[crime]/r_bridge-1.2.3/target/ox_target/client.lua
2025-07-20 22:10:36 +02:00

74 lines
1.9 KiB
Lua

if GetResourceState('ox_target') ~= 'started' then return end
local ox_target = exports.ox_target
local targetZones = {}
Core.Target = {}
function Core.Target.AddGlobalPeds(options)
ox_target:addGlobalPed(options)
end
function Core.Target.AddGlobalPlayer(options)
ox_target:addGlobalPlayer(options)
end
function Core.Target.AddLocalEntity(entities, options)
ox_target:addLocalEntity(entities, options)
end
function Core.Target.AddModel(models, options)
ox_target:addModel(models, options)
end
function Core.Target.AddBoxZone(name, coords, size, heading, options, drawPoly)
local target = ox_target:addBoxZone({
coords = coords,
size = size,
rotation = heading,
debug = drawPoly,
options = options,
})
table.insert(targetZones, { name = name, id = target, creator = GetInvokingResource() })
return target
end
function Core.Target.RemoveGlobalPeds(name)
ox_target:removeGlobalPed(name)
end
function Core.Target.RemoveGlobalPlayer(name)
ox_target:removeGlobalPlayer(name)
end
function Core.Target.RemoveLocalEntity(entity)
ox_target:removeLocalEntity(entity)
end
function Core.Target.RemoveModel(model)
ox_target:removeModel(model)
end
function Core.Target.RemoveZone(name)
for _, data in pairs(targetZones) do
if data.name == name then
ox_target:removeZone(data.id)
table.remove(targetZones, _)
break
end
end
end
AddEventHandler('onResourceStop', function(resource)
if resource ~= GetCurrentResourceName() then
local removed = 0
for _, target in pairs(targetZones) do
if target.creator == resource then
ox_target:removeZone(target.id)
table.remove(targetZones, _)
removed = removed + 1
end
end
if removed > 0 then print('[DEBUG] - removed targets for:', resource) end
end
end)