51 lines
1.2 KiB
Lua
51 lines
1.2 KiB
Lua
makeclass('ug')
|
|
|
|
function ug.the()
|
|
return tangible.scan('globals',0,0,0,true)[1]
|
|
end
|
|
|
|
lis=tangible.scan('globals',0,0,0,true)
|
|
if #lis==0 then
|
|
local ugid=tangible.build{class='ug',x=0,y=0,z=0,plane='globals',graphic='box'}
|
|
print("The global table is "..tangible.id(ugid))
|
|
end
|
|
|
|
function ug.set(var,val)
|
|
ug.the()[var]=val
|
|
end
|
|
|
|
function ug.get(var)
|
|
return ug.the()[var]
|
|
end
|
|
|
|
function login.cb_uglytimedaemon()
|
|
if not ug.get('time') then ug.set('time',0) end
|
|
while true do
|
|
wait(1)
|
|
ug.set('time',ug.get('time')+1)
|
|
end
|
|
end
|
|
|
|
function time() return ug.get('time') end
|
|
|
|
function isa(k1,k2)
|
|
if k1==k2 then return true end
|
|
if k1==nil then return false end
|
|
local mt=getmetatable(k1)
|
|
if not mt then return false end
|
|
return isa(mt.__index,k2)
|
|
end
|
|
|
|
function tabcat(t1,t2)
|
|
for i=1,#t2 do t1[#t1+1]=t2[i] end
|
|
end
|
|
|
|
-- Example: multistart(function(t) return tangible.id(t)%3==0 end,function() print("Tangible "..tangible.id(tangible.place()).." here") end)
|
|
function multistart(filter,closure)
|
|
local lis=tangible.scan('nowhere',0,0,100,false)
|
|
tabcat(lis,tangible.scan('main',0,0,100,true))
|
|
for _,t in ipairs(lis) do if filter(t) then tangible.start(t,closure) end end
|
|
end
|
|
|
|
|
|
|