add Coroutine manager
This commit is contained in:
1 parent
9d8fe6a5aa
commit
4eb48c24d2
1 file changed
+17
+17
@@ -1228,3 +1228,20 @@ function EID:setModIndicatorIcon(iconMarkup, override)
|
|||||||
if EID.ModIndicator[EID._currentMod].Icon ~= nil and override == false then return end
|
if EID.ModIndicator[EID._currentMod].Icon ~= nil and override == false then return end
|
||||||
EID.ModIndicator[EID._currentMod].Icon = iconMarkup
|
EID.ModIndicator[EID._currentMod].Icon = iconMarkup
|
||||||
end
|
end
|
||||||
|
|
||||||
|
EID.Coroutines = {}
|
||||||
|
-- Add a coroutine to be ran 60 times a second
|
||||||
|
function EID:addCoroutine(name, func, overwrite)
|
||||||
|
if overwrite or EID.Coroutines[name] == nil then EID.Coroutines[name] = coroutine.create(func) end
|
||||||
|
end
|
||||||
|
|
||||||
|
function EID:removeCoroutine(name)
|
||||||
|
EID.Coroutines[name] = nil
|
||||||
|
end
|
||||||
|
|
||||||
|
-- ran 60 times a second in main game render
|
||||||
|
function EID:resumeCoroutines()
|
||||||
|
for k,v in pairs(EID.Coroutines) do
|
||||||
|
if coroutine.resume(v) == false then EID:removeCoroutine(k) end
|
||||||
|
end
|
||||||
|
end
|
||||||
Reference in new issue
Block a user