Advertisement
PolskiWisnia

MineCore testy

Jul 20th, 2019
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 7.91 KB | None | 0 0
  1. -- Skroty do komend --
  2. local function s(...) return sleep(...) end
  3. local function w(...) return write(...) end
  4. local function p(...) return print(...) end
  5. local function tw(...) return term.write(...) end
  6. local function scp(...) return term.setCursorPos(...) end
  7. local function sbc(...) return term.setBackgroundColor(...) end
  8. local function stc(...) return term.setTextColor(...) end
  9. local function tc(...) return term.clear(...) end
  10. local function tcl(...) return term.clearLine(...) end
  11. local function r(...) return shell.run(...) end
  12. local function sp(...) return textutils.slowPrint(...) end
  13. local function sw(...) return textutils.slowWrite(...) end
  14. local function fse(...) return fs.exists(...) end
  15. local function pul(...) return paintutils.loadImage(...) end
  16. local function pud(...) return paintutils.drawImage(...) end
  17. local function pfb(...) return paintutils.drawFilledBox(...) end
  18. local function su(...) return os.shutdown(...) end
  19. local function re(...) return os.reboot(...) end
  20. local function pdp(...) return paintutils.drawPixel(...) end
  21. function logg()
  22. if fs.exists("/os/.logo") then
  23.  local loggo = fs.open("/os/.logo", "r")
  24.  logoo = loggo.readLine(1)
  25.  loggo.close()
  26. else
  27. local loggo = fs.open("/os/.logo", "w")
  28. ust = "Tak"
  29. loggo.writeLine(ust)
  30. loggo.close()
  31. end
  32. end
  33. function tlo()
  34.  if fs.exists("/os/.pulpit") then
  35.   local pul = fs.open("/os/.pulpit", "r")
  36.   tloo = pul.readLine(1)
  37.   pul.close()
  38.  else
  39.  local pul = fs.open("/os/.pulpit", "w")
  40.  tlo = "Nowe"
  41.  pul.writeLine(tlo)
  42.  pul.close()
  43. end
  44. if tloo == "Nowe" then styl = "Klasyczne" end
  45. if tloo == "Klasyczne" then styl = "Nowe" end
  46. end
  47. function zmien()
  48.  if tloo == "Nowe" then r("rm /os/.pulpit")  local pul = fs.open("/os/.pulpit", "w")  tlo = "Klasyczne"  pul.writeLine(tlo) pul.close()  elseif tloo == "Klasyczne" then r("rm /os/.pulpit") local pul = fs.open("/os/.pulpit", "w")  tlo = "Nowe"  pul.writeLine(tlo) pul.close() end
  49. s(2)
  50. re()
  51. end
  52. function zmien2()
  53.  if logoo == "Tak" then r("rm /os/.logo")  local loggo = fs.open("/os/.logo", "w")  ust = "Nie"  loggo.writeLine(ust) loggo.close()  elseif logoo == "Nie" then r("rm /os/.logo") local loggo = fs.open("/os/.logo", "w")  ust = "Tak"  loggo.writeLine(ust) loggo.close() end
  54. s(2)
  55. re()
  56. end
  57. function logobraz()
  58. pfb(1, 1, 51, 5, colors.blue)
  59. pfb(1, 6, 51, 14, colors.lightBlue)
  60. pfb(1, 15, 51, 19, colors.blue)
  61. pfb(15, 7, 17, 9, colors.gray)
  62. scp(1,1)
  63. p("Logowanie MineCore")
  64. scp(1,2)
  65. p("Wybierz uzytkownika, a nastepnie wpisz haslo.")
  66. end
  67. -- Funkcja do otrzymywania rozmiaru folderu/pliku --
  68. function getSize(path)
  69.   local size = 0
  70.   for _, file in ipairs(fs.list(path)) do
  71.     if fs.isDir(fs.combine(path, file)) then
  72.       size = size + getSize(fs.combine(path, file))
  73.     else
  74.       size = size + fs.getSize(fs.combine(path, file))
  75.     end
  76.   end
  77.   return size
  78. end
  79. local data = os.day()
  80. -- Odczytywanie wersji systemu --
  81. function wersja()
  82.  local ver = fs.open("/os/ver/.ver", "r")
  83.  wer = ver.readLine(1)
  84. end
  85. -- Funkcja wyswietlania pulpitu --
  86. function obraz()
  87. if tloo == "Nowe" then
  88.  tc()
  89.  pfb(1, 1, 51, 1, colors.brown)
  90.  pfb(2, 2, 50, 17, colors.black)
  91.  pfb(1, 1, 1, 18, colors.brown)
  92.  pfb(1, 18, 51, 18, colors.brown)
  93.  pfb(51, 1, 51, 18, colors.brown)
  94.  pfb(1, 19, 5, 19, colors.green)
  95.  pfb(6, 19, 49, 19, colors.blue)
  96.  pdp(50, 19, colors.red)
  97.  pdp(51, 19, colors.orange)
  98.  sbc(colors.green)
  99.  stc(colors.white)
  100.  scp(1,19)
  101.  w("Start")
  102.  sbc(colors.brown)
  103.  stc(colors.white)
  104.  scp(1,1)
  105.  p("Informacje")
  106.  time = os.time()
  107.  time = textutils.formatTime(time, true)
  108.  sbc(colors.blue)
  109.  stc(colors.white)
  110.  scp(45,19)
  111.  write(time)
  112.  scp(30,19)
  113.  w("Dzien: ", data)
  114. elseif tloo == "Klasyczne" then
  115. sbc(colors.white)
  116. tc()
  117. sbc(colors.white)
  118. pdp(50, 19, colors.red)
  119. pdp(51, 19, colors.orange)
  120. pfb(1, 19, 51, 19, colors.blue)
  121. sbc(colors.blue)
  122. stc(colors.white)
  123. scp(1,1)
  124. p("Microcraft MineCore Hybrid OS")
  125. scp(1,19)
  126. w("Start")
  127. time = os.time()
  128. time = textutils.formatTime(time, true)
  129. sbc(colors.blue)
  130. stc(colors.white)
  131. scp(45,1)
  132. p(time)
  133. scp(30,19)
  134. w("Dzien: ", data)
  135. end
  136. end
  137. -- Odczytywanie danych do logowania --
  138. function pliki()
  139.  local u = fs.open("/os/.log1", "r")
  140.  user = u.readLine(1)
  141.  u.close()
  142.  local h = fs.open("/os/.log2", "r")
  143.  pass = h.readLine(1)
  144.  h.close()
  145. end
  146. -- Logowanie --
  147. function log()
  148. if logoo == "Tak" then
  149.  sbc(colors.lightBlue)
  150.  stc(colors.white)
  151.  scp(18,7)
  152.  p(user)
  153.  scp(18,8)
  154.  w("")
  155.  haslo = read()
  156.  if haslo == pass then ok = 1 else scp(18,9) stc(colors.red) p("Bledne haslo") s(2) re() end
  157. elseif logoo == "Nie" then ok = 1
  158. end
  159. end
  160. -- Menu Start
  161. function start()
  162.  pfb(1, 15, 10, 18, colors.white)
  163.  pfb(1, 14, 10, 14, colors.blue)
  164.  scp(1,14)
  165.  stc(colors.white)
  166.  p("Start")
  167.  stc(colors.black)
  168.  sbc(colors.white)
  169.  scp(1,15)
  170.  p("Ustawienia")
  171.  scp(1,16)
  172.  p("Programy")
  173.  scp(1,17)
  174.  p("CraftOS")
  175.  scp(1,18)
  176.  p("/run")
  177.  point2()
  178. end
  179. -- Zakladka informacje --
  180. function info()
  181.  pfb(1, 2, 20, 6, colors.lightGray)
  182.  stc(colors.white)
  183.  sbc(colors.lightGray)
  184.  scp(1,2)
  185.  p("MineCore Hybrid OS")
  186.  p("Wolne miejsce:")
  187.  p(fs.getFreeSpace("/")/1024, "KB")
  188.  p("Kompilacja: 1300A")
  189.  p("17.07.2019")
  190.  local event, click, x, y = os.pullEvent("mouse_click")
  191. end
  192. -- Wykrywanie wcisniecia --
  193. function point()
  194. local event, click, x, y = os.pullEvent("mouse_click")
  195. if tloo == "Nowe" then
  196.  if x>0 and x<6 and y == 19 then start() end
  197.  if x == 50 and y == 19 then su() end
  198.  if x == 51 and y == 19 then re() end
  199.  if x>0 and x<11 and y == 1 then info() end
  200. elseif tloo == "Klasyczne" then
  201.  if x>0 and x<6 and y == 19 then start() end
  202.  if x == 50 and y == 19 then su() end
  203.  if x == 51 and y == 19 then re() end
  204. end
  205. end
  206. -- to co wyzej, ale jeszcze raz --
  207. function point2()
  208.  local event, click, x, y = os.pullEvent("mouse_click")
  209.  if x>0 and x<9 and y == 16 then programy() end
  210.  if x>0 and x<9 and y == 17 then error("Opuszczono MineUI 4.1") end
  211.  if x>0 and x<11 and y == 15 then set() end
  212.  if x>0 and x<9 and y == 18 then scp(2,2)
  213.  stc(colors.white)
  214.  sbc(colors.black)
  215.  w("Wpisz nazwe pliku: ")
  216.  plik = read()
  217.  if fs.exists(plik) then r(plik) else error("Brak oczekiwanego pliku.") end
  218. end
  219. end
  220. -- Menu Programy --
  221. function programy()
  222.  pfb(11, 14, 19, 16, colors.white)
  223.  scp(12,14)
  224.  p(">2048")
  225.  scp(12,15)
  226.  p("LuaIDE")
  227.  scp(12,16)
  228.  p("Snake")
  229.  local event, click, x, y = os.pullEvent("mouse_click")
  230.  if x>10 and x<20 and y == 14 then r("/os/.2048") end
  231.  if x>10 and x<20 and y == 15 then scp(2,2) sbc(colors.black) stc(colors.white) w("Wpisz nazwe pliku: ") plik = read() r("edit", plik) end
  232.  if x>10 and x<20 and y == 16 then r("worm") end
  233. end
  234. -- Ustawienia --
  235. function set()
  236.  tc()
  237.  pfb(1, 1, 51, 1, colors.blue)
  238.  pfb(1, 2, 51, 19, colors.white)
  239.  scp(1,1)
  240.  sbc(colors.blue)
  241.  stc(colors.white)
  242.  p("Ustawienia")
  243.  sbc(colors.white)
  244.  stc(colors.black)
  245.  scp(1,2)
  246.  p("MineCore Hybrid OS")
  247.  p("Wolne miejsce na dysku:")
  248.  wolne = math.ceil(fs.getFreeSpace("/")/1024)
  249.  p(wolne, "KB")
  250.  zajete = getSize("/os/")/1024
  251.  lacznie = fs.getFreeSpace("/") + zajete
  252.  print(math.ceil(zajete/1024), "KB uzyte z ", lacznie, "KB")
  253.  p("Nazwa komputera: ")
  254.  p(os.getComputerLabel())
  255.  p("Zmien nazwe komputera")
  256.  local ver = fs.open("/os/ver/.ver", "r")
  257.  wer = ver.readLine(1)
  258.  p("Wersja: ", wer)
  259.  p("Nazwa uzytkownika:", user)
  260.  p("Aktualizuj system")
  261.  p("Zainstaluj wersje testowa")
  262.  p("Styl systemu:")
  263.  p(tloo)
  264.  p("Dostepne style (nacisnij, aby zmienic):")
  265.  p(styl)
  266.  p("Wlaczone logowanie (kliknij, aby przelaczyc)?")
  267.  p(logoo)
  268.  local event, click, x, y = os.pullEvent("mouse_click")
  269.  if x>0 and x<20 and y == 8 then scp(1,8) sbc(colors.white) stc(colors.black) w("Wpisz nowa nazwe: ") nazwa = read() os.setComputerLabel(nazwa) end
  270.  if x>0 and x<20 and y == 11 then r("/os/.update") end
  271.  if x>0 and x<20 and y == 12 then r("/os/.tupdate") end
  272.  if x>0 and x<20 and y == 16 then zmien() end
  273.  if x>0 and x<20 and y == 18 then zmien2() end
  274. end
  275. -- Kolejnosc funkcji --
  276. tlo()
  277. logg()
  278. logobraz()
  279. pliki()
  280. log()
  281. while true do
  282. obraz()
  283. point()
  284. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement