Advertisement
Guest User

Untitled

a guest
May 2nd, 2017
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.45 KB | None | 0 0
  1. local localPlayer = getLocalPlayer()
  2. local localPlayerName = getPlayerName(localPlayer)
  3. local localRootElement = getRootElement()
  4. local newUser
  5. local passwordAttempts = 0
  6.  
  7.  
  8. function CreateLoginWindow()
  9. wdwLogin = guiCreateWindow(226,146,372,233,"[Admin Login System]",false)
  10. guiWindowSetMovable(wdwLogin,false)
  11. guiWindowSetSizable(wdwLogin,false)
  12. tabpanel = guiCreateTabPanel(0.0242,0.0858,0.9489,0.8755,true,wdwLogin)
  13. tab1 = guiCreateTab("Login",tabpanel)
  14. login = guiCreateButton(0.1000,0.8611,0.2436,0.1167,"Login",true,tab1)
  15. username = guiCreateLabel(0.0113,0.1167,0.3768,0.15,"UserName:",true,tab1)
  16. guiLabelSetColor(username,255,255,255)
  17. guiLabelSetVerticalAlign(username,"top")
  18. guiLabelSetHorizontalAlign(username,"left",false)
  19. guiSetFont(username,"default-bold-small")
  20. password = guiCreateLabel(0.0113,0.2889,0.3768,0.15,"Password:",true,tab1)
  21. guiLabelSetColor(password,255,255,255)
  22. guiLabelSetVerticalAlign(password,"top")
  23. guiLabelSetHorizontalAlign(password,"left",false)
  24. guiSetFont(password,"default-bold-small")
  25. username = guiCreateEdit(0.2266,0.1,0.3598,0.1389,localPlayerName,true,tab1)
  26. password = guiCreateEdit(0.2266,0.2611,0.3598,0.1389,"",true,tab1)
  27. Canel = guiCreateButton( 0.4, 0.85, 0.20, 0.15, "Cancel", true,tab1 )
  28. guiEditSetMasked(password,true)
  29.  
  30. tab2 = guiCreateTab("Info",tabpanel)
  31.  
  32.  
  33. guiSetVisible(wdwLogin,false)
  34.  
  35. addEventHandler("onClientGUIClick", Canel, closeWindow)
  36.  
  37. end
  38. function closeWindow()
  39. guiSetVisible(wdwLogin, false)
  40. end
  41.  
  42. addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()),
  43. function()
  44. CreateLoginWindow()
  45. lblDisplayArea = guiCreateLabel(0.100,0.800,0.800,0.100,"",true)
  46. guiLabelSetHorizontalAlign(lblDisplayArea,"center",true)
  47.  
  48. addEventHandler("onClientGUIClick",login,clientSubmitLogin,false)
  49. addEventHandler("onClientGUIClick",register,clientSubmitCreate,false)
  50. addEventHandler("onClientGUIAccepted",password,clientEnterLogin,false)
  51.  
  52. triggerServerEvent ("checkValidAct",localPlayer,localPlayerName)
  53. end
  54. )
  55.  
  56. function clientNewUserHandler() --Called when no account exists for this players name...
  57. newUser = true
  58. guiSetText(lblDisplayArea,"")
  59. if(tab2) then
  60. guiSetVisible(wdwLogin,true)
  61. guiBringToFront(edtPass) --Puts the cursor into the password box for typing...
  62. end
  63. showCursor(true)
  64. guiSetInputEnabled(true)
  65. end
  66. addEvent("clientNewUser",true)
  67. addEventHandler("clientNewUser",localRootElement,clientNewUserHandler)
  68.  
  69. function clientReturningUserHandler() --Called when there is an existing account for this player's name...
  70. newUser = false
  71. guiSetText(lblDisplayArea,"You are using a registered nickname - please enter your password.")
  72. if(wdwLogin) then
  73. guiSetVisible(wdwLogin,true)
  74. guiBringToFront(edtPass) --Puts the cursor into the password box for typing...
  75. end
  76. showCursor(true)
  77. guiSetInputEnabled(true)
  78. end
  79. addEvent("clientReturningUser",true)
  80. addEventHandler("clientReturningUser",localRootElement,clientReturningUserHandler)
  81.  
  82. function clientEnterLogin()
  83. if(newUser) then
  84. triggerServerEvent("SubmitCreate",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  85. else
  86. triggerServerEvent("SubmitLogin",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  87. end
  88. end
  89.  
  90. function clientSubmitLogin(button)
  91. if(button == "left") then
  92. if(newUser) then
  93. triggerServerEvent("SubmitCreate",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  94. else
  95. triggerServerEvent("SubmitLogin",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  96. end
  97. end
  98. end
  99.  
  100. function clientDisplayAreaHandler(theMessage)
  101. guiSetText(lblDisplayArea,theMessage)
  102. end
  103. addEvent("clientDisplayArea",true)
  104. addEventHandler("clientDisplayArea",localRootElement,clientDisplayAreaHandler)
  105.  
  106. function clientWrongPasswordHandler(theMessage)
  107. passwordAttempts = passwordAttempts + 1
  108. if(passwordAttempts > 3) then
  109. guiSetText(lblDisplayArea,"Too many incorrect password attempts. Please disconnect.")
  110. destroyElement(wdwLogin)
  111. triggerServerEvent("removePlayer",localPlayer)
  112. end
  113. end
  114. addEvent("clientWrongPassword",true)
  115. addEventHandler("clientWrongPassword",localRootElement,clientWrongPasswordHandler)
  116.  
  117. function clientLoginSuccessHandler()
  118. guiSetInputEnabled(false)
  119. destroyElement(wdwLogin)
  120. destroyElement(lblDisplayArea)
  121. wdwLogin = nil
  122. newUser = nil
  123. lblDisplayArea = nil
  124. passwordAttempts = nil
  125. localPlayer = nil
  126. localPlayerName = nil
  127. localRootElement = nil
  128. showCursor(false)
  129. end
  130. addEvent("clientLoginSuccess",true)
  131. addEventHandler("clientLoginSuccess",localRootElement,clientLoginSuccessHandler)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement