Advertisement
Guest User

Untitled

a guest
May 23rd, 2014
23
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.89 KB | None | 0 0
  1. local termWidth, termHeight = term.getSize()
  2. local selectedItem = 1
  3. local selectedItemRC = 1
  4. local onMainMenu = true
  5. local onRContMenu = false
  6. local onPowerMenu = false
  7. reactor = peripheral.wrap("back")
  8.  
  9.  
  10. function Choice1()
  11.  term.clear()
  12.  term.setCursorPos(1,1)
  13.  RCmenuMain()
  14. end
  15.  
  16. function Choice2()
  17. term.clear()
  18. term.setCursorPos(1,1)
  19. print("Environment")
  20. sleep(1)
  21. end
  22.  
  23. function Exit()
  24.  
  25. end
  26.  
  27. mainMenu = {
  28. [1] = { text = "Reactor", handler = RCmenuMain },
  29. [2] = { text = "Environment", handler = Choice2 },
  30. [3] = { text = "Exit", handler = Exit }
  31. }
  32.  
  33. function printMenu( menu )
  34.  for i=1,#menu do
  35.   if i == selectedItem then
  36.    print(">> "..menu[i].text)
  37.   else
  38.    print("   "..menu[i].text)
  39.   end
  40.  end
  41. end
  42.  
  43. function onKeyPressed( key, menu )
  44.  if key == keys.enter then
  45.   onItemSelected(menu)
  46.  elseif key == keys.up then
  47.   if selectedItem > 1 then
  48.    selectedItem = selectedItem - 1
  49.   end
  50.  elseif key == keys.down then
  51.   if selectedItem < #menu then
  52.    selectedItem = selectedItem + 1
  53.   end
  54.  end
  55. end
  56.  
  57. function onItemSelected( menu )
  58.  menu[selectedItem].handler()
  59. end
  60.  
  61. function main()
  62.  while onMainMenu == true do
  63.   term.clear()
  64.   term.setCursorPos(1,1)
  65.   printMenu(mainMenu)
  66.   event, key = os.pullEvent("key")
  67.   onKeyPressed(key,mainMenu)
  68.  end
  69. end
  70.  
  71. main()
  72.  
  73. -- Reactor Menu --
  74.  
  75. function rCont1()
  76.  term.clear()
  77.  term.setCursorPos(1,1)
  78.  print("Tempetature")
  79.  sleep(1)
  80. end
  81.  
  82. function rCont2()
  83. term.clear()
  84. term.setCursorPos(1,1)
  85. print("Output Level")
  86. sleep(1)
  87. end
  88.  
  89. function rCont3()
  90.  term.clear()
  91.  term.setCursorPos(1,1)
  92.  print("Fuel")
  93.  sleep(1)
  94. end
  95.  
  96. function rCont4()
  97. term.clear()
  98. term.setCursorPos(1,1)
  99. print("Shutting System Down")
  100. rs.setOutput("left", false)
  101. sleep(1)
  102. end
  103.  
  104. function rCont5()
  105.  term.clear()
  106.  term.setCursorPos(1,1)
  107.  print("Power Control")
  108.  onRContMenu = false
  109.  onMainMenu = false
  110.  onPowerMenu = true
  111.  sleep(1)
  112. end
  113.  
  114. function rCont6()
  115. term.clear()
  116. term.setCursorPos(1,1)
  117. print("-Back-")
  118. sleep(1)
  119. onPowerMenu = false
  120. onRContMenu = false
  121. onMainMenu = true
  122. end
  123.  
  124.  
  125. -- Heat functions --
  126.  
  127. function heatLevel()
  128. term.setCursorPos(1,1)
  129. reactor.isActive()
  130.         if reactor.isActive() == true then
  131.         print("Reactor Is Currently: Online")
  132.         else
  133.         print("Reactor Is Currently: Offline")
  134.         end
  135. reactor.getHeat()
  136. reactor.getMaxHeat()
  137. danger = reactor.getMaxHeat
  138.         if reactor.getHeat >= (.75 * danger) then
  139.         print("!~~!WARNING! HEAT LEVEL CRITICAL!~~!")
  140.         else
  141.         print("Within Normal Operating Temp")
  142.         end
  143. print("Current Temp")
  144. print("  ")
  145. print(reactor.getHeat)
  146. print("  ")
  147. print("Max Temp")
  148. print("  ")
  149. print(reactor.getMaxHeat)
  150. end
  151.  
  152.  
  153. RCmenu = {
  154. [1] = { text = "Tempetature", handler = rCont1 },
  155. [2] = { text = "Output Level", handler = rCont2 },
  156. [3] = { text = "Fuel", handler = rCont3 },
  157. [4] = { text = "Emergency Shutdown", handler = rCont4 },
  158. [5] = { text = "Power Control", handler = rCont5 },
  159. [6] = { text = "-Back-", handler = rCont6 },
  160. [7] = { text = "Exit", handler = Exit }
  161. }
  162.  
  163. function printMenuRC( RCmenu )
  164.  for b=1,#RCmenu do
  165.   if b == selectedItemRC then
  166.    print(">> "..RCmenu[b].text)
  167.   else
  168.    print("   "..RCmenu[b].text)
  169.   end
  170.  end
  171. end
  172.  
  173. function onKeyPressedRC( key, RCmenu )
  174.  if key == keysRC.enter then
  175.   onItemSelectedRC(RCmenu)
  176.  elseif key == keysRC.up then
  177.   if selectedItemRC > 1 then
  178.    selectedItemRC = selectedItemRC - 1
  179.   end
  180.  elseif key == keysRC.down then
  181.   if selectedItemRC < #RCmenu then
  182.    selectedItemRC = selectedItemRC + 1
  183.   end
  184.  end
  185. end
  186.  
  187. function onItemSelectedRC( RCmenu )
  188.  RCmenu[selectedItemRC].handler()
  189. end
  190.  
  191. function RCmenuMain()
  192. b=1
  193. i=2
  194.  onMainMenu = false
  195.  onRContMenu = true
  196.  while onRContMenu == true do
  197.   term.clear()
  198.   term.setCursorPos(1,1)
  199.   printMenuRC( RCmenu )
  200.   eventRC, key = os.pullEvent("key")
  201.   onKeyPressedRC(key,RCmenu)
  202.  end
  203. end
  204.  
  205. RCmenuMain()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement