Files
Techmino/class.lua
2020-02-04 19:35:33 +08:00

47 lines
748 B
Lua

Task={}
local rem=table.remove
metatable_task={__index=Task}
function newTask(code,P,data)
local id=#Task+1
local obj={
code=code,
P=P,
data=data,
id=id,
}
setmetatable(obj,metatable_task)
Task[id]=obj
end
function clearTask(opt)
if opt=="all"then
local i=#Task
while i>0 do
Task[i]=nil
i=i-1
end
elseif opt=="play"then
for i=#Task,1,-1 do
if Task[i].P then
rem(Task,i)
end
end
else--Player table
for i=#Task,1,-1 do
if Task[i].P==opt then
rem(Task,i)
end
end
end
end
function Task:update()
if(not self.P or self.P and scene=="play")and self:code(self.P,self.data)then
local e=#Task
for i=1,e do
if Task[i]==self then
Task[e],Task[i]=nil,Task[e]
return
end
end
end
end