Advertisement
Guest User

Egyszerű menü alap

a guest
Mar 27th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.69 KB | None | 0 0
  1. --[[ Comment ]]--
  2. --[[
  3. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  4. X Simple menu. / Egyszeru Menu segítő videó : http://youtu.be/AU48NSPl4rM
  5. ]]--
  6.  
  7.  
  8. --[[ Local Variables ]]--
  9. local termWidth, termHeight = term.getSize()
  10. local selectedItem = 1
  11. local runing = true
  12.  
  13.  
  14.  
  15. --[[ Menu Metods ]]--
  16. function Choice1( ... )
  17. print("Hello World")
  18. clear()
  19. read("")
  20. end
  21.  
  22. function Choice2( ... )
  23. -- second menu function
  24. end
  25.  
  26. function readme( ... )
  27. clear()
  28. print([[If U like this menu system
  29. please subscribe
  30. my YT chanel:
  31. youtube.com/c/DelfaverMatteo_Games
  32.  
  33. Ha tetszett a program kerlek
  34. iratkozz fel a csatornamra!
  35. YT: youtube.com/c/DelfaverMatteo_Games
  36.  
  37. Thank U, Koszi ;)
  38.  
  39. Press enter to continue
  40. ]])
  41. read("")
  42. end
  43.  
  44. function exit( ... ) --exit menu function
  45. runing = false
  46. end
  47.  
  48.  
  49.  
  50. --[[ Men Definitions ]]--
  51. --[[
  52. EN
  53. Menus, if U need more menu options, just continue the lines, like the basic lines.
  54. sample: [4] = { text = "Manu name here", handler = "function name here (Menu Metods)"},
  55. HUN
  56. Menuk, ha tobb menupontot szeretnel, csak folytasd a sorokat, ugy mint a tobbi sor van.
  57. pelda: [4] = { text = "Menu elnevezese", handler = "function neve (Menu Metods- resz)"},
  58. ]]
  59. local mainMenu = {
  60. [1] = { text = "Choice1", handler = Choice1},
  61. [2] = { text = "Choice2", handler = Choice2},
  62. [3] = { text = "ReadME", handler = readme},
  63. [4] = { text = "Exit", handler = exit},
  64.  
  65. }
  66. --[[
  67. EN
  68. if U change menu position, just chane the two number ( 10 and 5) like this: term.setCursorPos(1, (i+0))
  69. this position is the 1, 1. Monitor left up side.
  70. HUN
  71. Ha változtatni szeretned a menu poziciojat, csak 2 számot kell atirj ( 10 es 5) pelda: term.setCursorPos(1, (i+0))
  72. ez a pozicio a monitor bal felso sarka 1, 1
  73.  
  74. function printMenu( menu )
  75. for i=1,#menu do
  76. if i == selectedItem then
  77. term.setCursorPos(1, i)
  78. print(">> " .. menu[i].text .. " <<")
  79. else
  80. term.setCursorPos(1, i)
  81. print(" " .. menu[i].text)
  82. end
  83. end
  84. end
  85. ]]
  86. function printMenu( menu )
  87. for i=1,#menu do
  88. if i == selectedItem then
  89. term.setCursorPos(10, (i+5))
  90. print(">> " .. menu[i].text .. " <<")
  91. else
  92. term.setCursorPos(10, (i+5))
  93. print(" " .. menu[i].text)
  94. end
  95. end
  96. end
  97.  
  98.  
  99.  
  100. --[[ Handler Method ]]--
  101. function onKeyPressed( key, menu )
  102. if key == keys.enter then
  103. onItemSelected(menu)
  104. elseif key == keys.up then
  105. if selectedItem > 1 then selectedItem = selectedItem - 1 end
  106. elseif key == keys.down then
  107. if selectedItem < #menu then selectedItem = selectedItem +1 end
  108. end
  109. end
  110.  
  111. function onItemSelected( menu )
  112. menu[selectedItem].handler()
  113. end
  114.  
  115. function clear( ... )
  116. term.clear()
  117. term.setCursorPos(18,19)
  118. print("The menu is created by Matteo 2015")
  119. term.setCursorPos(1,1)
  120. end
  121.  
  122.  
  123.  
  124. --[[ Main function ]]--
  125. function main( ... )
  126. while runing do
  127. clear()
  128. term.setCursorPos(10, 4)
  129. printMenu(mainMenu)
  130. event, key = os.pullEvent("key")
  131. onKeyPressed(key, mainMenu)
  132. end
  133. end
  134.  
  135. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement