Mercurial > wow > askmrrobot
view wait.lua @ 40:a489324103e5
Added tag v12 for changeset 561cf98ced21
author | yellowfive |
---|---|
date | Wed, 22 Oct 2014 00:28:44 -0700 |
parents | ece9167c0d1c |
children |
line wrap: on
line source
local _, AskMrRobot = ... local waitTable = {}; local waitFrame = nil; function AskMrRobot.wait(delay, func, ...) if(type(delay)~="number" or type(func)~="function") then print(AMR_WAIT_BAD_ARGUMENTS); return false; end if(waitFrame == nil) then waitFrame = CreateFrame("Frame","WaitFrame", UIParent); waitFrame:SetScript("OnUpdate",function (self,elapse) local count = #waitTable; local i = 1; while(i<=count) do local waitRecord = tremove(waitTable,i); local d = tremove(waitRecord,1); local f = tremove(waitRecord,1); local p = tremove(waitRecord,1); if(d>elapse) then tinsert(waitTable,i,{d-elapse,f,p}); i = i + 1; else count = count - 1; f(unpack(p)); end end end); end tinsert(waitTable,{delay,func,{...}}); return true; end