mirror of
https://github.com/qbcore-fivem/qb-core.git
synced 2026-08-28 17:01:16 +00:00
Merge branch 'main' into feature/getname
This commit is contained in:
+11
-3
@@ -32,7 +32,7 @@ local databaseConnected, bansTableExists = readyFunction == nil, readyFunction =
|
||||
if readyFunction ~= nil then
|
||||
MySQL.ready(function()
|
||||
databaseConnected = true
|
||||
|
||||
|
||||
local DatabaseInfo = QBCore.Functions.GetDatabaseInfo()
|
||||
if not DatabaseInfo or not DatabaseInfo.exists then return end
|
||||
|
||||
@@ -125,15 +125,23 @@ end)
|
||||
-- Client Callback
|
||||
RegisterNetEvent('QBCore:Server:TriggerClientCallback', function(name, ...)
|
||||
if QBCore.ClientCallbacks[name] then
|
||||
QBCore.ClientCallbacks[name](...)
|
||||
QBCore.ClientCallbacks[name].promise:resolve(...)
|
||||
|
||||
if QBCore.ClientCallbacks[name].callback then
|
||||
QBCore.ClientCallbacks[name].callback(...)
|
||||
end
|
||||
|
||||
QBCore.ClientCallbacks[name] = nil
|
||||
end
|
||||
end)
|
||||
|
||||
-- Server Callback
|
||||
RegisterNetEvent('QBCore:Server:TriggerCallback', function(name, ...)
|
||||
if not QBCore.ServerCallbacks[name] then return end
|
||||
|
||||
local src = source
|
||||
QBCore.Functions.TriggerCallback(name, src, function(...)
|
||||
|
||||
QBCore.ServerCallbacks[name](src, function(...)
|
||||
TriggerClientEvent('QBCore:Client:TriggerCallback', src, name, ...)
|
||||
end, ...)
|
||||
end)
|
||||
|
||||
+21
-14
@@ -434,9 +434,26 @@ end
|
||||
---@param source any
|
||||
---@param cb function
|
||||
---@param ... any
|
||||
function QBCore.Functions.TriggerClientCallback(name, source, cb, ...)
|
||||
QBCore.ClientCallbacks[name] = cb
|
||||
TriggerClientEvent('QBCore:Client:TriggerClientCallback', source, name, ...)
|
||||
function QBCore.Functions.TriggerClientCallback(name, source, ...)
|
||||
local cb = nil
|
||||
local args = { ... }
|
||||
|
||||
if QBCore.Shared.IsFunction(args[1]) then
|
||||
cb = args[1]
|
||||
table.remove(args, 1)
|
||||
end
|
||||
|
||||
QBCore.ClientCallbacks[name] = {
|
||||
callback = cb,
|
||||
promise = promise.new()
|
||||
}
|
||||
|
||||
TriggerClientEvent('QBCore:Client:TriggerClientCallback', source, name, table.unpack(args))
|
||||
|
||||
if cb == nil then
|
||||
Citizen.Await(QBCore.ClientCallbacks[name].promise)
|
||||
return QBCore.ClientCallbacks[name].promise.value
|
||||
end
|
||||
end
|
||||
|
||||
---Create Server Callback
|
||||
@@ -446,16 +463,6 @@ function QBCore.Functions.CreateCallback(name, cb)
|
||||
QBCore.ServerCallbacks[name] = cb
|
||||
end
|
||||
|
||||
---Trigger Serv er Callback
|
||||
---@param name string
|
||||
---@param source any
|
||||
---@param cb function
|
||||
---@param ... any
|
||||
function QBCore.Functions.TriggerCallback(name, source, cb, ...)
|
||||
if not QBCore.ServerCallbacks[name] then return end
|
||||
QBCore.ServerCallbacks[name](source, cb, ...)
|
||||
end
|
||||
|
||||
-- Items
|
||||
|
||||
---Create a usable item
|
||||
@@ -475,7 +482,7 @@ function QBCore.Functions.CreateUseableItem(item, data)
|
||||
elseif type(data) == "function" then
|
||||
rawFunc = data
|
||||
end
|
||||
|
||||
|
||||
if rawFunc then
|
||||
QBCore.UsableItems[item] = {
|
||||
func = rawFunc,
|
||||
|
||||
Reference in New Issue
Block a user