Advertisement
Theshadow989

[xOS] Details

Jan 9th, 2016
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 8.48 KB | None | 0 0
  1. --[[
  2. Main Menu File
  3. Written by TheShadow989
  4. ]]--
  5.  
  6. os.pullEvent = os.pullEventRaw
  7.  
  8. local verNumber = "Alpha 1.24"
  9. local nOption = 1
  10.  
  11. rRead = fs.open("xos/.usertable", "r")
  12. users = textutils.unserialize(rRead.readAll())
  13. rRead.close()
  14. cu = tonumber(users[1])
  15. cs = tonumber(users[cu+1])
  16. cp = tonumber(users[cu+2])
  17.  
  18. local w,h = term.getSize()
  19.  
  20. local function drawMenu()
  21.         term.clear()
  22.         term.setCursorPos(1,1)
  23.         term.write("Logged in as: ")
  24.         term.setTextColor( colors.red )
  25.         term.write(""..users[cu].."")
  26.         term.setTextColor( colors.white )
  27.         term.setCursorPos(1,19)
  28.         term.write("xOS "..verNumber.." by TheShadow989")
  29.        
  30.         if nOption == 1 then
  31.             term.setCursorPos(30,4)
  32.             term.write("Command ")
  33.             term.setCursorPos(19,6)
  34.             term.write("The Command Tab is use to edit")
  35.             term.setCursorPos(19,7)
  36.             term.write("and create programs this feature")
  37.             term.setCursorPos(19,8)
  38.             term.write("is only available to Admins.")
  39.             term.setCursorPos(19,9)
  40.             term.write("Every computer is equipped with")
  41.             term.setCursorPos(19,10)
  42.             term.write("an administrator user who can")
  43.             term.setCursorPos(19,11)
  44.             term.write("make such changes.")
  45.             term.setCursorPos(19,12)
  46.             term.write("*If at any point you would like")
  47.             term.setCursorPos(19,13)
  48.             term.write("to change admin ownership you ")
  49.             term.setCursorPos(19,14)
  50.             term.write("can do so in the 'AdminTol'")
  51.             term.setCursorPos(19,15)
  52.             term.write("tab in the mainmenu.")
  53.             term.setCursorPos(19,16)
  54.             term.write("*Coming soon.")
  55.            
  56.         elseif nOption == 2 then
  57.             term.setCursorPos(30,4)
  58.             term.write("Programs")
  59.             term.setCursorPos(19,6)
  60.             term.write("This is where your programs")
  61.             term.setCursorPos(19,7)
  62.             term.write("will reside and be accessible to")
  63.             term.setCursorPos(19,8)
  64.             term.write("users. Each program is configured")
  65.             term.setCursorPos(19,9)
  66.             term.write("separately to give users")
  67.             term.setCursorPos(19,10)
  68.             term.write("that have a high enough")
  69.             term.setCursorPos(19,11)
  70.             term.write("security clearance to")
  71.             term.setCursorPos(19,12)
  72.             term.write("access them.")
  73.             term.setCursorPos(19,13)
  74.             term.write("")
  75.             term.setCursorPos(19,14)
  76.             term.write("")
  77.             term.setCursorPos(19,15)
  78.             term.write("")
  79.             term.setCursorPos(19,16)
  80.             term.write("")
  81.  
  82.         elseif nOption == 3 then
  83.             term.setCursorPos(30,4)
  84.             term.write("Accounts")
  85.             term.setCursorPos(19,6)
  86.             term.write("This tab is used to create user")
  87.             term.setCursorPos(19,7)
  88.             term.write("accounts which can access this")
  89.             term.setCursorPos(19,8)
  90.             term.write("system. To create a new user")
  91.             term.setCursorPos(19,9)
  92.             term.write("select any 'Empty' tab.")
  93.             term.setCursorPos(19,10)
  94.             term.write("You can also delete other users")
  95.             term.setCursorPos(19,11)
  96.             term.write("from the system by going to")
  97.             term.setCursorPos(19,12)
  98.             term.write("the remove tab and selecting")
  99.             term.setCursorPos(19,13)
  100.             term.write("a user to remove providing the ")
  101.             term.setCursorPos(19,14)
  102.             term.write("he or she has a *higher security")
  103.             term.setCursorPos(19,15)
  104.             term.write("clearance.")
  105.             term.setCursorPos(19,16)
  106.             term.write("*not yet implemented")
  107.  
  108.         elseif nOption == 4 then
  109.             term.setCursorPos(30,4)
  110.             term.write("Unknown")
  111.             term.setCursorPos(19,6)
  112.             term.write("HELLO")
  113.             term.setCursorPos(19,7)
  114.             term.write("")
  115.             term.setCursorPos(19,8)
  116.             term.write("")
  117.             term.setCursorPos(19,9)
  118.             term.write("")
  119.             term.setCursorPos(19,10)
  120.             term.write("")
  121.             term.setCursorPos(19,11)
  122.             term.write("")
  123.             term.setCursorPos(19,12)
  124.             term.write("")
  125.             term.setCursorPos(19,13)
  126.             term.write("")
  127.             term.setCursorPos(19,14)
  128.             term.write("")
  129.             term.setCursorPos(19,15)
  130.             term.write("")
  131.             term.setCursorPos(19,16)
  132.             term.write("")
  133.  
  134.         elseif nOption == 5 then
  135.             term.setCursorPos(30,4)
  136.             term.write("Shutdown")
  137.             term.setCursorPos(19,6)
  138.             term.write("HELLO")
  139.             term.setCursorPos(19,7)
  140.             term.write("")
  141.             term.setCursorPos(19,8)
  142.             term.write("")
  143.             term.setCursorPos(19,9)
  144.             term.write("")
  145.             term.setCursorPos(19,10)
  146.             term.write("")
  147.             term.setCursorPos(19,11)
  148.             term.write("")
  149.             term.setCursorPos(19,12)
  150.             term.write("")
  151.             term.setCursorPos(19,13)
  152.             term.write("")
  153.             term.setCursorPos(19,14)
  154.             term.write("")
  155.             term.setCursorPos(19,15)
  156.             term.write("")
  157.             term.setCursorPos(19,16)
  158.             term.write("")
  159.  
  160.         elseif nOption == 6 then
  161.             term.setCursorPos(30,4)
  162.             term.write("Shutdown")
  163.             term.setCursorPos(19,6)
  164.             term.write("HELLO")
  165.             term.setCursorPos(19,7)
  166.             term.write("")
  167.             term.setCursorPos(19,8)
  168.             term.write("")
  169.             term.setCursorPos(19,9)
  170.             term.write("")
  171.             term.setCursorPos(19,10)
  172.             term.write("")
  173.             term.setCursorPos(19,11)
  174.             term.write("")
  175.             term.setCursorPos(19,12)
  176.             term.write("")
  177.             term.setCursorPos(19,13)
  178.             term.write("")
  179.             term.setCursorPos(19,14)
  180.             term.write("")
  181.             term.setCursorPos(19,15)
  182.             term.write("")
  183.             term.setCursorPos(19,16)
  184.             term.write("")
  185.  
  186.         elseif nOption == 7 then
  187.             term.setCursorPos(30,4)
  188.             term.write("Shutdown")
  189.             term.setCursorPos(19,6)
  190.             term.write("HELLO")
  191.             term.setCursorPos(19,7)
  192.             term.write("")
  193.             term.setCursorPos(19,8)
  194.             term.write("")
  195.             term.setCursorPos(19,9)
  196.             term.write("")
  197.             term.setCursorPos(19,10)
  198.             term.write("")
  199.             term.setCursorPos(19,11)
  200.             term.write("")
  201.             term.setCursorPos(19,12)
  202.             term.write("")
  203.             term.setCursorPos(19,13)
  204.             term.write("")
  205.             term.setCursorPos(19,14)
  206.             term.write("")
  207.             term.setCursorPos(19,15)
  208.             term.write("")
  209.             term.setCursorPos(19,16)
  210.             term.write("")
  211.  
  212.         elseif nOption == 8 then
  213.             term.setCursorPos(30,4)
  214.             term.write("Shutdown")
  215.             term.setCursorPos(19,6)
  216.             term.write("HELLO")
  217.             term.setCursorPos(19,7)
  218.             term.write("")
  219.             term.setCursorPos(19,8)
  220.             term.write("")
  221.             term.setCursorPos(19,9)
  222.             term.write("")
  223.             term.setCursorPos(19,10)
  224.             term.write("")
  225.             term.setCursorPos(19,11)
  226.             term.write("")
  227.             term.setCursorPos(19,12)
  228.             term.write("")
  229.             term.setCursorPos(19,13)
  230.             term.write("")
  231.             term.setCursorPos(19,14)
  232.             term.write("")
  233.             term.setCursorPos(19,15)
  234.             term.write("")
  235.             term.setCursorPos(19,16)
  236.             term.write("")
  237.  
  238.         elseif nOption == 9 then
  239.             term.setCursorPos(30,4)
  240.             term.write("Shutdown")
  241.             term.setCursorPos(19,6)
  242.             term.write("HELLO")
  243.             term.setCursorPos(19,7)
  244.             term.write("")
  245.             term.setCursorPos(19,8)
  246.             term.write("")
  247.             term.setCursorPos(19,9)
  248.             term.write("")
  249.             term.setCursorPos(19,10)
  250.             term.write("")
  251.             term.setCursorPos(19,11)
  252.             term.write("")
  253.             term.setCursorPos(19,12)
  254.             term.write("")
  255.             term.setCursorPos(19,13)
  256.             term.write("")
  257.             term.setCursorPos(19,14)
  258.             term.write("")
  259.             term.setCursorPos(19,15)
  260.             term.write("")
  261.             term.setCursorPos(19,16)
  262.             term.write("")
  263.         else
  264.         end
  265. end
  266.  
  267. term.clear()
  268.  
  269. local function drawFrontend()
  270.    term.setCursorPos(1,3)
  271.    print("")
  272.    print("   User Manual" )
  273.    print("")
  274.    print(((nOption == 1) and "   [ Command  ]") or "     Command " )
  275.    print(((nOption == 2) and "   [ Programs ]") or "     Programs" )
  276.    print(((nOption == 3) and "   [ Accounts ]") or "     Accounts" )
  277.    print(((nOption == 4) and "   [ Details  ]") or "     Details " )
  278.    print(((nOption == 5) and "   [ Unknown  ]") or "     Unknown " )
  279.    print(((nOption == 6) and "   [ Unknown  ]") or "     Unknown " )
  280.    print(((nOption == 7) and "   [ Unknown  ]") or "     Unknown " )
  281.    print(((nOption == 8) and "   [ Unknown  ]") or "     Unknown " )
  282.    print(((nOption == 9) and "   [ Unknown  ]") or "     Unknown " )
  283.    print("")
  284.    print(((nOption == 10) and "   [   Back   ]") or "       Back    " )
  285. end
  286.  
  287. drawMenu()
  288. drawFrontend()
  289.  
  290. while true do
  291.  local e,p = os.pullEvent()
  292.  if e == "key" then
  293.   local key = p
  294.   if key == 17 or key == 200 then
  295.  
  296.    if nOption > 1 then
  297.     nOption = nOption - 1
  298.     drawMenu()
  299.     drawFrontend()
  300.    end
  301.   elseif key == 31 or key == 208 then
  302.   if nOption < 10 then
  303.   nOption = nOption + 1
  304.   drawMenu()
  305.   drawFrontend()
  306. end
  307. elseif key == 28 then
  308.   break
  309. end
  310. end
  311. end
  312. term.clear()
  313.  
  314. if nOption  == 1 then
  315. shell.run("xos/.command")
  316. elseif nOption == 2 then
  317. shell.run("xos/.programs")
  318. elseif nOption == 3 then
  319. shell.run("xos/.accounts")
  320. elseif nOption == 4 then
  321. shell.run("xos/.details")
  322. elseif nOption == 10 then
  323. shell.run("back")
  324. else
  325. os.shutdown()
  326. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement