About resource versions
These guides include the original resource names. Use the folder and SQL names supplied with your downloaded version. A renamed AWS package may differ from the original EXIT release.
qb.lua
function DependencyCheck(data)
for k, v in pairs(data) do
if GetResourceState(k):find('started') ~= nil then
return v
end
end
return false
end
local frameworks = {
['es_extended'] = 'esx',
['qb-core'] = 'qb',
['qbx_core'] = 'qb'
}
Config.Framework = DependencyCheck(frameworks) or 'none'
if Config.Framework ~= "qb" then
return
end
Citizen.CreateThreadNow(function()
if Config.Framework == "qb" then
QBCore = exports['qb-core']:GetCoreObject()
while QBCore.Functions.GetPlayerData().job == nil do
Wait(10)
end
PlayerData = QBCore.Functions.GetPlayerData()
Wait(200)
if Config.RequireJob then
if Config.LumberJackJob[PlayerData.job.name] then
CanInteract = true
else
CanInteract = false
end
else
CanInteract = true
end
end
end)
---@OnPlayerLoaded event for qb
AddEventHandler('QBCore:Client:OnPlayerLoaded', function(Player)
Player = QBCore.Functions.GetPlayerData()
if not Player then return Wait(1250) end
PlayerData = Player
PlayerJob = PlayerData.job
PlayerLoaded = true
for _, object in pairs(AllObjects) do
if object then
DeleteEntity(object)
end
end
if Peds.pedManager then
DeleteEntity(Peds.pedManager)
end
Wait(2000)
CreateObjects()
LoadBlips()
end)
---@OnJobUpdate event for qb
RegisterNetEvent('QBCore:Client:OnJobUpdate')
AddEventHandler('QBCore:Client:OnJobUpdate', function(job)
PlayerData.job = job
PlayerJob = job
for _, blip in pairs(CreatedBlips) do
RemoveBlip(blip)
end
if Config.RequireJob then
if Config.LumberJackJob[PlayerData.job.name] then
CanInteract = true
else
CanInteract = false
end
else
CanInteract = true
end
UpdateTargetOptions()
LoadedBlips = nil
LoadBlips()
end)
---@TriggerServerCallback event for qb.
function TriggerServerCallback(name, cb, ...)
QBCore.Functions.TriggerCallback(name, cb, ...)
end