58 lines
1.5 KiB
Lua
58 lines
1.5 KiB
Lua
|
-- luacheck: globals T r disp millis lcg_rnd
|
||
|
local M, module = {}, ...
|
||
|
_G[module] = M
|
||
|
|
||
|
function M.run()
|
||
|
-- make this a volatile module:
|
||
|
package.loaded[module] = nil
|
||
|
|
||
|
print("Running component cross...")
|
||
|
|
||
|
local mx, my
|
||
|
disp:setColor(0, 250, 0, 0)
|
||
|
disp:setColor(1, 255, 255, 30)
|
||
|
disp:setColor(2, 220, 235, 10)
|
||
|
disp:setColor(3, 205, 0, 30)
|
||
|
disp:drawGradientBox(0, 0, disp:getWidth(), disp:getHeight())
|
||
|
mx = disp:getWidth() / 2
|
||
|
my = disp:getHeight() / 2
|
||
|
|
||
|
disp:setColor(0, 255, 255, 255)
|
||
|
disp:setPrintPos(2,18)
|
||
|
disp:print("Cross")
|
||
|
|
||
|
disp:setColor(0, 0, 0x66, 0xcc)
|
||
|
disp:setPrintPos(mx+15, my-5)
|
||
|
disp:print("dir0")
|
||
|
disp:setPrintPos(mx+5, my+26)
|
||
|
disp:print("dir1")
|
||
|
disp:setPrintPos(mx-40, my+20)
|
||
|
disp:print("dir2")
|
||
|
disp:setPrintPos(mx+5,my-25)
|
||
|
disp:print("dir3")
|
||
|
|
||
|
disp:setColor(0, 0, 0x66, 0xff)
|
||
|
disp:setColor(1, 0, 0x66, 0xcc)
|
||
|
disp:setColor(2, 0, 0, 0x99)
|
||
|
|
||
|
disp:draw90Line(mx+2, my-1, 20, 0, 0)
|
||
|
disp:draw90Line(mx+2, my, 20, 0, 1)
|
||
|
disp:draw90Line(mx+2, my+1, 20, 0, 2)
|
||
|
|
||
|
disp:draw90Line(mx+1, my+2, 20, 1, 0)
|
||
|
disp:draw90Line(mx, my+2, 20, 1, 1)
|
||
|
disp:draw90Line(mx-1, my+2, 20, 1, 2)
|
||
|
|
||
|
disp:draw90Line(mx-2, my+1, 20, 2, 0)
|
||
|
disp:draw90Line(mx-2, my, 20, 2, 1)
|
||
|
disp:draw90Line(mx-2, my-1, 20, 2, 2)
|
||
|
|
||
|
disp:draw90Line(mx-1, my-2, 20, 3, 0)
|
||
|
disp:draw90Line(mx, my-2, 20, 3, 1)
|
||
|
disp:draw90Line(mx+1, my-2, 20, 3, 2)
|
||
|
|
||
|
print("...done")
|
||
|
end
|
||
|
|
||
|
return M
|