diff --git a/shared/functions.lua b/shared/functions.lua new file mode 100644 index 0000000..76a3910 --- /dev/null +++ b/shared/functions.lua @@ -0,0 +1,28 @@ +local startedResources = {} +local callbacks = {} + +AddEventHandler("onResourceStart", function(resourceName) + startedResources[resourceName] = true + local callback = callbacks[resourceName] + if not callback then return end + callback(true) +end) + +AddEventHandler("onResourceStop", function(resourceName) + startedResources[resourceName] = nil + local callback = callbacks[resourceName] + if not callback then return end + callback(false) +end) + +function NDCore.isResourceStarted(resourceName, cb) + local started = GetResourceState(resourceName) == "started" + startedResources[resourceName] = started + + if cb then + callbacks[resourceName] = cb + cb(started) + end + + return started +end