- Classe menu bàsica
This commit is contained in:
31
data/menu.lua
Normal file
31
data/menu.lua
Normal file
@@ -0,0 +1,31 @@
|
||||
menu = {
|
||||
options=nil,
|
||||
old_update=nil,
|
||||
selected=1,
|
||||
|
||||
show=function(op)
|
||||
menu.options=op
|
||||
menu.old_update=update
|
||||
update=menu.update
|
||||
menu.selected=1
|
||||
end,
|
||||
|
||||
update=function()
|
||||
menu.old_update()
|
||||
for i,v in ipairs(menu.options) do
|
||||
color(4) if menu.selected==i then color(15) prnt(">",10,20+i*10) end
|
||||
prnt(v[1],14,20+i*10)
|
||||
end
|
||||
|
||||
if btnp(KEY_DOWN) then menu.selected=menu.selected+1 end
|
||||
if btnp(KEY_UP) then menu.selected=menu.selected-1 end
|
||||
if menu.selected==0 then menu.selected=#menu.options end
|
||||
if menu.selected>#menu.options then menu.selected=1 end
|
||||
|
||||
if btnp(KEY_RETURN) then
|
||||
update=menu.old_update
|
||||
menu.options[menu.selected][2]()
|
||||
end
|
||||
|
||||
end
|
||||
}
|
||||
Reference in New Issue
Block a user