Advertisement
Guest User

OS

a guest
Jul 15th, 2018
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.30 KB | None | 0 0
  1. function cleer()
  2.   term.setCursorPos(1,1)
  3.   term.setBackgroundColor(colors.black)
  4.   term.setTextColor(colors.white)
  5.   term.clear()
  6. end
  7.  
  8. if fs.exists("saves") then
  9.   print("yes")
  10.   sleep(1)
  11. else
  12.   fs.makeDir("saves")
  13.   fs.makeDir("saves/OS")
  14.   fs.open("saves/OS/accounts","w")
  15.   print("no but i made one")
  16.   sleep(1)
  17. end
  18.  
  19. function rFile(fName,User)
  20.   cleer()
  21.   local file = fs.open("saves/"..User.."/Desktop/"..fName,"r")
  22.   for line in file.readLine do
  23.     print(line)
  24.   end
  25.   file.close()
  26.   term.setCursorPos(1,19)
  27.   write(">Back")
  28.   local event,button,x,y = os.pullEvent("mouse_click")
  29. end
  30.  
  31. function login(User)
  32.   cleer()
  33.   write("Password: ")
  34.   local Pass = read("*")
  35.   local file = fs.open("saves/"..User.."/info","r")
  36.   inputPass = file.readLine()
  37.   file.close()
  38.   cleer()
  39.   if inputPass == Pass then
  40.     local cUserFile = fs.open("saves/OS/cUser","w")
  41.     cUserFile.writeLine(User)
  42.     cUserFile.close()
  43.   else
  44.     cleer()
  45.     term.setTextColor(colors.red)
  46.     write("Incorrect.")
  47.     sleep(2)
  48.     os.reboot()
  49.   end
  50. end
  51.  
  52. function makeAcc()
  53.   cleer()
  54.   write("Username: ")
  55.   local Username = read()
  56.   if fs.exists("saves/"..Username) then
  57.     cleer()
  58.     term.setTextColor(colors.red)
  59.     write("Account already exists")
  60.     os.reboot()
  61.   end
  62.   term.setCursorPos(1,2)
  63.   write("Password: ")
  64.   local Pass = read("*")
  65.   fs.makeDir("saves/"..Username)
  66.   fs.makeDir("saves/"..Username.."/desktop")
  67.   local readmeFile = fs.open("saves/"..Username.."/desktop/ReadMe","w")
  68.   local tContents = {"You are currently viewing a text file","Press the back button to go back","Once you are back you can","right click to get more options"}
  69.   for i,v in ipairs(tContents) do
  70.     readmeFile.writeLine(v)
  71.   end
  72.   readmeFile.close()
  73.   local file = fs.open("saves/"..Username.."/info","w")
  74.   file.writeLine(Pass)
  75.   file.close()
  76.   cleer()
  77.   write("Rebooting")
  78.   sleep(1)
  79.   os.reboot()
  80. end
  81.  
  82. cleer()
  83. local width, height = term.getSize()
  84. term.setCursorPos(math.floor(width-string.len("Welcome"))/2,1)
  85. print("Welcome")
  86. term.setCursorPos(1,2)
  87.  
  88. local FileList = fs.list("saves")
  89. local menuContents = {}
  90. local internalNum = 1
  91. for _,file in ipairs(FileList) do
  92.   print(file)
  93.   table.insert(menuContents, internalNum, file)
  94.   internalNum = internalNum + 1
  95. end
  96.  
  97. term.setCursorPos(1,19)
  98. write("Create Account")
  99. local event,button,x,y = os.pullEvent("mouse_click")
  100. if x >= 1 and x <= string.len("Create Account") and y == 19 then
  101.   cleer()
  102.   makeAcc()
  103. elseif x >=1 and x <= string.len(menuContents[y-1]) then
  104.   local User = tostring(menuContents[y-1])
  105.   if User == "OS" then
  106.     cleer()
  107.     term.setTextColor(colors.red)
  108.     write("Access Denied.")
  109.     sleep(2)
  110.     os.reboot()
  111.   else
  112.     login(User)
  113.   end
  114. end
  115.  
  116. while true do
  117.   cleer()
  118.   local cUser = fs.open("saves/OS/cUser","r")
  119.   local User = cUser.readLine()
  120.   cUser.close()
  121.   local fileList = fs.list("saves/"..User.."/desktop")
  122.   local fileContents = {}
  123.   local internalNum2 = 1
  124.   for _,file2 in ipairs(fileList) do
  125.     print(file2)
  126.     table.insert(fileContents,internalNum2,file2)
  127.   end
  128.   local event,button,x,y = os.pullEvent("mouse_click")
  129.   if x <= string.len(fileContents[y]) and button == 1 then
  130.     local fName = tostring(fileContents[y])
  131.     rFile(fName,User)
  132.   elseif button == 2 then
  133.     print(2)
  134.   end
  135. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement