Frameworks

server/custom/framework

Config.Framework = 'qb-core' -- auto/qb-core/qbox/esx/vrp/standalone
if Config.Framework ~= 'qb-core' then
    return
end

Framework = {}

local QBCore = exports['qb-core']:GetCoreObject()

function Framework.GetPlayerIdentifier(source)
   return QBCore.Functions.GetPlayer(source)?.PlayerData?.citizenid
end

function Framework.GetSourceFromIdentifier(identifier)
    return QBCore.Functions.GetPlayerByCitizenId(identifier)?.PlayerData?.source
end

function Framework.AddMoney(identifier, amount, reason)
    local source = Framework.GetSourceFromIdentifier(identifier)
    local PlayerData = QBCore.Functions.GetPlayer(source)
    PlayerData.Functions.AddMoney('bank', amount, reason)
end

function Framework.RegisterCommand(name, description, callback, group)
    QBCore.Commands.Add(name, description, {}, false, callback, group)
end

client/custom/framework

Config.Framework = 'qb-core' -- auto/qb-core/qbox/esx/vrp/standalone
if Config.Framework ~= 'qb-core' then
    return
end

Framework = {}

QBCore = exports['qb-core']:GetCoreObject()

function Framework.ProgressBar(message, time)
    QBCore.Functions.Progressbar('gang_activities_progress', message, time, false, true, {
        disableMovement = false,
        disableCarMovement = false,
        disableMouse = false,
        disableCombat = true,
    }, {}, {}, {})
    Wait(time)
end

function Framework.SetVehicleExtras(entity)
    SetVehicleFuelLevel(entity, 100.0);
    SetVehicleNumberPlateText(entity, 'LS' .. math.random(111111, 999999))
end

function Framework.setVehicleDoorsOpen(netId, entity, plate)
       TriggerServerEvent('qb-vehiclekeys:server:AcquireVehicleKeys',plate)
end

function Framework.HideInterfaceForScene()
    -- your events to hide server interfaces for cutscenes
end

function Framework.ShowInterfaceAfterScene()
    -- your events to show again server interfaces for cutscenes
end

function Framework.DrawText3D(x, y, z, text)
    QBCore.Functions.DrawText3D(x, y, z, text)
end

Last updated

Was this helpful?