Alyssa

Quest-Browser

Aug 9th, 2013
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.24 KB | None | 0 0
  1. founds = nil
  2. sidec = 0
  3. serverid = 784
  4. slash = "/"
  5. version = 0.14
  6. function receive()
  7.  marg={os.pullEvent()}
  8.  if marg[1] == "modem_message" then
  9.   return true
  10.  else
  11.   return false
  12.  end
  13. end
  14.  
  15. function getside()
  16.  return marg[2]
  17. end
  18.  
  19. function getall()
  20.  return marg
  21. end
  22.  
  23. function getfromchan()
  24.  return marg[3]
  25. end
  26.  
  27. function getreplychan()
  28.  return marg[4]
  29. end
  30.  
  31. function getmsg()
  32.  return marg[5]
  33. end
  34.  
  35. function getdistance()
  36.  return marg[6]
  37. end
  38.  
  39. function open(side, chan)
  40.  if peripheral.isPresent(side) and peripheral.getType(side) == "modem" then
  41.   local modems = peripheral.wrap(side)
  42.   modems.open(chan)
  43.  else
  44.   print("Modem not present on "..side.."")
  45.  end
  46. end
  47.  
  48. function transmit(chan, replychan, msgtosend)
  49.  local newchan = tonumber(chan)
  50.  local newreplychan = tonumber(replychan)
  51.  sidepresent = nil
  52.  for c = 1, 7 do
  53.   if c == 1 then
  54.    sidetocheck = "right"
  55.   end
  56.   if c == 2 then
  57.    sidetocheck = "left"
  58.   end
  59.   if c == 3 then
  60.    sidetocheck = "back"
  61.   end
  62.   if c == 4 then
  63.    sidetocheck = "front"
  64.   end
  65.   if c == 5 then
  66.    sidetocheck = "top"
  67.   end
  68.   if c == 6 then
  69.    sidetocheck = "bottom"
  70.   end
  71.   if c == 7 then
  72.    if sidepresent == nil then
  73.     return false
  74.    end
  75.   else
  76.    if peripheral.isPresent(sidetocheck) and peripheral.getType(sidetocheck) == "modem" then
  77.     sidepresent = sidetocheck
  78.    end
  79.   end
  80.  end
  81.  local modems = peripheral.wrap(sidepresent)
  82.  modems.transmit(newchan, newreplychan, msgtosend)
  83. end
  84.  
  85. --function seperate()
  86. -- toreturn = {}
  87. --  for a, b in string.gmatch(marg[5], "(%S+)") do
  88. --   toreturn[a] = b
  89. --  end
  90. -- return toreturn
  91. --end
  92. while not founds do
  93.  sidec = sidec +1
  94.  if sidec == 1 then
  95.   sides = "right"
  96.  elseif sidec == 2 then
  97.   sides = "left"
  98.  elseif sidec == 3 then
  99.   sides = "back"
  100.  elseif sidec == 4 then
  101.   sides = "front"
  102.  elseif sidec == 5 then
  103.   sides = "top"
  104.  elseif sidec == 6 then
  105.   sides = "bottom"
  106.  else
  107.   print("Could not find side!")
  108.   founds = true
  109.   didfind = false
  110.  end
  111.  if peripheral.getType(sides) == "modem" then
  112.   side = sides
  113.   didfind = true
  114.   open(side, 784)
  115.  end
  116. end
  117. connected = false
  118. if didfind == true then
  119.  while not connected == true do
  120.   sleep(0.5)
  121.   transmit(782, 784, "QUEST-CLIENT-"..version.." login ping antihack")
  122.   if receive() then
  123.    antihack = getdistance()
  124.    connected = true
  125.   end
  126.  end
  127. end
  128. if didfind == true then
  129.  term.clear()
  130.  term.setCursorPos(1,1)
  131.  print("Have you registered? y/n, yes/no")
  132.  hr = read()
  133.  if not hr == "y" or hr == "yes" then
  134.   term.clear()
  135.   term.setCursorPos(1,1)
  136.   print("Registering a user, type your desired username")
  137.   print("And password, do NOT use your minecraft password")
  138.   print("Rednet is NOT secure!")
  139.   term.setCursorPos(1,4)
  140.   write("Username:")
  141.   term.setCursorPos(11,4)
  142.   usern = read()
  143.   term.setCursorPos(1,5)
  144.   write("Password:")
  145.   term.setCursorPos(11,5)
  146.   pass1 = read()
  147.   term.setCursorPos(1, 6)
  148.   write("Confirm Password:")
  149.   term.setCursorPos(19,6)
  150.   pass2 = read()
  151.   if not pass1 == pass2 then
  152.    print("Passwords do not match!")
  153.    redirect("quest.play/quest")
  154.   end
  155.   print("Sending data to server")
  156.   gotregist = false
  157.   while gotregist ~= true do
  158.    sleep(1)
  159.    transmit(782,784,"QUEST-CLIENT-"..version.." register "..usern.." "..pass2.."")
  160.    if receive() then
  161.     msg = getmsg()
  162.     if msg == "QUEST-SERVER-"..version.." REGISTERED "..antihack.."" then
  163.      print("Register success!")
  164.      print("Reloading Page")
  165.      redirect("quest.play/quest")
  166.     end
  167.    end
  168.   end
  169.   else
  170.    print("please enter your username")
  171.    username = read()
  172.    print("Please enter your password")
  173.    pass = read()
  174.    transmit(782,784, "QUEST-CLIENT-"..version.." request login permission")
  175.    sleep(0.1)
  176.    transmit(782,serverid, "QUEST-CLIENT-"..version.." login ".. username .. " "..pass.."")
  177.    if receive() then
  178.     msg = getmsg()
  179.     if msg == "QUEST-SERVER-"..version.." LOGIN-INCORRECT "..antihack.."" then
  180.      print("Incorrect password")
  181.      sleep(2)
  182.      redirect("quest.play/quest")
  183.     elseif msg == "QUEST-SERVER-"..version.." LOGIN-CORRECT "..antihack.."" then
  184.      print("Correct password")
  185.      runclient = "runclient"
  186.     else
  187.      print("Error")
  188.      sleep(2)
  189.      redirect("quest.play/quest")
  190.     end
  191.    end
  192.   end
  193.  end
Advertisement
Add Comment
Please, Sign In to add comment