Advertisement
Dima99

Menu

Dec 29th, 2014
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.90 KB | None | 0 0
  1. x, y = term.getSize()
  2. --names and programes
  3. words = {first = {name = "first", program = "program1"},
  4. second = {name = "second", program = "program2"},
  5. third = {name = "third", program = "program3"}}
  6. --positions
  7. pos = {math.ceil(y/4), math.ceil(y/4*2), math.ceil(y/4)*3}
  8. --variables
  9. sel = 1
  10. relay = true
  11. version = "v-.-.-"
  12.  
  13. function center(text, str)
  14. term.setCursorPos(x/2 - math.floor(#text/2), str)
  15. write(text)
  16. end
  17.  
  18. function left(text, str)
  19. term.setCursorPos(1, str)
  20. write(text)
  21. end
  22.  
  23. function right(text, str)
  24. term.setCursorPos(x-#text, str)
  25. write(text)
  26. end
  27.  
  28. function line(text, str)
  29. for i = 1, x do
  30. term.setCursorPos(i, str)
  31. write(text)
  32. end
  33. end
  34.  
  35. function wline(text, str)
  36. for i = 1, y do
  37. term.setCursorPos(str, i)
  38. write(text)
  39. end
  40. end
  41.  
  42. function window()
  43. term.clear()
  44. line("=", 1)
  45. line("=", y)
  46. wline("=", 1)
  47. wline("=", x)
  48. center(words.first.name, pos[1])
  49. center(words.second.name, pos[2])
  50. center(words.third.name, pos[3])
  51. right("========", y-1)
  52. right(" "..version, y)
  53. end
  54.  
  55. function test()
  56.  if sel == 1 then
  57.   center("> "..words.first.name.." <", pos[1])
  58.   elseif sel == 2 then
  59.   center("> "..words.second.name.." <", pos[2])
  60.   elseif sel == 3 then
  61.   center("> "..words.third.name.." <", pos[3])
  62.  end
  63. end
  64.  
  65. window()
  66. test()
  67. print(a)
  68. while relay do
  69.  local event, key = os.pullEvent()
  70.  if key == keys.up and sel > 1 then sel = sel - 1
  71.   window()
  72.   test()
  73.   elseif key == keys.down and sel < 3 then sel = sel + 1
  74.   window()
  75.   test()
  76.   elseif key == keys.leftAlt then
  77.   term.clear()
  78.   relay = false
  79.   term.setCursorPos(1, 1)
  80.   elseif key == keys.enter and sel == 1 then
  81.   shell.run(words.first.program)
  82.   relay = false
  83.   elseif key == keys.enter and sel == 2 then
  84.   shell.run(words.second.program)
  85.   relay = false
  86.   elseif key == keys.enter and sel == 3 then
  87.   shell.run(words.third.program)
  88.   relay = false
  89.  end
  90. end
  91. term.clear()
  92. term.setCursorPos(1, 1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement