cl_utils.lua
CreateThread(function()
for k,v in pairs(Config.Drones) do
exports["ak4y-core"]:AddModelToTargeting(v.model, "Take Drone", function(entity)
if type(entity) == "table" then
local istaken = Entity(entity.entity).state.istaken
if not istaken then
EnsureControlOfEntity(entity.entity)
Entity(entity.entity).state:set('istaken', true, true)
local data = Entity(entity.entity).state.data
TriggerServerEvent('ak4y-drone:GetDrone', data)
DeleteObject(entity.entity)
else
exports["ak4y-core"]:NotifyViaFramework(Config.locales[Config.Locale].game.already_taken, "error")
end
else
local istaken = Entity(entity).state.istaken
if not istaken then
EnsureControlOfEntity(entity)
Entity(entity).state:set('istaken', true, true)
local data = Entity(entity).state.data
TriggerServerEvent('ak4y-drone:GetDrone', data)
DeleteObject(entity)
else
exports["ak4y-core"]:NotifyViaFramework(Config.locales[Config.Locale].game.already_taken, "error")
end
end
end, nil, nil, 2.5)
exports["ak4y-core"]:AddModelToTargeting(v.model, "Check Drone Abilities", function(entity)
if type(entity) == "table" then
local data = Entity(entity.entity).state.data
if data.ownerid == GetPlayerServerId(PlayerId()) then
TriggerEvent('ak4y-drone:checkabilities', data)
else
exports["ak4y-core"]:NotifyViaFramework(Config.locales[Config.Locale].game.not_our_drone, "error")
end
else
local data = Entity(entity).state.data
if data.ownerid == GetPlayerServerId(PlayerId()) then
TriggerEvent('ak4y-drone:checkabilities', data)
else
exports["ak4y-core"]:NotifyViaFramework(Config.locales[Config.Locale].game.not_our_drone, "error")
end
end
end, nil, nil, 2.5)
end
end)
CreateThread(function()
for k,v in pairs(Config.DroneShops) do
exports["ak4y-core"]:AddZoneToTargeting(
v.coords,
90.0,
vec3(0.45, 0.35, 0.45),
"Open Drone Shop",
"ak4y-drone:OpenShop",
function()
if v.job then
return IsJobValid(v.job)
else
return true
end
end,
nil,
2.5,
"fas fa-sign-in-alt"
)
end
end)
function IsJobValid(jobs)
for k,v in pairs(jobs) do
if exports["ak4y-core"]:GetPlayerJob() == v then
return true
end
end
return false
end
AddEventHandler('onResourceStop', function(resourceName)
if resourceName ~= GetCurrentResourceName() then return end
for k,v in pairs(Config.Drones) do
exports["ak4y-core"]:RemoveModelFromTargeting(v.model)
end
end)Last updated