Advertisement
Guest User

Untitled

a guest
Feb 6th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 8.16 KB | None | 0 0
  1. local sX, sY = guiGetScreenSize()
  2. local startX, startY = (sX - 320)/2, (sY - 310)/2
  3. najechanaOpcja = -1
  4.  
  5. function guiCreateLogowanie()
  6. guilog = {}
  7.  
  8. guilog[2] = guiCreateLabel(startX + 30,startY + 90, 40, 20, "Login:", false)
  9. guiSetFont(guilog[2], "default-bold-small")
  10. guilog[3] = guiCreateEdit(startX + 30, startY + 110, 260, 30, "", false)
  11. guiSetAlpha(guilog[3], 0.9)
  12. guilog[4] = guiCreateLabel(startX + 30,startY + 160, 40, 20, "Hasło:", false)
  13. guiSetFont(guilog[4], "default-bold-small")
  14. guilog[5] = guiCreateEdit(startX + 30, startY + 180, 260, 30, "", false)
  15. guiSetAlpha(guilog[5], 0.9)
  16. guiEditSetMasked(guilog[5], true)
  17. guilog[6] = guiCreateButton(startX + 30, startY + 220, 260, 40, "Loguj", false)
  18. guilog[7] = guiCreateButton(startX + 30, startY + 270, 260, 40, "Rejestruj", false)
  19.  
  20. addEventHandler("onClientGUIClick", guilog[6], onWyborLogowanie, false)
  21. addEventHandler("onClientGUIClick", guilog[7], onWyborLogowanie, false)
  22. showCursor(true)
  23. showChat(false)
  24. isChatVisible = false
  25. sound = playSound("dzwiek.mp3")
  26. setSoundVolume( sound, 200 ) --muzyczka
  27.  
  28. addEventHandler("onClientRender", getRootElement(), dxDrawLogowanie)
  29.  
  30. --/regulamin
  31. guilog[20] = guiCreateWindow(startX-40, (sY - 300)/2, 400, 300, "Potwierdź regulamin", false)
  32. guilog[21] = guiCreateScrollPane(15, 30, 380, 220, false, guilog[20])
  33. guilog[22] = guiCreateLabel(10,10,360,600, "REGULAMIN SERWERA \n\n1. Nie oszukujemy, gramy bez cheatów.\n2. Nie podszywamy się pod graczy.\n3. A sczególnie pod administrację.\n4. Nie bluzgamy oraz nie wyzywamy.\n5. Okradanie kont jest surowo zabronione.\n6. Gramy na luzie.\n7. Nie przeszkadzamy nikomu w grze.\n8. Nie reklamujemy innych serwerów.\n\n ", false, guilog[21])
  34. guilog[23] = guiCreateCheckBox(15, 265, 150, 15,"Akcepuję regulamin", false, false, guilog[20])
  35. guilog[24] = guiCreateButton(300, 260, 80, 35,"OK", false, guilog[20])
  36. guiSetVisible(guilog[20], false)
  37.  
  38. addEventHandler("onClientGUIClick", guilog[24], onWyborLogowanie, false)
  39. end
  40. addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()), guiCreateLogowanie)
  41.  
  42. function onWyborLogowanie()
  43. local login = guiGetText(guilog[3])
  44.     if #login >= 3 then
  45.     local haslo = guiGetText(guilog[5])
  46.         if #haslo >= 4 then
  47.             if source == guilog[6] then
  48.             triggerServerEvent("onZaloguj", localPlayer, login, haslo)
  49.             elseif source == guilog[7] then
  50.             triggerServerEvent("onZarejestruj", localPlayer, login, haslo, false)
  51.             elseif source == guilog[24] then
  52.                 if guiCheckBoxGetSelected(guilog[23]) then
  53.                 guiSetVisible(guilog[20], false)
  54.                
  55.                 guiSetEnabled(guilog[6], true)
  56.                 guiSetEnabled(guilog[7], true)
  57.                 guiSetEnabled(guilog[3], true)
  58.                 guiSetEnabled(guilog[5], true)
  59.                 triggerServerEvent("onZarejestruj", localPlayer, login, haslo, true)
  60.                 else
  61.                 outputChatBox("Musisz potwierdzić regulamin.", 255,255,255,true)
  62.                 end
  63.             end
  64.         else
  65.         outputChatBox("Hasło musi zawierać minimum 4 znaki.", 255, 255, 255, true)
  66.         end
  67.     else
  68.     outputChatBox("Login musi zawierać minimum 3 znaki.", 255, 255, 255, true)
  69.     end
  70. end
  71.  
  72. addEvent("onPotwierdzLogowanie", true)
  73. addEventHandler("onPotwierdzLogowanie", getRootElement(),
  74. function()
  75.     for i,v in pairs(guilog) do
  76.         if isElement(v) then
  77.         destroyElement(v)
  78.         end
  79.     end
  80.  
  81. removeEventHandler("onClientRender", getRootElement(), dxDrawLogowanie)
  82.  
  83. guiCreateWyborSpawnu()
  84. addEventHandler("onClientRender", getRootElement(), dxDrawWyborSpawnu)
  85. end)
  86.  
  87. addEvent("onPokazRegulaminSerwera", true)
  88. addEventHandler("onPokazRegulaminSerwera", getRootElement(),
  89. function()
  90. guiSetVisible(guilog[20], true)
  91.  
  92. guiSetEnabled(guilog[6], false)
  93. guiSetEnabled(guilog[7], false)
  94. guiSetEnabled(guilog[3], false)
  95. guiSetEnabled(guilog[5], false)
  96. guiBringToFront(guilog[20])
  97. end)
  98.  
  99.  
  100. function dxDrawLogowanie()
  101. dxDrawRectangle(startX, 0, 320, sY, tocolor(0, 0,0, 200), false)
  102. dxDrawImage(startX + 20, startY, 280, 80, "logo.png", 0, 0,0)
  103. end
  104.  
  105. -->> spawny
  106. local spawny = {"San Fierro", "Las Venturas", "Los Santos", "Fort Carson"}
  107.  
  108. function guiCreateWyborSpawnu()
  109. local startY = (sY - (#spawny * 55))/2
  110. guispawny = {}
  111.  
  112.     for i,v in pairs(spawny) do
  113.     local pos = startY + 20 + ((i - 1)*55)
  114.     guispawny[i] = guiCreateLabel(10, pos, 250, 50, i, false)
  115.     guiSetAlpha(guispawny[i], 0)
  116.    
  117.     addEventHandler("onClientGUIClick", guispawny[i], onLogowanieButtonClick, false)
  118.     addEventHandler("onClientMouseEnter", guispawny[i], onLogowanieButtonHit, false)
  119.     addEventHandler("onClientMouseLeave", guispawny[i], onLogowanieButtonLeave, false)
  120.     end
  121. end
  122.  
  123. function dxDrawWyborSpawnu()
  124. local startY = (sY - (#spawny * 55))/2
  125. dxDrawText("Wybierz miejsce spawnu", 11, startY+1, 261, startY+1, tocolor(0,0,0,150), 1, "default-bold", "center", "top", false, true)
  126. dxDrawText("Wybierz miejsce spawnu", 10, startY, 260, startY, tocolor(255,255,255,255), 1, "default-bold", "center", "top", false, true)
  127.     for i,v in pairs(guispawny) do
  128.    
  129.     local text = tonumber(guiGetText(v))
  130.     local x,y = guiGetPosition(v, false)
  131.     local w,h = guiGetSize(v, false)
  132.    
  133.         if tonumber(najechanaOpcja) == tonumber(i) then
  134.         dxDrawRectangle(x,y,w,h, tocolor(255, 255,255, 50), false)
  135.         dxDrawRectangle(x+w,y,5,h, tocolor(255, 0,0, 240), false)
  136.         end
  137.        
  138.     dxDrawRectangle(x,y,w,h, tocolor(0, 0,0, 200), false)
  139.     dxDrawText(spawny[text], x,y,x+w,y+h, tocolor(255,255,255,255), 1, "default-bold", "center", "center", false, true)
  140.     end
  141. end
  142.  
  143. function onLogowanieButtonClick()
  144. local text = tonumber(guiGetText(source))
  145.  
  146. removeCamHandler()
  147. removeEventHandler("onClientPreRender",root,camRender)
  148. removeEventHandler("onClientRender", getRootElement(), dxDrawWyborSpawnu)
  149.     for i,v in pairs(guispawny) do
  150.         if isElement(v) then
  151.         destroyElement(v)
  152.         end
  153.     end
  154. showCursor(false)
  155. showChat(true)
  156. isChatVisible = true
  157. stopSound( sound ) --muzyczka
  158.  
  159. triggerServerEvent("onWybierzSpawn", localPlayer, text)
  160. end
  161.  
  162. function onLogowanieButtonHit()
  163. najechanaOpcja = tonumber(guiGetText(source))
  164.     if najechanaOpcja == 1 then --sf
  165.     smoothMoveCamera(-1255.8588867188, 792.92370605469, 89.60514831543, -1292.6784667969, 773.12353515625, 80.898681640625, -1502.9533691406, 605.1962890625, 48.136501312256, -1534.7150878906, 587.07135009766, 45.3037109375, 45000)
  166.     elseif najechanaOpcja == 2 then --lv then
  167.     smoothMoveCamera(2000.3717041016, 1388.9758300781, 35.2578125,2004.7370605469, 1381.2937011719, 34.2578125, 2165.587890625, 1401.3663330078, 36.14868927002, 2189.1528320313, 1381.22265625, 35.786083221436, 40000)
  168.     elseif najechanaOpcja == 3 then --ls
  169.     smoothMoveCamera(1594.2905273438, -1688.5124511719, 47.643886566162, 1594.1131591797, -1668.7878417969, 43.894905090332, 1594.2905273438, -1688.5124511719, 110.643886566162, 1594.1131591797, -1668.7878417969, 107.894905090332, 45000)
  170.     else
  171.     smoothMoveCamera(-183.56669616699, 1227.8403320313, 54.072418212891, -183.21162414551, 1215.8363037109,50.590900421143, -180.76850891113, 1077.0457763672, 54.250087738037, -180.61024475098, 1060.0123291016, 50.960662841797, 45000)
  172.     end
  173.    
  174.     --(-1991.24170 324.57797 71.87281)
  175. addEventHandler("onClientPreRender",root,camRender)
  176. end
  177.    
  178. function onLogowanieButtonLeave()
  179. removeCamHandler()
  180. removeEventHandler("onClientPreRender",root,camRender)
  181. najechanaOpcja = -1
  182. end
  183.  
  184.  
  185. --kamera
  186. sm = {}
  187. sm.moov = 0
  188. sm.object1,sm.object2 = nil,nil
  189.  
  190. function removeCamHandler()
  191.     if(sm.moov == 1)then
  192.         sm.moov = 0
  193.         destroyElement(sm.object1)
  194.         destroyElement(sm.object2)
  195.     end
  196. end
  197.  
  198. function camRender()
  199.     if (sm.moov == 1) then
  200.         local x1,y1,z1 = getElementPosition(sm.object1)
  201.         local x2,y2,z2 = getElementPosition(sm.object2)
  202.         setCameraMatrix(x1,y1,z1,x2,y2,z2)
  203.     end
  204. end
  205.  
  206. function smoothMoveCamera(x1,y1,z1,x1t,y1t,z1t,x2,y2,z2,x2t,y2t,z2t,time)
  207.     if(sm.moov == 1)then return false end
  208.     sm.object1 = createObject(1337,x1,y1,z1)
  209.     setElementCollisionsEnabled(sm.object1, false)
  210.     sm.object2 = createObject(1337,x1t,y1t,z1t)
  211.     setElementCollisionsEnabled(sm.object2, false)
  212.     setElementAlpha(sm.object1,0)
  213.     setElementAlpha(sm.object2,0)
  214.     setObjectScale(sm.object1,0.01)
  215.     setObjectScale(sm.object2,0.01)
  216.     moveObject(sm.object1,time,x2,y2,z2,0,0,0,"InOutQuad")
  217.     moveObject(sm.object2,time,x2t,y2t,z2t,0,0,0,"InOutQuad")
  218.     sm.moov = 1
  219.     setTimer(removeCamHandler,time,1)
  220.    
  221.     return true
  222. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement