wuiyang

Login client

Jan 13th, 2013
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 8.77 KB | None | 0 0
  1. --changelog
  2. --CURRENT: -  v0.3.4 - Security question!
  3. --v0.3.3   -  updated something
  4. --v0.3.2   -  Added line 18 - 24, Fixed error of nil, Fixed Lot of thing
  5. --v0.3.1   -  Fixed serverID
  6. --v0.3     -  NICKNAME!
  7. --v0.2.1   -  Fixed serverID
  8. --v0.2     -  allow to change username & password
  9. --v0.1     -  Published
  10.  
  11. --Pre-Pre-Alpla version
  12. --v0.05    -  Fixed some bug
  13. --v0.01    -  Born
  14.  
  15. serverID = --ID HERE
  16.  
  17. local function enter(username)
  18. local nick
  19. repeat
  20. rednet.send(serverID, "user")
  21. sleep(0.5)
  22. rednet.send(serverID, username)
  23. sleep(0.5)
  24. rednet.send(serverID, "check")
  25. sleep(0.5)
  26. rednet.send(serverID, "could")
  27. local ID, MSG, DISTANCE = rednet.receive(10)
  28. if MSG == "nope" or MSG == nil or MSG == "" then
  29. print("Hello, "..username)
  30. elseif MSG == "yes" then
  31. local ID, MSG, DISTANCE = rednet.receive(10)
  32. nick = MSG
  33. print("Hello, "..nick)
  34. end
  35. print("(1)Edit username")
  36. print("(2)Edit password")
  37. print("(3)Edit nick")
  38. print("(4)Edit Security question")
  39. print("(5)Logout")
  40. print("1, 2, 3 ,4 or 5?")
  41. print(">")
  42. term.setCursorPos(2, 8)
  43. local num = read()
  44.  
  45. if num == "1" then
  46. local nameuser
  47. repeat
  48. term.setCursorPos(1, 5)
  49. print("                                                  ")
  50. print("                                                  ")
  51. term.setCursorPos(1, 3)
  52. print("New username:")
  53. print(">                                                 ")
  54. term.setCursorPos(2, 4)
  55. nameuser = read()
  56. term.setCursorPos(1, 5)
  57. print("Need to change? n for no, y for yes")
  58. change = read()
  59. until change == "n"
  60. term.setCursorPos(1, 5)
  61. print("                                                  ")
  62. print("                                                  ")
  63. term.setCursorPos(1, 5)
  64. print("Please wait...")
  65. rednet.send(serverID, "user")
  66. sleep(0.5)
  67. rednet.send(serverID, username)
  68. sleep(0.5)
  69. rednet.send(serverID, "user2")
  70. sleep(0.5)
  71. rednet.send(serverID, nameuser)
  72. sleep(0.5)
  73. rednet.send(serverID, "cn")
  74. term.setCursorPos(3, 6)
  75. print("Comfirming...")
  76. sleep(0.5)
  77. rednet.send(serverID, "could")
  78. local ID, MSG, DISTANCE = rednet.receive(10)
  79. if MSG == "finish" then
  80. does = "no"
  81. term.setCursorPos(1, 8)
  82. print("Please login with your new username.")
  83. sleep(3)
  84. dooo = "yes"
  85. elseif MSG == "nou" then
  86. term.setCursorPos(1, 8)
  87. print("New username exist.")
  88. sleep(2)
  89. else
  90. term.setCursorPos(1, 8)
  91. print("Server closed.")
  92. sleep(2)
  93. end
  94.  
  95. elseif num == "2" then
  96. local password,wordpass
  97. repeat
  98. term.setCursorPos(1, 7)
  99. print("                                                  ")
  100. print("                                                  ")
  101. term.setCursorPos(1, 3)
  102. print("Old password:")
  103. print(">                                              ")
  104. print("New password:")
  105. print(">                                              ")
  106. term.setCursorPos(2, 4)
  107. password = read("x")
  108. term.setCursorPos(2, 6)
  109. wordpass = read("x")
  110. term.setCursorPos(1, 7)
  111. print("Need to change? n for no, y for yes")
  112. term.setCursorPos(1, 8)
  113. change = read()
  114. until change == "n"
  115. term.setCursorPos(1, 7)
  116. print("                                                  ")
  117. print("                                                  ")
  118. term.setCursorPos(1, 7)
  119. print("Please wait...")
  120. rednet.send(serverID, "user")
  121. sleep(0.5)
  122. rednet.send(serverID, username)
  123. sleep(0.5)
  124. rednet.send(serverID, "pass")
  125. sleep(0.5)
  126. rednet.send(serverID, password)
  127. sleep(0.5)
  128. rednet.send(serverID, "pass2")
  129. sleep(0.5)
  130. rednet.send(serverID, wordpass)
  131. sleep(0.5)
  132. rednet.send(serverID, "cp")
  133. term.setCursorPos(1, 8)
  134. print("Comfirming...")
  135. sleep(0.5)
  136. rednet.send(serverID, "could")
  137. local ID, MSG, DISTANCE = rednet.receive(10)
  138. if MSG == "finish" then
  139. term.setCursorPos(1, 7)
  140. print("Changed password.")
  141. print("Please login with your new password.")
  142. sleep(3)
  143. dooo = "yes"
  144. elseif MSG == "wrongp" then
  145. term.setCursorPos(1, 7)
  146. print("Wrong Old password.")
  147. sleep(2)
  148. else
  149. term.setCursorPos(1, 7)
  150. print("Server closed.")
  151. sleep(2)
  152. end
  153.  
  154. elseif num == "3" then
  155. local nick2
  156. repeat
  157. term.setCursorPos(1, 5)
  158. print("                                                  ")
  159. print("                                                  ")
  160. term.setCursorPos(1, 3)
  161. print("Nickname:")
  162. print(">                                               ")
  163. term.setCursorPos(2, 4)
  164. nick2 = read()
  165. term.setCursorPos(1, 5)
  166. print("Need to change? n for no, y for yes")
  167. term.setCursorPos(1, 6)
  168. change = read()
  169. until change == "n"
  170. term.setCursorPos(1, 5)
  171. print("                                                  ")
  172. print("                                                  ")
  173. term.setCursorPos(1, 5)
  174. print("Please wait...")
  175. rednet.send(serverID, "user")
  176. sleep(0.5)
  177. rednet.send(serverID, username)
  178. sleep(0.5)
  179. rednet.send(serverID, "nick")
  180. sleep(0.5)
  181. rednet.send(serverID, nick2)
  182. sleep(0.5)
  183. rednet.send(serverID, "nc")
  184. term.setCursorPos(1, 6)
  185. print("Comfirming...")
  186. sleep(0.5)
  187. rednet.send(serverID, "could")
  188. local ID, MSG, DISTANCE = rednet.receive(10)
  189. if MSG == "finishn" then
  190. does = "no"
  191. term.setCursorPos(1, 8)
  192. print("You have changed your nickname.")
  193. sleep(3)
  194. elseif MSG == "non" then
  195. term.setCursorPos(1, 8)
  196. print("New nickname exist.")
  197. sleep(2)
  198. else
  199. term.setCursorPos(1, 7)
  200. print("Server closed.")
  201. sleep(2)
  202. end
  203.  
  204.  
  205. elseif num == "4" then
  206. drawmenu()
  207. local question,answer
  208. repeat
  209. term.setCursorPos(1, 7)
  210. print("|                                                |")
  211. print("|                                                |")
  212. term.setCursorPos(1, 3)
  213. print("Security Question:")
  214. print(">                                              |")
  215. print("Answer:")
  216. print(">                                              |")
  217. term.setCursorPos(2, 4)
  218. question = read()
  219. term.setCursorPos(2, 6)
  220. answer = read()
  221. term.setCursorPos(1, 7)
  222. print("Need to change? n for no, y for yes")
  223. term.setCursorPos(1, 8)
  224. change = read()
  225. until change == "n"
  226. term.setCursorPos(1, 7)
  227. print("|                                                |")
  228. print("|                                                |")
  229. term.setCursorPos(1, 7)
  230. print("Please wait...")
  231. rednet.send(serverID, "user")
  232. sleep(0.5)
  233. rednet.send(serverID, username)
  234. sleep(0.5)
  235. rednet.send(serverID, "ques")
  236. sleep(0.5)
  237. rednet.send(serverID, question)
  238. sleep(0.5)
  239. rednet.send(serverID, "ans")
  240. sleep(0.5)
  241. rednet.send(serverID, answer)
  242. sleep(0.5)
  243. rednet.send(serverID, "secur")
  244. print("Comfirming...")
  245. sleep(0.5)
  246. rednet.send(serverID, "could")
  247. local ID, MSG, DISTANCE = rednet.receive(10)
  248. if MSG == "qdone" then
  249. print("Updated Security Question")
  250. sleep(3)
  251. else
  252. print("Server Closed")
  253. sleep(2)
  254. end
  255.  
  256.  
  257. elseif num == "5" then
  258. drawmenu()
  259. term.setCursorPos(3, 3)
  260. if nick == nil or nick == "" then
  261. print("Bye, "..username)
  262. else
  263. print("Bye, "..nick)
  264. end
  265. sleep(2)
  266. dooo = "yes"
  267. end
  268.  
  269. local function login(rl)
  270. local username,password
  271. repeat
  272. term.setCursorPos(1, 9)
  273. print("                                                  ")
  274. print("                                                  ")
  275. term.setCursorPos(1, 7)
  276. print("Username:                                       ")
  277. print("Password:                                       ")
  278.  
  279. term.setCursorPos(10, 7)
  280. username = read()
  281. term.setCursorPos(10, 8)
  282. password = read("x")
  283. term.setCursorPos(1, 9)
  284. print("need to change? y for yes, n for no")
  285. term.setCursorPos(1, 10)
  286. local change = read()
  287.  
  288. until change == "n"
  289. term.setCursorPos(1, 9)
  290. print("                                                  ")
  291. print("                                                  ")
  292. term.setCursorPos(1, 10)
  293. print("Please wait while we sending your username..")
  294. rednet.send(serverID, "user")
  295. sleep(1)
  296. print("Done.")
  297. rednet.send(serverID, username)
  298. sleep(0.5)
  299. print("Please wait while we sending your password..")
  300. rednet.send(serverID, "pass")
  301. sleep(1)
  302. print("Done.")
  303. rednet.send(serverID, password)
  304. sleep(0.5)
  305. rednet.send(serverID, rl)
  306. sleep(0.5)
  307. rednet.send(serverID, "could")
  308. term.setCursorPos(3, 14)
  309. print("Completed.")
  310.  
  311. local ID, MSG, DISTANCE = rednet.receive(10)
  312. if MSG == "complete" then
  313. term.setCursorPos(1, 15)
  314. print("You have registered.")
  315. sleep(3)
  316.  
  317. elseif MSG == "correct" then
  318. term.setCursorPos(1, 15)
  319. print("You have logged in.")
  320. sleep(3)
  321. enter(username)
  322.  
  323. elseif MSG == "pass" then
  324. term.setCursorPos(1, 15)
  325. print("Invalid password.")
  326. sleep(3)
  327.  
  328. elseif MSG == "wrong" then
  329. term.setCursorPos(1, 15)
  330. print("Invalid username.")
  331. sleep(3)
  332.  
  333. elseif MSG == "no" then
  334. term.setCursorPos(1, 15)
  335. print("Username exist.")
  336. sleep(3)
  337.  
  338. else
  339. term.setCursorPos(1, 15)
  340. print("Server closed.")
  341. sleep(3)
  342.  
  343. end
  344. end
  345.  
  346. term.setCursorPos(1, 1)
  347. print("Register or login?(type r/l)")
  348. term.setCursorPos(1, 2)
  349. rl = read()
  350. term.setCursorPos(1, 4)
  351. if rl == "r" then
  352. print("register:")
  353. login(rl)
  354.  
  355. elseif rl == "l" then
  356. print("login:")
  357. login(rl)
  358.  
  359. else
  360. print("what is "..rl.."?")
  361. term.setCursorPos(3, 7)
  362. print("r for register, l for login")
  363. term.setCursorPos(3, 8)
  364. print("back to menu")
  365. sleep(1)
  366. end
Advertisement
Add Comment
Please, Sign In to add comment