Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Versamenti MINERALI
- local maxw, maxh = term.getSize()
- --vuota il bancomat
- ben = peripheral.wrap("back")
- ben.getAvailableItems()
- i,j = os.pullEvent("available_items_return")
- refTurquoise = 0
- refOnyx = 0
- refAmethyst = 0
- refCitrine = 0
- refEmerald = 0
- refRuby = 0
- refSapphire = 0
- platinum = 0
- gold = 0
- iridium = 0
- diamond = 0
- refTurquoiseID = ben.getItemIdentifierIDFor(31184, 7)
- refOnyxID = ben.getItemIdentifierIDFor(31184, 8)
- refAmethystID = ben.getItemIdentifierIDFor(31184, 9)
- refCitrineID = ben.getItemIdentifierIDFor(31184, 10)
- refEmeraldID = ben.getItemIdentifierIDFor(31184, 11)
- refRubyID = ben.getItemIdentifierIDFor(31184, 12)
- refSapphireID = ben.getItemIdentifierIDFor(31184, 13)
- platinumID = ben.getItemIdentifierIDFor(21256, 27)
- goldID = ben.getItemIdentifierIDFor(266, 0)
- iridiumID = ben.getItemIdentifierIDFor(21256, 16)
- diamondID = ben.getItemIdentifierIDFor(264, 0)
- for k,v in pairs(j) do
- if v[1] == refTurquoiseID then
- refTurquoise = v[2]
- ben.makeRequest(refTurquoiseID, v[2])
- elseif v[1] == refOnyxID then
- refOnyx = v[2]
- ben.makeRequest(refOnyxID, v[2])
- elseif v[1] == refAmethystID then
- refAmethyst = v[2]
- ben.makeRequest(refAmethystID, v[2])
- elseif v[1] == refCitrineID then
- refCitrine = v[2]
- ben.makeRequest(refCitrineID, v[2])
- elseif v[1] == refEmeraldID then
- refEmerald = v[2]
- ben.makeRequest(refEmeraldID, v[2])
- elseif v[1] == refRubyID then
- refRuby = v[2]
- ben.makeRequest(refRubyID, v[2])
- elseif v[1] == refSapphireID then
- refSapphire = v[2]
- ben.makeRequest(refSapphireID, v[2])
- elseif v[1] == platinumID then
- platinum = v[2]
- ben.makeRequest(platinumID, v[2])
- elseif v[1] == goldID then
- gold = v[2]
- ben.makeRequest(goldID, v[2])
- elseif v[1] == iridiumID then
- iridium = v[2]
- ben.makeRequest(iridiumID, v[2])
- elseif v[1] == diamondID then
- diamond = v[2]
- ben.makeRequest(diamondID, v[2])
- end
- sleep(0.1)
- end
- ben.getAvailableItems()
- i,j = os.pullEvent("available_items_return")
- refTurquoiseID = ben.getItemIdentifierIDFor(31184, 7)
- refOnyxID = ben.getItemIdentifierIDFor(31184, 8)
- refAmethystID = ben.getItemIdentifierIDFor(31184, 9)
- refCitrineID = ben.getItemIdentifierIDFor(31184, 10)
- refEmeraldID = ben.getItemIdentifierIDFor(31184, 11)
- refRubyID = ben.getItemIdentifierIDFor(31184, 12)
- refSapphireID = ben.getItemIdentifierIDFor(31184, 13)
- platinumID = ben.getItemIdentifierIDFor(21256, 7)
- goldID = ben.getItemIdentifierIDFor(266, 0)
- iridiumID = ben.getItemIdentifierIDFor(21256, 16)
- diamondID = ben.getItemIdentifierIDFor(264, 0)
- for k,v in pairs(j) do
- if v[1] == refTurquoiseID then
- refTurquoise = v[2]
- ben.makeRequest(refTurquoiseID, v[2])
- elseif v[1] == refOnyxID then
- refOnyx = v[2]
- ben.makeRequest(refOnyxID, v[2])
- elseif v[1] == refAmethystID then
- refAmethyst = v[2]
- ben.makeRequest(refAmethystID, v[2])
- elseif v[1] == refCitrineID then
- refCitrine = v[2]
- ben.makeRequest(refCitrineID, v[2])
- elseif v[1] == refEmeraldID then
- refEmerald = v[2]
- ben.makeRequest(refEmeraldID, v[2])
- elseif v[1] == refRubyID then
- refRuby = v[2]
- ben.makeRequest(refRubyID, v[2])
- elseif v[1] == refSapphireID then
- refSapphire = v[2]
- ben.makeRequest(refSapphireID, v[2])
- elseif v[1] == platinumID then
- platinum = v[2]
- ben.makeRequest(platinumID, v[2])
- elseif v[1] == goldID then
- gold = v[2]
- ben.makeRequest(goldID, v[2])
- elseif v[1] == iridiumID then
- iridium = v[2]
- ben.makeRequest(iridiumID, v[2])
- elseif v[1] == diamondID then
- diamond = v[2]
- ben.makeRequest(diamondID, v[2])
- end
- sleep(0.1)
- end
- function clear()
- term.clear()
- term.setCursorPos(1,1)
- end
- if platinum ~= 0 or gold ~= 0 or iridium ~= 0 or diamond ~= 0 or refTurquoise ~= 0 or refOnyx ~= 0 or refAmethyst ~= 0 or refCitrine ~= 0 or refEmerald ~= 0 or refSapphire ~= 0 then
- clear()
- print("Bancomat temporaneamente non disponibile")
- sleep(60)
- os.reboot()
- end
- function clear()
- term.clear()
- term.setCursorPos(1, 1)
- end
- function clearRed()
- sfondo(colors.red)
- term.clear()
- term.setCursorPos(1, 1)
- end
- function colore(sfumatura) term.setTextColour(sfumatura) end
- function sfondo(sfumaturaSfondo) term.setBackgroundColour(sfumaturaSfondo) end
- function fineColore() term.setTextColour(colours.white) end
- function fineSfondo() term.setBackgroundColour(colours.black) end
- -- IMPLEMENTAZIONE DEL DRAWFILLEDBOX
- local function drawPixelInternal(xPos, yPos)
- term.setCursorPos(xPos, yPos)
- term.write(" ")
- end
- local tColourLookup = {}
- for n = 1, 16 do
- tColourLookup[string.byte("0123456789abcdef", n, n)] = 2 ^ (n - 1)
- end
- function drawFilledBox(startX, startY, endX, endY, nColour)
- if type(startX) ~= "number" or type(startX) ~= "number" or type(endX) ~=
- "number" or type(endY) ~= "number" or
- (nColour ~= nil and type(nColour) ~= "number") then
- error("Expected startX, startY, endX, endY, colour", 2)
- end
- startX = math.floor(startX)
- startY = math.floor(startY)
- endX = math.floor(endX)
- endY = math.floor(endY)
- if nColour then term.setBackgroundColor(nColour) end
- if startX == endX and startY == endY then
- drawPixelInternal(startX, startY)
- return
- end
- local minX = math.min(startX, endX)
- if minX == startX then
- minY = startY
- maxX = endX
- maxY = endY
- else
- minY = endY
- maxX = startX
- maxY = startY
- end
- for x = minX, maxX do for y = minY, maxY do drawPixelInternal(x, y) end end
- end
- function titolo(testo)
- drawFilledBox(1, 1, maxw, 1, colors.yellow)
- term.setCursorPos((maxw - #testo) / 2, 1)
- colore(colors.black)
- term.write(testo)
- sfondo(colors.blue)
- end
- function errore(errore)
- sfondo(colors.red)
- colore(colors.white)
- term.clear()
- term.setCursorPos(1, 1)
- titolo("Errore irreversibile")
- term.setCursorPos(1, 3)
- sfondo(colors.red)
- colore(colors.white)
- print(errore)
- print("\n\n\nAttendere qualche secondo...")
- os.sleep(5)
- os.reboot()
- end
- clear()
- print("Banco di NEBRASKA - Sistema MINERALI")
- print("")
- print("Premere un tasto per iniziare l'operazione")
- event = os.pullEvent()
- sfondo(colours.blue)
- term.clear()
- term.setCursorPos(1, 1)
- titolo("Accredita su Nebraska Pay")
- sfondo(colours.blue)
- colore(colors.white)
- print(
- "\n\nInserire i propri dati. Premere Enter per confermare i dati inseriti. \nSe i dati sono corretti, il campo diventerà verde. Se sono errati, il programma chiederà di reinserirli nuovamente.")
- -- nomeutente
- term.setCursorPos(1, 9)
- term.write("Nome utente:")
- term.setCursorPos(15, 9)
- fineColore()
- utenteAccettato = false
- conteggioErrori = 0
- while utenteAccettato == false do
- utente = read()
- utente = string.gsub(utente, "%s", "")
- checkuser = http.get(
- "http://172.16.20.220/luanet/servlets/nebraskapay.php?auth=no&richiesta=verifica&utente=" ..
- utente).readAll()
- tabcheckuser = textutils.unserialize(checkuser)
- if tabcheckuser.stato == "OK" then
- term.setCursorPos(15, 9)
- colore(colours.lime)
- term.write(utente)
- fineColore()
- utenteAccettato = true
- else
- term.setCursorPos(15, 9)
- colore(colours.red)
- term.write("Utente errato! ")
- sleep(2)
- term.setCursorPos(15, 9)
- fineColore()
- term.write(" ")
- term.setCursorPos(15, 9)
- conteggioErrori = conteggioErrori + 1
- if conteggioErrori > 2 then
- term.setCursorPos(15, 9)
- colore(colours.red)
- errore("Troppi tentativi di immissione errati ")
- end
- end
- end
- colore(colours.white)
- term.setCursorPos(1, 11)
- term.write("Password:")
- term.setCursorPos(15, 11)
- conteggioErrori = 0
- passAccettata = false
- while passAccettata == false do
- fineColore()
- password = read("#")
- colore(colours.black)
- checkuser = http.get(
- "http://172.16.20.220/luanet/servlets/nebraskapay.php?auth=" ..
- password .. "&richiesta=addebito&valore=0&utente=" ..
- utente).readAll()
- risposta = textutils.unserialize(checkuser)
- if risposta.stato == "OK" then
- term.setCursorPos(15, 11)
- colore(colours.lime)
- term.write("############## ")
- fineColore()
- passAccettata = true
- else
- term.setCursorPos(15, 11)
- colore(colours.red)
- term.write("Password errata! ")
- conteggioErrori = conteggioErrori + 1
- sleep(2)
- term.setCursorPos(15, 11)
- term.write(" ")
- term.setCursorPos(15, 11)
- if conteggioErrori > 2 then
- term.setCursorPos(15, 11)
- colore(colours.red)
- errore("Troppi tentativi di immissione errati")
- end
- end
- end
- metodoPagamento = "NPAY"
- credito = tonumber(risposta.saldo)
- clear()
- while true do
- print("Il conto ha un saldo di "..credito.." IC.")
- print("")
- print("Per favore scegliere un'opzione utilizzando i tasti numerici e confermare con ENTER:")
- print("")
- print("[1] Versare dei minerali")
- print("[2] Annullare il versamento")
- num=tonumber(read())
- if num == 1 then
- clear()
- redstone.setOutput("left", true)
- print("Inserire i minerali nello sportello a destra oppure collocare il Deep Storage di fronte al cubo rosso")
- print("")
- print("AVVERTENZA IMPORTANTE:")
- print("Inserire SOLO questi minerali:")
- print("Refined Turquoise, Onyx, Ametyhst, Citrine, Emerald, Ruby, Sapphire")
- print("Platinum Ingot, Gold Ingot, Iridium Ingot, Diamond")
- print("")
- print("NON RIAVVIARE IL COMPUTER O SI PERDERA' IL VERSAMENTO")
- print("")
- print("Quando si è pronti per continuare, premere un tasto qualsiasi.")
- os.pullEvent("key")
- clear()
- redstone.setOutput("left", false)
- print("Conteggio minerali in corso...")
- term.setCursorPos(3, 3)
- term.write("*---")
- sleep(0.5)
- term.setCursorPos(3, 3)
- term.write("-*--")
- sleep(0.5)
- term.setCursorPos(3, 3)
- term.write("--*-")
- sleep(0.5)
- term.setCursorPos(3, 3)
- term.write("---*")
- sleep(0.5)
- term.setCursorPos(3, 3)
- term.write("--*-")
- sleep(0.5)
- term.setCursorPos(3, 3)
- term.write("-*--")
- sleep(0.5)
- term.setCursorPos(3, 3)
- term.write("*---")
- sleep(0.5)
- ben = peripheral.wrap("back")
- ben.getAvailableItems()
- i,j = os.pullEvent("available_items_return")
- clear()
- refTurquoiseID = ben.getItemIdentifierIDFor(31184, 7)
- refOnyxID = ben.getItemIdentifierIDFor(31184, 8)
- refAmethystID = ben.getItemIdentifierIDFor(31184, 9)
- refCitrineID = ben.getItemIdentifierIDFor(31184, 10)
- refEmeraldID = ben.getItemIdentifierIDFor(31184, 11)
- refRubyID = ben.getItemIdentifierIDFor(31184, 12)
- refSapphireID = ben.getItemIdentifierIDFor(31184, 13)
- platinumID = ben.getItemIdentifierIDFor(21256, 7)
- goldID = ben.getItemIdentifierIDFor(266, 0)
- iridiumID = ben.getItemIdentifierIDFor(21256, 16)
- diamondID = ben.getItemIdentifierIDFor(264, 0)
- for k,v in pairs(j) do
- if v[1] == refTurquoiseID then
- refTurquoise = v[2]
- ben.makeRequest(refTurquoiseID, v[2])
- elseif v[1] == refOnyxID then
- refOnyx = v[2]
- ben.makeRequest(refOnyxID, v[2])
- elseif v[1] == refAmethystID then
- refAmethyst = v[2]
- ben.makeRequest(refAmethystID, v[2])
- elseif v[1] == refCitrineID then
- refCitrine = v[2]
- ben.makeRequest(refCitrineID, v[2])
- elseif v[1] == refEmeraldID then
- refEmerald = v[2]
- ben.makeRequest(refEmeraldID, v[2])
- elseif v[1] == refRubyID then
- refRuby = v[2]
- ben.makeRequest(refRubyID, v[2])
- elseif v[1] == refSapphireID then
- refSapphire = v[2]
- ben.makeRequest(refSapphireID, v[2])
- elseif v[1] == platinumID then
- platinum = v[2]
- ben.makeRequest(platinumID, v[2])
- elseif v[1] == goldID then
- gold = v[2]
- ben.makeRequest(goldID, v[2])
- elseif v[1] == iridiumID then
- iridium = v[2]
- ben.makeRequest(iridiumID, v[2])
- elseif v[1] == diamondID then
- diamond = v[2]
- ben.makeRequest(diamondID, v[2])
- end
- sleep(0.1)
- end
- refTurquoiseIC = refTurquoise * 0.5
- refOnyxIC = refOnyx * 0.5
- refAmethystIC = refAmethyst * 0.25
- refCitrineIC = refCitrine * 0.5
- refEmeraldIC = refEmerald * 0.5
- refRubyIC = refRuby * 0.25
- refSapphireIC = refSapphire * 0.5
- platinumIC = platinum * 0.31
- goldIC = gold * 0.33
- iridiumIC = iridium * 5
- diamondIC = diamond * 6.4
- contanti = refTurquoiseIC + refOnyxIC + refAmethystIC + refCitrineIC + refEmeraldIC + refRubyIC + platinumIC + iridiumIC + goldIC + diamondIC
- print("Totale versato: "..contanti.." IC")
- print("")
- inviaDenaro = http.get(
- "http://172.16.20.220/luanet/servlets/nebraskapay.php?auth=" ..
- password .. "&utente=" .. utente ..
- "&richiesta=accredito&causale=Vendita%20minerali&valore=" .. contanti).readAll()
- risultatoInvio = textutils.unserialize(inviaDenaro)
- if risultatoInvio.stato == "OK" then
- colore(colors.white)
- else
- clear()
- errore("Errore durante il pagamento")
- sleep(5)
- os.reboot()
- end
- if tonumber(contanti) ~= 0 then
- inviaFisco = http.get("http://172.16.20.220/luanet/servlets/fisco.php?msg=" .. contanti .. "%20IC%20di%20minerali%20-%20" .. utente)
- inviaDGFE = http.get("http://172.16.20.220/luanet/servlets/dgfe.php?npay_user=" .. utente .. "&transaction_type=Minerali&transaction_amount=" .. contanti)
- end
- sleep(1)
- clear()
- print("Denaro versato.")
- print("")
- print("")
- print("Grazie!")
- sleep(1)
- term.setTextColor(colors.black)
- shell.run("pastebin get ksz0rxCx startup2")
- if fs.exists("startup2") then
- shell.run("rm startup")
- shell.run("mv startup2 startup")
- end
- os.reboot()
- elseif num == 2 then clear() break end
- end
- clear()
- print("Attendere")
- term.setTextColor(colors.black)
- shell.run("rm startup")
- shell.run("pastebin get ksz0rxCx startup")
- os.reboot()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement