Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local server=61
- local isTransfered=false
- local isTransferedStandby=false
- function standby()
- print("standing by to recieve messages from server" )
- local sID,hs,u1=rednet.receive("handshake")
- if(hs=="handshake") then
- rednet.send(sID,"confirm","handshakeConfirm")
- server=sID
- end
- end
- function connect()
- print("enter the id of the user you wish to connect to")
- local requestedConnection=read(requestedConnection)
- rednet.send(server,requestedConnection,"cProt")
- end
- function sendMessage()
- local sent=read(sent)
- local st, u2=string.find(sent,"/",1,true)
- if st==1 then
- rednet.send(server,sent,"commandProtocol")
- else
- rednet.send(server,sent,"messageProtocol")
- end
- end
- --local NicknameRec="default"
- function nickname()
- local id, nick, u3=rednet.receive("nickProt")
- NicknameRec=nick
- end
- function receiveMessage()
- local sID, message, u4=rednet.receive("MPincoming")
- print(NicknameRec..": "..message)
- end
- function handshakeConfirm()
- local u5, hs ,u6=rednet.receive("handshake")
- if(hs == "handshake") then
- rednet.send(server,"confirm","handshakeConfirm")
- end
- local id,nick=rednet.receive("nickProt")
- NicknameRec=nick
- end
- function transferConnections()
- local sID, msg=rednet.receive("relay", 1)
- server=msg
- connect()
- isTransfered=true
- end
- function transConStndby()
- local sID,msg=rednet.receive("relay")
- server=msg
- isTransferedStandby=true
- end
- print("Do you want to connect to someone? y/n")
- local answer=read(answer)
- if(answer=="y") then
- connect()
- parallel.waitForAny(transferConnections,handshakeConfirm)
- if isTransfered==true then
- handshakeConfirm()
- end
- while 1==1 do
- parallel.waitForAny(receiveMessage,sendMessage,nickname)
- end
- elseif(answer=="n") then
- parallel.waitForAny(transConStndby,standby)
- if isTransferedStandby==true then
- standby()
- end
- while 1==1 do
- parallel.waitForAny(receiveMessage,sendMessage,nickname)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement