first commit

This commit is contained in:
Colin-Joel Scupin
2026-08-05 01:29:39 +02:00
commit 86d4bcdc37
85 changed files with 7706 additions and 0 deletions
@@ -0,0 +1,41 @@
local pendingCallbacks = {}
local callbackCounter = 0
local resourceName = GetCurrentResourceName()
local responseEvent = ('devx_core:client:callback:%s'):format(resourceName)
function DevXTriggerCallback(name, payload, callback)
assert(type(name) == 'string' and name:match('^[%w_%-]+:[%w_%-]+$'),
'Callbackname ist ungültig.')
assert(type(callback) == 'function', 'Clientcallback muss eine Funktion sein.')
callbackCounter = callbackCounter + 1
local requestId = ('%s:%s:%s'):format(resourceName, GetGameTimer(), callbackCounter)
pendingCallbacks[requestId] = callback
TriggerServerEvent(
('devx_core:server:callback:%s:%s'):format(resourceName, name),
requestId,
payload or {}
)
SetTimeout(22000, function()
local pending = pendingCallbacks[requestId]
if not pending then return end
pendingCallbacks[requestId] = nil
pending({
ok = false,
error = ('Keine Antwort auf %s. Prüfe die txAdmin- und F8-Konsole.'):format(name)
})
end)
end
RegisterNetEvent(responseEvent)
AddEventHandler(responseEvent, function(requestId, result)
local callback = pendingCallbacks[requestId]
if not callback then return end
pendingCallbacks[requestId] = nil
callback(result or { ok = false, error = 'Leere Serverantwort.' })
end)