revert(client/callbacks): revert old code

This commit is contained in:
Thekuca
2023-06-04 00:20:33 +02:00
committed by GitHub
parent d8b4de8f05
commit b32ac5aed2
+9 -34
View File
@@ -3,47 +3,22 @@ local serverRequests = {}
local clientCallbacks = {}
ESX.TriggerServerCallback = setmetatable({
---@param eventName string
---@param ... any
Await = function(eventName, ...)
assert(type(eventName) == 'string', 'Argument 1 `eventName` is not a string!')
local p = promise.new()
---@param eventName string
---@param callback function
---@param ... any
ESX.TriggerServerCallback = function(eventName, callback, ...)
serverRequests[RequestId] = callback
TriggerServerEvent('esx:triggerServerCallback', eventName, RequestId, GetInvokingResource() or "unknown", ...)
serverRequests[RequestId] = p
TriggerServerEvent('esx:triggerServerCallback', eventName, RequestId, GetInvokingResource() or "unknown", ...)
RequestId = RequestId + 1
return Citizen.Await(p)
end
}, {
---@param eventName string
---@param callback function
---@param ... any
__call = function(_, eventName, callback, ...)
assert(type(eventName) == 'string', 'Argument 1 `eventName` is not a string!')
assert(type(callback) == 'function', 'Argument 2 `callback` is not a function!')
serverRequests[RequestId] = callback
TriggerServerEvent('esx:triggerServerCallback', eventName, RequestId, GetInvokingResource() or "unknown", ...)
RequestId = RequestId + 1
end
})
RequestId = RequestId + 1
end
RegisterNetEvent('esx:serverCallback', function(requestId, invoker, ...)
if not serverRequests[requestId] then
return print(('[^1ERROR^7] Server Callback with requestId ^5%s^7 Was Called by ^5%s^7 but does not exist.'):format(requestId, invoker))
end
if type(serverRequests[requestId]) == 'table' then
serverRequests[requestId]:resolve(...)
return
end
serverRequests[requestId](...)
serverRequests[requestId] = nil
end)