Advertisement
Guest User

Untitled

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