Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- TP Relay v1
- local side=nil
- for k,v in pairs(rs.getSides()) do
- if peripheral.getType(v)=='modem' then
- rednet.open(v)
- break
- end
- end
- function servRegister() --sending
- rednet.broadcast("tpRegister")
- os.sleep(0.1)
- serv, type = rednet.receive()
- file = fs.open("serv", "w")
- file.write(serv)
- file:close()
- if type == "true" then
- term.clear()
- term.setCursorPos(1,1)
- term.write("Type the number of this level: ")
- level = read()
- --term.clear()
- term.setCursorPos(1,1)
- rednet.send(serv, level)
- else
- os.sleep(0.2)
- rednet.send(serv, "true")
- end
- id, message = rednet.receive()
- if id == serv and message == "ext" then
- --term.clear()
- term.setCursorPos(1,1)
- print("registered with relay")
- elseif id == serv and message == "true" then
- --term.clear()
- term.setCursorPos(1,1)
- --print("registered with server")
- end
- end
- function tpRegister() --receiving
- print("got: "..message.." from "..id)
- os.sleep(0.2)
- rednet.send(id, "ext")
- os.sleep(0.1)
- id, message = rednet.receive()
- --print("got: "..message.." from "..id)
- file = fs.open("ext", "w")
- file.write(id)
- file:close()
- os.sleep(.1)
- rednet.send(id, "ext")
- end
- function conRegister()
- os.sleep(0.2)
- rednet.send(serv, "update")
- os.sleep(0.1)
- serv, message = rednet.receive()
- --print(message.." sent to "..id)
- rednet.send(id, message)
- end
- result = fs.exists("serv")
- if result == true then
- file = io.open("serv", "r")
- serv = file.read()
- file:close()
- serv = tonumber(serv)
- else
- servRegister()
- end
- result = fs.exists("ext")
- if result == true then
- file = io.open("ext", "r")
- ext = file.read()
- file:close()
- ext = tonumber(ext)
- end
- while true do
- id, message = rednet.receive()
- print("got first message: "..message.." from: "..id)
- if message == "true" and id == serv then
- print("got tp command from serv")
- rednet.send(ext, "true")
- elseif message == "teleport" then
- print("teleporting")
- rednet.send(serv, message)
- print("sent to server: "..message)
- dud, message = rednet.receive()
- print("got serv responce of: "..message.." from: "..dud)
- rednet.send(id, message)
- print("sent to ext: "..message)
- dud, message = rednet.receive()
- print("telling the server: "..message.." from: "..dud)
- rednet.send(serv, message)
- elseif message == "tpRegister" and fs.exists("ext") == false then
- print("got register")
- tpRegister()
- elseif message == "conRegister" or "update" then
- conRegister()
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement