Advertisement
Guest User

Untitled

a guest
May 5th, 2017
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.51 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.  
  39. bindKey( "F2", "down", CreateLoginWindow )
  40.  
  41. function closeWindow()
  42. guiSetVisible(wdwLogin, false)
  43. showCursor( false )
  44. end
  45.  
  46. addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()),
  47. function()
  48. CreateLoginWindow()
  49. lblDisplayArea = guiCreateLabel(0.100,0.800,0.800,0.100,"",true)
  50. guiLabelSetHorizontalAlign(lblDisplayArea,"center",true)
  51.  
  52. addEventHandler("onClientGUIClick",login,clientSubmitLogin,false)
  53. addEventHandler("onClientGUIClick",register,clientSubmitCreate,false)
  54. addEventHandler("onClientGUIAccepted",password,clientEnterLogin,false)
  55.  
  56. triggerServerEvent ("checkValidAct",localPlayer,localPlayerName)
  57. end
  58. )
  59.  
  60. function clientNewUserHandler() --Called when no account exists for this players name...
  61. newUser = true
  62. guiSetText(lblDisplayArea,"")
  63. if(tab2) then
  64. guiSetVisible(wdwLogin,true)
  65. guiBringToFront(edtPass) --Puts the cursor into the password box for typing...
  66. end
  67. showCursor(true)
  68. guiSetInputEnabled(true)
  69. end
  70. addEvent("clientNewUser",true)
  71. addEventHandler("clientNewUser",localRootElement,clientNewUserHandler)
  72.  
  73. function clientReturningUserHandler() --Called when there is an existing account for this player's name...
  74. newUser = false
  75. guiSetText(lblDisplayArea,"You are using a registered nickname - please enter your password.")
  76. if(wdwLogin) then
  77. guiSetVisible(wdwLogin,true)
  78. guiBringToFront(edtPass) --Puts the cursor into the password box for typing...
  79. end
  80. showCursor(true)
  81. guiSetInputEnabled(true)
  82. end
  83. addEvent("clientReturningUser",true)
  84. addEventHandler("clientReturningUser",localRootElement,clientReturningUserHandler)
  85.  
  86. function clientEnterLogin()
  87. if(newUser) then
  88. triggerServerEvent("SubmitCreate",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  89. else
  90. triggerServerEvent("SubmitLogin",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  91. end
  92. end
  93.  
  94. function clientSubmitLogin(button)
  95. if(button == "left") then
  96. if(newUser) then
  97. triggerServerEvent("SubmitCreate",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  98. else
  99. triggerServerEvent("SubmitLogin",localRootElement,guiGetText(edtUser),guiGetText(edtPass))
  100. end
  101. end
  102. end
  103.  
  104. function clientDisplayAreaHandler(theMessage)
  105. guiSetText(lblDisplayArea,theMessage)
  106. end
  107. addEvent("clientDisplayArea",true)
  108. addEventHandler("clientDisplayArea",localRootElement,clientDisplayAreaHandler)
  109.  
  110. function clientWrongPasswordHandler(theMessage)
  111. passwordAttempts = passwordAttempts + 1
  112. if(passwordAttempts > 3) then
  113. guiSetText(lblDisplayArea,"Too many incorrect password attempts. Please disconnect.")
  114. destroyElement(wdwLogin)
  115. triggerServerEvent("removePlayer",localPlayer)
  116. end
  117. end
  118. addEvent("clientWrongPassword",true)
  119. addEventHandler("clientWrongPassword",localRootElement,clientWrongPasswordHandler)
  120.  
  121. function clientLoginSuccessHandler()
  122. guiSetInputEnabled(false)
  123. destroyElement(wdwLogin)
  124. destroyElement(lblDisplayArea)
  125. wdwLogin = nil
  126. newUser = nil
  127. lblDisplayArea = nil
  128. passwordAttempts = nil
  129. localPlayer = nil
  130. localPlayerName = nil
  131. localRootElement = nil
  132. showCursor(false)
  133. end
  134. addEvent("clientLoginSuccess",true)
  135. addEventHandler("clientLoginSuccess",localRootElement,clientLoginSuccessHandler)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement