mirror of
https://github.com/qbcore-fivem/qb-core.git
synced 2026-09-04 17:23:31 +00:00
Merge pull request #684 from ItsANoBrainer/ClientCallbacks
[Feature] Client Callbacks
This commit is contained in:
+17
-7
@@ -126,11 +126,11 @@ RegisterNetEvent('QBCore:Command:SpawnVehicle', function(vehName)
|
|||||||
while not HasModelLoaded(hash) do
|
while not HasModelLoaded(hash) do
|
||||||
Wait(0)
|
Wait(0)
|
||||||
end
|
end
|
||||||
|
|
||||||
if IsPedInAnyVehicle(ped) then
|
if IsPedInAnyVehicle(ped) then
|
||||||
DeleteVehicle(veh)
|
DeleteVehicle(veh)
|
||||||
end
|
end
|
||||||
|
|
||||||
local vehicle = CreateVehicle(hash, GetEntityCoords(ped), GetEntityHeading(ped), true, false)
|
local vehicle = CreateVehicle(hash, GetEntityCoords(ped), GetEntityHeading(ped), true, false)
|
||||||
TaskWarpPedIntoVehicle(ped, vehicle, -1)
|
TaskWarpPedIntoVehicle(ped, vehicle, -1)
|
||||||
SetVehicleFuelLevel(vehicle, 100.0)
|
SetVehicleFuelLevel(vehicle, 100.0)
|
||||||
@@ -171,6 +171,20 @@ RegisterNetEvent('QBCore:Notify', function(text, type, length)
|
|||||||
QBCore.Functions.Notify(text, type, length)
|
QBCore.Functions.Notify(text, type, length)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
RegisterNetEvent('QBCore:Client:UseItem', function(item)
|
||||||
|
TriggerServerEvent('QBCore:Server:UseItem', item)
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Callback Events --
|
||||||
|
|
||||||
|
-- Client Callback
|
||||||
|
RegisterNetEvent('QBCore:Client:TriggerClientCallback', function(name, ...)
|
||||||
|
QBCore.Functions.TriggerClientCallback(name, function(...)
|
||||||
|
TriggerServerEvent('QBCore:Server:TriggerClientCallback', name, ...)
|
||||||
|
end, ...)
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Server Callback
|
||||||
RegisterNetEvent('QBCore:Client:TriggerCallback', function(name, ...)
|
RegisterNetEvent('QBCore:Client:TriggerCallback', function(name, ...)
|
||||||
if QBCore.ServerCallbacks[name] then
|
if QBCore.ServerCallbacks[name] then
|
||||||
QBCore.ServerCallbacks[name](...)
|
QBCore.ServerCallbacks[name](...)
|
||||||
@@ -178,10 +192,6 @@ RegisterNetEvent('QBCore:Client:TriggerCallback', function(name, ...)
|
|||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
RegisterNetEvent('QBCore:Client:UseItem', function(item)
|
|
||||||
TriggerServerEvent('QBCore:Server:UseItem', item)
|
|
||||||
end)
|
|
||||||
|
|
||||||
-- Me command
|
-- Me command
|
||||||
|
|
||||||
local function Draw3DText(coords, str)
|
local function Draw3DText(coords, str)
|
||||||
|
|||||||
@@ -117,11 +117,26 @@ function QBCore.Debug(resource, obj, depth)
|
|||||||
TriggerServerEvent('QBCore:DebugSomething', resource, obj, depth)
|
TriggerServerEvent('QBCore:DebugSomething', resource, obj, depth)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Callback Functions --
|
||||||
|
|
||||||
|
-- Client Callback
|
||||||
|
function QBCore.Functions.CreateClientCallback(name, cb)
|
||||||
|
QBCore.ClientCallbacks[name] = cb
|
||||||
|
end
|
||||||
|
|
||||||
|
function QBCore.Functions.TriggerClientCallback(name, cb, ...)
|
||||||
|
if not QBCore.ClientCallbacks[name] then return end
|
||||||
|
QBCore.ClientCallbacks[name](cb, ...)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Server Callback
|
||||||
function QBCore.Functions.TriggerCallback(name, cb, ...)
|
function QBCore.Functions.TriggerCallback(name, cb, ...)
|
||||||
QBCore.ServerCallbacks[name] = cb
|
QBCore.ServerCallbacks[name] = cb
|
||||||
TriggerServerEvent('QBCore:Server:TriggerCallback', name, ...)
|
TriggerServerEvent('QBCore:Server:TriggerCallback', name, ...)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function QBCore.Functions.Progressbar(name, label, duration, useWhileDead, canCancel, disableControls, animation, prop, propTwo, onFinish, onCancel)
|
function QBCore.Functions.Progressbar(name, label, duration, useWhileDead, canCancel, disableControls, animation, prop, propTwo, onFinish, onCancel)
|
||||||
if GetResourceState('progressbar') ~= 'started' then error('progressbar needs to be started in order for QBCore.Functions.Progressbar to work') end
|
if GetResourceState('progressbar') ~= 'started' then error('progressbar needs to be started in order for QBCore.Functions.Progressbar to work') end
|
||||||
exports['progressbar']:Progress({
|
exports['progressbar']:Progress({
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ QBCore = {}
|
|||||||
QBCore.PlayerData = {}
|
QBCore.PlayerData = {}
|
||||||
QBCore.Config = QBConfig
|
QBCore.Config = QBConfig
|
||||||
QBCore.Shared = QBShared
|
QBCore.Shared = QBShared
|
||||||
|
QBCore.ClientCallbacks = {}
|
||||||
QBCore.ServerCallbacks = {}
|
QBCore.ServerCallbacks = {}
|
||||||
|
|
||||||
exports('GetCoreObject', function()
|
exports('GetCoreObject', function()
|
||||||
|
|||||||
+10
-1
@@ -103,8 +103,17 @@ RegisterNetEvent('QBCore:Server:OpenServer', function()
|
|||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Callbacks
|
-- Callback Events --
|
||||||
|
|
||||||
|
-- Client Callback
|
||||||
|
RegisterNetEvent('QBCore:Server:TriggerClientCallback', function(name, ...)
|
||||||
|
if QBCore.ClientCallbacks[name] then
|
||||||
|
QBCore.ClientCallbacks[name](...)
|
||||||
|
QBCore.ClientCallbacks[name] = nil
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Server Callback
|
||||||
RegisterNetEvent('QBCore:Server:TriggerCallback', function(name, ...)
|
RegisterNetEvent('QBCore:Server:TriggerCallback', function(name, ...)
|
||||||
local src = source
|
local src = source
|
||||||
QBCore.Functions.TriggerCallback(name, src, function(...)
|
QBCore.Functions.TriggerCallback(name, src, function(...)
|
||||||
|
|||||||
@@ -200,8 +200,15 @@ function PaycheckInterval()
|
|||||||
SetTimeout(QBCore.Config.Money.PayCheckTimeOut * (60 * 1000), PaycheckInterval)
|
SetTimeout(QBCore.Config.Money.PayCheckTimeOut * (60 * 1000), PaycheckInterval)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Callbacks
|
-- Callback Functions --
|
||||||
|
|
||||||
|
-- Client Callback
|
||||||
|
function QBCore.Functions.TriggerClientCallback(name, source, cb, ...)
|
||||||
|
QBCore.ClientCallbacks[name] = cb
|
||||||
|
TriggerClientEvent('QBCore:Client:TriggerClientCallback', source, name, ...)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Server Callback
|
||||||
function QBCore.Functions.CreateCallback(name, cb)
|
function QBCore.Functions.CreateCallback(name, cb)
|
||||||
QBCore.ServerCallbacks[name] = cb
|
QBCore.ServerCallbacks[name] = cb
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
QBCore = {}
|
QBCore = {}
|
||||||
QBCore.Config = QBConfig
|
QBCore.Config = QBConfig
|
||||||
QBCore.Shared = QBShared
|
QBCore.Shared = QBShared
|
||||||
|
QBCore.ClientCallbacks = {}
|
||||||
QBCore.ServerCallbacks = {}
|
QBCore.ServerCallbacks = {}
|
||||||
QBCore.UseableItems = {}
|
QBCore.UseableItems = {}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user