Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- term.setBackgroundColor(32768)
- term.clear()
- rs.setOutput("top", false)
- sleep(0.5)
- function calc_color(color)
- return math.pow(2, color - 1)
- end
- function msg(gap, line, color, groundb, text)
- term.setBackgroundColor(calc_color(groundb))
- term.setCursorPos(gap,line)
- term.setTextColor(calc_color(color))
- text = term.write(text)
- end
- function neueracc()
- term.setBackgroundColor(32768)
- term.clear()
- msg(14,02,04,16,"Neuen Account erstellen")
- msg(02,05,04,16,"Wie soll dein Name sein?")
- msg(01,06,04,16,"---------------------------------------------------")
- msg(02,07,06,16,"")
- local name = read()
- if fs.exists("benutzer/" ..name) == true then
- msg(02,07,15,16,"Dieser Name ist schon vergeben")
- sleep(1)
- neueracc()
- end
- msg(02,10,04,16,"Wie soll dein Passwort sein?")
- msg(01,11,04,16,"---------------------------------------------------")
- msg(02,12,06,16,"")
- local passwort1 = read("*")
- msg(02,15,04,16,"Bitte Passwort wiederholen!")
- msg(01,16,04,16,"---------------------------------------------------")
- msg(02,17,06,16,"")
- local passwort2 = read("*")
- if passwort1 ~= passwort2 then
- msg(02,17,15,16,"Das Passwort ist nicht gleich!")
- sleep(1)
- neueracc()
- else
- local file = fs.open("benutzer/" ..name.. "/", "w")
- file.write(passwort1)
- file.close()
- local file = fs.open("geld/" ..name.. "/", "w")
- file.write(0.0)
- file.close()
- end
- msg(02,17,06,16,"Account wird erstellt.")
- sleep(1)
- start()
- end
- function anmelden()
- term.setBackgroundColor(32768)
- term.clear()
- msg(14,02,04,16,"Mit Account anmelden")
- msg(02,05,04,16,"Wie lautet dein Name?")
- msg(01,06,04,16,"---------------------------------------------------")
- msg(02,07,06,16,"")
- name = read()
- if fs.exists("benutzer/" ..name) == false then
- msg(02,07,06,16,"Benutzername existiern nicht")
- sleep(1)
- start()
- end
- msg(02,10,04,16,"Wie lautet dein Passwort?")
- msg(01,11,04,16,"---------------------------------------------------")
- msg(02,12,06,16,"")
- local passwort = read("*")
- file = fs.open("benutzer/" ..name, "r")
- local inhalt = file.readLine()
- file.close()
- if passwort ~= inhalt then
- msg(02,12,06,16,"Passwort falsch")
- sleep(1)
- start()
- else
- hauptbildschirm()
- end
- end
- function hauptbildschirm()
- term.setBackgroundColor(32768)
- term.setCursorPos(1,1)
- term.clear()
- file = fs.open("geld/" ..name, "r")
- local dollar = file.readLine()
- file.close()
- msg(01,01,06,16,"< Account von "..name.." >") msg(36,01,06,16," > "..dollar.."$ ")
- msg(01,02,04,16,"---------------------------------------------------")
- msg(06,07,15,15," ") msg(29,07,15,15," ")
- msg(06,08,01,15," Geld einzahlen ") msg(29,08,01,15," Geld auszahlen ")
- msg(06,09,15,15," ") msg(29,09,15,15," ")
- msg(16,14,15,15," ")
- msg(16,15,01,15," Items kaufen ")
- msg(16,16,15,15," ")
- msg(01,19,01,15," Logout ")
- local event, button, X, Y = os.pullEvent("mouse_click")
- if X >= 06 and X <= 23 and Y >= 07 and Y <= 09 then
- einzahlen()
- elseif X >= 29 and X <= 46 and Y >= 07 and Y <= 09 then
- setnull()
- elseif X >= 16 and X <= 36 and Y >= 14 and Y <= 16 then
- kaufen1()
- elseif X >= 01 and X <= 08 and Y == 19 then
- os.reboot()
- else
- hauptbildschirm()
- end
- end
- function einzahlen()
- term.setBackgroundColor(32768)
- term.clear()
- rs.setOutput("right", true)
- sleep(0.5)
- file = fs.open("geld/" ..name, "r")
- local dollar = file.readLine()
- file.close()
- msg(01,01,06,16,"< Account von "..name.." >") msg(36,01,06,16," > "..dollar.."$ ")
- msg(01,02,04,16,"---------------------------------------------------")
- msg(01,04,04,16,"1x Tungston Ore = 42$")
- msg(01,05,04,16,"1x Shiny Ingot = 1000$")
- msg(01,06,04,16,"64x UU-Matter = 110$")
- msg(01,07,04,16,"1x Ferrouse Ore = 12$")
- msg(01,08,04,16,"1x Ghast Tear = 130$")
- msg(01,09,04,16,"1x Lead Ingot = 8$")
- msg(01,10,04,16,"1x Matrix: Identifier = 500$")
- msg(01,12,04,16,"Jetzt bitte links maximal 1024 Items von jeder")
- msg(01,13,04,16,"Sorte einwerfen, Überschuss wird zurückgegeben.")
- msg(06,15,15,15," ") msg(29,15,15,15," ")
- msg(06,16,01,15," Berechnen ") msg(29,16,01,15," Abbrechen ")
- msg(06,17,15,15," ") msg(29,17,15,15," ")
- msg(01,19,01,15," Logout ")
- local event, button, X, Y = os.pullEvent("mouse_click")
- if X >= 29 and X <= 46 and Y >= 15 and Y <= 17 then --Abbrechen
- rs.setOutput("top", true)
- hauptbildschirm()
- elseif X >= 06 and X <= 23 and Y >= 13 and Y <= 15 then --Berechnen
- berechnung()
- elseif X >= 01 and X <= 08 and Y == 19 then --Logout
- os.reboot()
- else
- einzahlen()
- end
- end
- function berechnung()
- term.setBackgroundColor(32768)
- term.clear()
- rs.setOutput("right", true)
- sleep(0.5)
- file = fs.open("geld/" ..name, "r")
- local dollar = file.readLine()
- file.close()
- msg(01,01,06,16,"< Account von "..name.." >") msg(36,01,06,16," > "..dollar.."$ ")
- msg(01,02,04,16,"---------------------------------------------------")
- msg(01,04,04,16,"Hier Turtle abfrage programmieren.")
- end
- function setnull()
- auszahlmenge = 0.0
- auszahlbetrag = 0.0
- auszahlen()
- end
- function auszahlen()
- term.setBackgroundColor(32768)
- term.clear()
- file = fs.open("geld/" ..name, "r")
- local dollar = file.readLine()
- file.close()
- dollar = tonumber(dollar)
- msg(01,01,06,16,"< Account von "..name.." >") msg(36,01,06,16," > "..dollar.."$ ")
- msg(01,02,04,16,"---------------------------------------------------")
- msg(01,03,04,16,"Die Auszahlung findet in Tungston Ore statt.")
- msg(01,04,04,16,"50$ = 1 Tungston Ore")
- msg(01,05,04,16,"---------------------------------------------------")
- msg(09,06,15,15," ") msg(23,06,15,15," ") msg(38,06,15,15," ")
- msg(09,07,01,15," + 1 ") msg(23,07,01,15," +10 ") msg(38,07,01,15," +64 ")
- msg(09,08,15,15," ") msg(23,08,15,15," ") msg(38,08,15,15," ")
- msg(09,10,15,15," ") msg(23,10,15,15," ") msg(38,10,15,15," ")
- msg(09,11,01,15," - 1 ") msg(23,11,01,15," -10 ") msg(38,11,01,15," -64 ")
- msg(09,12,15,15," ") msg(23,12,15,15," ") msg(38,12,15,15," ")
- msg(01,14,04,16,"Tungston Ore:") msg(14,14,06,16," "..auszahlmenge.." ")
- msg(23,14,04,16,"Abzug in Dollar:") msg(39,14,06,16," "..auszahlbetrag.." ")
- msg(06,16,15,15," ") msg(23,16,15,15," ")
- msg(06,17,01,15," Auszahlen ") msg(23,17,01,15," Abbrechen ")
- msg(06,18,15,15," ") msg(23,18,15,15," ")
- msg(44,19,01,15," Logout ")
- local event, button, X, Y = os.pullEvent("mouse_click")
- if X >= 09 and X <= 15 and Y >= 06 and Y <= 08 and auszahlmenge < 1024 then
- auszahlmenge = auszahlmenge + 1
- auszahlbetrag = auszahlbetrag + 50
- auszahlen()
- elseif X >= 23 and X <= 29 and Y >= 06 and Y <= 08 and auszahlmenge <= 1014 then
- auszahlmenge = auszahlmenge + 10
- auszahlbetrag = auszahlbetrag + 500
- auszahlen()
- elseif X >= 38 and X <= 44 and Y >= 06 and Y <= 08 and auszahlmenge <= 960 then
- auszahlmenge = auszahlmenge + 64
- auszahlbetrag = auszahlbetrag + 3200
- auszahlen()
- elseif X >= 09 and X <= 15 and Y >= 10 and Y <= 12 and auszahlmenge > 0 then
- auszahlmenge = auszahlmenge - 1
- auszahlbetrag = auszahlbetrag - 50
- auszahlen()
- elseif X >= 23 and X <= 29 and Y >= 10 and Y <= 12 and auszahlmenge >= 10 then
- auszahlmenge = auszahlmenge - 10
- auszahlbetrag = auszahlbetrag - 500
- auszahlen()
- elseif X >= 38 and X <= 44 and Y >= 10 and Y <= 12 and auszahlmenge >= 64 then
- auszahlmenge = auszahlmenge - 64
- auszahlbetrag = auszahlbetrag - 3200
- auszahlen()
- elseif X >= 06 and X <= 18 and Y >= 16 and Y <= 18 then
- if auszahlbetrag <= dollar then
- dollar = dollar - auszahlbetrag
- local file = fs.open("geld/" ..name.. "/", "w")
- file.write(dollar)
- file.close()
- rednet.open("bottom")
- rednet.send(7957,auszahlmenge)
- rs.setOutput("right", false)
- sleep(0.5)
- hauptbildschirm()
- else
- msg(01,19,06,16,"Du hast zu wenig Geld!")
- sleep(1)
- auszahlen()
- end
- elseif X >= 23 and X <= 36 and Y >= 16 and Y <= 18 then
- rs.setOutput("top", false)
- hauptbildschirm()
- elseif X >= 44 and X <= 51 and Y == 19 then
- os.reboot()
- else
- auszahlen()
- end
- end
- function reset1()
- m0 = 0
- m1 = 0
- m2 = 0
- m3 = 0
- m4 = 0
- m5 = 0
- m6 = 0
- m7 = 0
- m8 = 0
- m9 = 0
- m10 = 0
- m11 = 0
- m12 = 0
- m13 = 0
- m14 = 0
- m15 = 0
- m16 = 0
- m17 = 0
- M = {m0, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13, m14, m15, m16, m17}
- end
- b1 = 0
- b2 = 0
- b3 = 8000
- b4 = 1000
- b5 = 150
- b6 = 126
- b7 = 42
- b8 = 84
- b9 = 120
- b10 = 120
- b11 = 120
- b12 = 333000
- b13 = 190
- b14 = 2500
- b15 = 450
- b16 = 500
- b17 = 0
- B = {b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17}
- function kaufen1()
- reset1()
- term.setBackgroundColor(32768)
- term.clear()
- file = fs.open("geld/" ..name, "r")
- local dollar = file.readLine()
- file.close()
- betrag = 0
- c = 0 --Errechneter Betrag
- msg(01,01,06,16,"< Account von "..name.." >") msg(36,01,06,16," > "..dollar.."$ ")
- msg(01,02,04,16,"---------------------------------------------------")
- msg(01,03,04,16,"| 8000$ HV Solar Panel") msg(51,03,04,16,"|")
- msg(01,04,04,16,"| 1000$ MV Solar Panel") msg(51,04,04,16,"|")
- msg(01,05,04,16,"| 150$ LV Solar Panel") msg(51,05,04,16,"|")
- msg(01,06,04,16,"- 126$ Deep Storage Unit") msg(51,06,04,16,"-")
- msg(01,07,04,16,"| 42$ Autmatic Crafting Table MkII") msg(51,07,04,16,"|")
- msg(01,08,04,16,"| 84$ Igneus Extruder") msg(51,08,04,16,"|")
- msg(01,09,04,16,"| 120$ Recycler") msg(51,09,04,16,"|")
- msg(01,10,04,16,"- 120$ Electric Furnace") msg(51,10,04,16,"-")
- msg(01,11,04,16,"| 120$ Macerator") msg(51,11,04,16,"|")
- msg(01,12,04,16,"| 333k$ Adjustable Emitter") msg(51,12,04,16,"|")
- msg(01,13,04,16,"| 190$ MFSU") msg(51,13,04,16,"|")
- msg(01,14,04,16,"- 2500$ Amaranthine Dust") msg(51,14,04,16,"-")
- msg(01,15,04,16,"| 450$ Verdan Dust") msg(51,15,04,16,"|")
- msg(01,16,04,16,"| 500$ Logic Matrix: Itentifier") msg(51,16,04,16,"|")
- msg(01,17,04,16,"| 0$ ") msg(51,17,04,16,"|")
- msg(01,18,04,16,"---------------------------------------------------")
- msg(01,19,01,15," Kaufen ") msg(11,19,01,15," Abbrechen ") msg(24,19,01,15," Logout ")
- msg(34,19,04,16,"Betrag:") msg(42,19,06,16,""..c.."$")
- for i = 3,17 do
- msg(40,i,01,15," + ")
- end
- for i = 3,17 do
- msg(44,i,04,16,"0")
- end
- for i = 3,17 do
- msg(47,i,01,15," - ")
- end
- kaufen2()
- end
- function kaufen2()
- file = fs.open("geld/" ..name, "r")
- local dollar = file.readLine()
- file.close()
- dollar = tonumber(dollar)
- local event, button, X, Y = os.pullEvent("mouse_click")
- for i = 3,16 do
- if X >= 40 and X <= 42 and Y == i then -- +1
- if M[i] < 60 then -- max 64
- M[i] = M[i] + 1
- c = c + B[i]
- msg(44,i,04,16,""..M[i].."")
- msg(42,19,06,16,""..c.."$")
- break
- end
- end
- if X >= 47 and X <= 49 and Y == i then -- -1
- if M[i] > 0 then
- M[i] = M[i] - 1
- c = c - B[i]
- msg(44,i,04,16,""..M[i].." ")
- msg(42,19,06,16,""..c.."$ ")
- break
- end
- end
- end
- if X >= 11 and X <= 21 and Y == 19 then --Abbrechen
- for i = 1,16 do
- M[i] = 0
- end
- rs.setOutput("top", false)
- hauptbildschirm()
- elseif X >= 24 and X <= 31 and Y == 19 then
- os.reboot()
- elseif X >= 01 and X <= 08 and Y == 19 then --Kaufen
- if c > dollar then --aber zu wenig Geld
- msg(41,19,01,15," "..c.."$ ")
- sleep(0.25)
- msg(41,19,06,16," "..c.."$ ")
- sleep(0.25)
- msg(41,19,01,15," "..c.."$ ")
- sleep(0.25)
- msg(41,19,06,16," "..c.."$ ")
- sleep(0.5)
- kaufen2()
- elseif c <= dollar then
- dollar = dollar - c
- local file = fs.open("geld/" ..name.. "/", "w")
- file.write(dollar)
- file.close()
- package = {}
- for i,amount in pairs(M) do
- local a = {}
- if amount > 0 then
- a = {
- ["Slot"] = i - 2,
- ["Amount"] = amount
- }
- table.insert(package, a)
- end
- end
- rednet.open("bottom")
- rednet.send(6415,textutils.serialize(package))
- rs.setOutput("top", false)
- hauptbildschirm()
- end
- end
- kaufen2()
- end
- function start()
- term.setBackgroundColor(32768)
- term.clear()
- msg(14,03,04,16,"Neuen Account erstellen")
- msg(01,04,04,16,"---------------------------------------------------")
- msg(15,05,15,15," ")
- msg(15,06,01,15," klick hier ")
- msg(15,07,15,15," ")
- msg(01,08,04,16,"---------------------------------------------------")
- msg(15,12,04,16,"Mit Account anmelden")
- msg(01,13,04,16,"---------------------------------------------------")
- msg(15,14,15,15," ")
- msg(15,15,01,15," klick hier ")
- msg(15,16,15,15," ")
- msg(01,17,04,16,"---------------------------------------------------")
- msg(01,20,04,16," ")
- local event, button, X, Y = os.pullEvent("mouse_click")
- if X >= 15 and X <= 34 and Y >= 05 and Y <= 07 then
- neueracc()
- elseif X >= 15 and X <= 34 and Y >= 14 and Y <= 16 then
- anmelden()
- else
- start()
- end
- end
- start()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement