Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --SimNetSystem by Simlor (http://www.computercraft.info/forums2/index.php?/user/55655-simlor/)
- SichereServerID = 2 --Frage nach der richtigen ID
- rednet.open("back") --back,front,top,left,right
- --Im Normalfall NICHT aendern!
- name = nil
- pass = nil
- --Funktionen
- --Sucher
- function SimAnfrager(SAserverid, SAnachricht) --Server!
- TC(16)
- print("")
- print("Bitte warte...")
- SaveID = math.random(111111111,999999999)
- print("")
- print("Deine SaveID ist: "..SaveID)
- print("")
- rednet.send(SAserverid, SAnachricht, SaveID)
- print("Warte auf eine Antwort des Servers...") --SV = SimVerteiler
- ServerID = nil
- antwort = nil
- Feedback = false
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- print("Warte auf eine Antwort des Servers (2/3)...")
- ServerID = nil
- antwort = nil
- rednet.send(SAserverid, SAnachricht, SaveID)
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- print("Warte auf eine Antwort des Servers (3/3)...")
- ServerID = nil
- antwort = nil
- rednet.send(SAserverid, SAnachricht, SaveID)
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- TC(16384)
- print("")
- print("Der Server antwortet nicht")
- else
- Feedback = true
- end
- else
- Feedback = true
- end
- else
- Feedback = true
- end
- end
- --Clear
- function Clear()
- term.clear()
- term.setCursorPos(1,1)
- end
- --Set Cursorposition
- function CP(x,y)
- term.setCursorPos(x,y)
- end
- --Set Background Color
- function BC(farbe)
- term.setBackgroundColor(farbe)
- end
- --Set Text Color
- function TC(farbe)
- term.setTextColor(farbe)
- end
- --TextTool
- function TextTool()
- TC(128)
- print("")
- print("--Text--Text--Text--")
- print("")
- while true do
- ServerID, eingabe, SaveID = rednet.receive(SaveID, 3)
- if eingabe == "end" or eingabe == nil then
- break
- else
- TC(16)
- print(eingabe)
- end
- end
- TC(128)
- print("")
- print("--Text--Text--Text--")
- end
- --System
- BC(32768)
- Clear()
- TC(8)
- print("SimUserTool")
- TC(128)
- print("-----------")
- print("")
- TC(16)
- print("Gebe 'help' ein, um eine")
- print("Command-Liste zu erhalten.")
- while true do
- print(" ")
- TC(128)
- write("> ")
- TC(512)
- eingabe = read()
- print(" ")
- --Commands
- if eingabe == "help" then
- TC(16)
- print(" help")
- print(" connect")
- print(" getlist")
- print(" exit")
- --
- elseif eingabe == "connect" then
- write("SN: ") -- SN = Server Name
- TC(512)
- eingabe = read()
- if eingabe == nil or eingabe == "" then
- TC(16384)
- print("")
- print("Bitte gebe einen SN ein.")
- else
- TC(16)
- print("")
- print("Bitte warte...")
- SaveID = math.random(111111111,999999999)
- print("")
- print("Deine SaveID ist: "..SaveID)
- print("")
- rednet.send(SichereServerID, "connect", SaveID)
- print("Warte auf eine Antwort des SV...") --SV = SimVerteiler
- ServerID = nil
- antwort = nil
- Feedback = false
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- print("Warte auf eine Antwort des SV (2/3)...")
- ServerID = nil
- antwort = nil
- rednet.send(SichereServerID, "connect", SaveID)
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- print("Warte auf eine Antwort des SV (3/3)...")
- ServerID = nil
- antwort = nil
- rednet.send(SichereServerID, "connect", SaveID)
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- Feedback = false
- TC(16384)
- print("")
- print("Der SV antwortet nicht")
- else
- Feedback = true
- end
- else
- Feedback = true
- end
- else
- Feedback = true
- end
- end
- if Feedback == true then
- rednet.send(ServerID, eingabe, SaveID)
- AlteServerID, ServerID = rednet.receive(SaveID,3)
- if ServerID == "false" then
- print("")
- TC(16384)
- print("Der Server wurde nicht gefunden")
- Feedback = false
- else
- TC(32)
- print("")
- print("Weiterleitung")
- TC(16)
- print("")
- ServerID = (ServerID+0)
- newServerID = ServerID
- print("NS: "..eingabe)
- print("ID: "..ServerID)
- NSconsole = eingabe
- --Interne Console
- SimAnfrager(ServerID, "connect")
- end
- if Feedback == true then
- TC(32)
- print("")
- print("Der Server antwortet und es")
- print("werden nun alle Daten gesendet...")
- CommandList = {}
- table.insert(CommandList, "help")
- table.insert(CommandList, "login")
- while true do
- antwort = nil
- ServerID, antwort = rednet.receive(SaveID,3)
- if antwort == "end" or antwort == nil then
- table.insert(CommandList, "exit")
- alleC = table.getn(CommandList)
- break
- else
- table.insert(CommandList, antwort)
- end
- end
- TC(16)
- print("")
- print("Server Console")
- SC = false
- while true do
- print(" ")
- TC(512)
- write(NSconsole)
- TC(128)
- write("> ")
- TC(512)
- eingabe = read()
- print(" ")
- C = 0
- while true do
- C = (C+1)
- if eingabe == "login" then
- print("")
- TC(16)
- write("username: ")
- name = read()
- write("passwort: ")
- pass = read("#")
- print("")
- print("ACHTUNG: Es findet keine Live-Server-Ueberpruefung statt")
- break
- elseif eingabe == "exit" then
- print("")
- TC(16)
- print("Die Server Console wurde verlassen")
- SC = true
- break
- elseif eingabe == "help" then
- print("")
- TC(16)
- C = 0
- while true do
- C = (C+1)
- print(" "..CommandList[C])
- if C == (table.getn(CommandList)) then
- break
- end
- end
- break
- elseif CommandList[C] == eingabe then
- TC(16)
- print("")
- print("Bitte warte...")
- SaveID = math.random(111111111,999999999)
- print("")
- print("Deine SaveID ist: "..SaveID)
- print("")
- ServerID = newServerID
- rednet.send(ServerID, eingabe, SaveID)
- antwort = nil
- ServerID, antwort = rednet.receive(SaveID,3)
- if antwort == "login" then
- print("")
- TC(16)
- print("Login gestartet...")
- if pass == nil or name == nil then
- TC(16384)
- print("")
- print("Bitte logge dich zuerst ein")
- else
- print("")
- TC(16)
- print("Sende die Login Daten...")
- rednet.send(ServerID, name, SaveID)
- rednet.send(ServerID, pass, SaveID)
- antwort = nil
- ServerID, antwort = rednet.receive(SaveID,3)
- if antwort == "false" then
- TC(16384)
- print("")
- print("Das Login ist fehlgeschlagen")
- elseif antwort == "true" then
- TC(32)
- print("")
- print("Der Befehl wurde ausgefuehrt")
- elseif antwort == "text" then
- TextTool()
- else
- TC(16384)
- print("")
- print("Es gab einen Fehler")
- end
- end
- elseif antwort == "true" then
- TC(32)
- print("")
- print("Der Befehl wurde ausgefuehrt")
- elseif antwort == "text" then
- TextTool()
- else
- TC(16384)
- print("")
- print("Der Server antwortet nicht oder falsch")
- end
- break
- elseif C == (table.getn(CommandList)) then
- TC(16384)
- print("Der Command wurde nicht gefunden: '"..eingabe.."'")
- break
- end
- end
- if SC == true then
- break
- end
- end
- end
- --ende Interne Console
- end
- --
- elseif eingabe == "getlist" then
- TC(16)
- print("")
- print("Bitte warte...")
- SaveID = math.random(111111111,999999999)
- print("")
- print("Deine SaveID ist: "..SaveID)
- print("")
- rednet.send(SichereServerID, "getlist", SaveID)
- print("Warte auf eine Antwort des SV...") --SV = SimVerteiler
- ServerID = nil
- antwort = nil
- Feedback = false
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- print("Warte auf eine Antwort des SV (2/3)...")
- ServerID = nil
- antwort = nil
- rednet.send(SichereServerID, "getlist", SaveID)
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- print("Warte auf eine Antwort des SV (3/3)...")
- ServerID = nil
- antwort = nil
- rednet.send(SichereServerID, "getlist", SaveID)
- ServerID, antwort = rednet.receive(SaveID, 3)
- if not ServerID then
- TC(16384)
- print("")
- print("Der SV antwortet nicht")
- else
- Feedback = true
- end
- else
- Feedback = true
- end
- else
- Feedback = true
- end
- if Feedback == true then
- TC(32)
- print("")
- print("Server Liste")
- print("")
- while true do
- antwort = nil
- ServerID, antwort = rednet.receive(SaveID,3)
- if antwort == nil or antwort == "end" then
- break
- else
- TC(16)
- print(" "..antwort)
- end
- end
- end
- --
- elseif eingabe == "exit" then
- TC(16)
- print("Bitte warte...")
- Clear()
- TC(1)
- BC(32768)
- break
- --
- else
- TC(16384)
- print("Der Command wurde nicht gefunden: '"..eingabe.."'")
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement