Files
ox_lib/imports/streamingRequest/client.lua
Linden fb5bd87dc2 refactor(streaming): bump default timeout
There's no point trying to argue with people who rely on
faulty behaviour and race conditions.
2024-04-18 01:28:11 +10:00

25 lines
751 B
Lua

---@async
---@package
---@generic T : string | number
---@param request function
---@param hasLoaded function
---@param assetType string
---@param asset T
---@param timeout? number
---@param ... any
---Used internally.
function lib.streamingRequest(request, hasLoaded, assetType, asset, timeout, ...)
if hasLoaded(asset) then return asset end
request(asset, ...)
-- i hate fivem developers
lib.print.verbose(("Loading %s '%s' - remember to release it when done."):format(assetType, asset))
return lib.waitFor(function()
if hasLoaded(asset) then return asset end
end, ("failed to load %s '%s' - this is likely caused by unreleased assets"):format(assetType, asset), timeout or 10000)
end
return lib.streamingRequest