Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function shBanFel(lej, bby, bre, bwh, bti)
- keppen = guiCreateStaticImage( 0.0, 0.0, 100, 100, "kep.jpg", true )
- guiSetEnabled(keppen, false)
- local lejarat = ((lej-(getRealTime().timestamp))/60)/60
- if (lejarat<1) and (lej~=9999999999) then
- bend = "1 órán belül"
- elseif (lejarat>=1) and (lej~=9999999999) then
- bend = "kb. " .. math.floor(lejarat) .. " óra múlva"
- elseif (lej==9999999999) then
- bend = "Soha"
- bti = "örökre"
- end
- bannAblak = guiCreateWindow ( 0.15, 0.33, 0.7, 0.1, "Ki vagy tiltva a szerverről || Fellebbezés a kitiltás ellen: forum.fine-mta.eu", true )
- guiWindowSetMovable ( bannAblak, false )
- guiWindowSetSizable ( bannAblak, false )
- bannInfo = guiCreateGridList ( 0, 0.1, 1, 0.9, true, bannAblak )
- guiGridListSetSelectionMode ( bannInfo, 2 )
- guiGridListAddColumn ( bannInfo, "Aki kitiltott", 0.2 )
- guiGridListAddColumn ( bannInfo, "Indok", 0.29 )
- guiGridListAddColumn ( bannInfo, "Kitiltás időpontja", 0.18 )
- guiGridListAddColumn ( bannInfo, "Kitiltás időtartama (óra)", 0.13 )
- guiGridListAddColumn ( bannInfo, "Kitiltás lejár", 0.16 )
- local sor = guiGridListAddRow ( bannInfo )
- guiGridListSetItemText ( bannInfo, sor, 1, bby, false, false )
- guiGridListSetItemText ( bannInfo, sor, 2, bre, false, false )
- guiGridListSetItemText ( bannInfo, sor, 3, bwh, false, false )
- if (bti==(-1)) then
- guiGridListSetItemText ( bannInfo, sor, 4, "Végtelen", false, false )
- guiGridListSetItemText ( bannInfo, sor, 5, "Soha", false, false )
- else
- guiGridListSetItemText ( bannInfo, sor, 4, bti, false, false )
- guiGridListSetItemText ( bannInfo, sor, 5, bend, false, false )
- end
- end
- addEvent("shBanFel", true)
- addEventHandler("shBanFel", getRootElement(), shBanFel)
- function shSerBanFel(sbby, sbre, sbwh, sbti)
- keppen = guiCreateStaticImage( 0.0, 0.0, 100, 100, "kep.jpg", true )
- guiSetEnabled(keppen, false)
- bannSAblak = guiCreateWindow ( 0.15, 0.33, 0.7, 0.1, "A serial azonosítód kitiltva || Fellebbezés a kitiltás ellen: forum.fine-mta.eu", true )
- guiWindowSetMovable ( bannSAblak, false )
- guiWindowSetSizable ( bannSAblak, false )
- bannSInfo = guiCreateGridList ( 0, 0.1, 1, 0.9, true, bannSAblak )
- guiGridListSetSelectionMode ( bannSInfo, 2 )
- guiGridListAddColumn ( bannSInfo, "Aki kitiltott", 0.18 )
- guiGridListAddColumn ( bannSInfo, "Indok", 0.24 )
- guiGridListAddColumn ( bannSInfo, "Kitiltás időpontja", 0.16 )
- guiGridListAddColumn ( bannSInfo, "Serial", 0.27 )
- guiGridListAddColumn ( bannSInfo, "Kitiltás lejár", 0.13 )
- local sor = guiGridListAddRow ( bannSInfo )
- guiGridListSetItemText ( bannSInfo, sor, 1, sbby, false, false )
- guiGridListSetItemText ( bannSInfo, sor, 2, sbre, false, false )
- guiGridListSetItemText ( bannSInfo, sor, 3, sbwh, false, false )
- guiGridListSetItemText ( bannSInfo, sor, 4, sbti, false, false )
- guiGridListSetItemText ( bannSInfo, sor, 5, "Soha", false, false )
- end
- addEvent("shSerBanFel", true)
- addEventHandler("shSerBanFel", getRootElement(), shSerBanFel)
- addEvent("vonatBe",true)
- addEventHandler( "vonatBe",getRootElement(),
- function( )
- soundVonat = playSound3D("vonathang.mp3", 2021.638671875, -2290.76953125, 13.579941749573, true)
- setSoundMaxDistance( soundVonat, 700 )
- setSoundVolume(soundVonat, 400)
- setElementDimension(soundVonat, 12)
- end
- )
- addEvent("vonatMegalloBe",true)
- addEventHandler( "vonatMegalloBe",getRootElement(),
- function( )
- soundMegalloVonat = playSound3D("megallo.mp3", 2021.638671875, -2290.76953125, 13.579941749573, true)
- setSoundMaxDistance( soundMegalloVonat, 700 )
- setSoundVolume(soundMegalloVonat, 400)
- setElementDimension(soundMegalloVonat, 12)
- end
- )
- addEvent("vonatMegallojBe",true)
- addEventHandler( "vonatMegallojBe",getRootElement(),
- function( )
- soundMegallojVonat = playSound3D("megalloj.mp3", 2021.638671875, -2290.76953125, 13.579941749573, true)
- setSoundMaxDistance( soundMegallojVonat, 700 )
- setSoundVolume(soundMegallojVonat, 400)
- setElementDimension(soundMegallojVonat, 12)
- end
- )
- addEvent("vonatKi",true)
- addEventHandler( "vonatKi",getRootElement(),
- function( )
- stopSound( soundVonat )
- end
- )
- addEvent("vonatMegalloKi",true)
- addEventHandler( "vonatMegalloKi",getRootElement(),
- function( )
- stopSound( soundMegalloVonat )
- end
- )
- addEvent("kepfelB",true)
- addEventHandler( "kepfelB",getRootElement(),
- function( )
- local scrWidth, scrHeight = guiGetScreenSize()
- if (scrWidth<1024) and (scrHeight<768) then
- setTimer ( function()
- outputChatBox("FIGYELEM! Ajánlott képernyőfelbontás MINIMUM: 1024x768!!", 255, 0, 0)
- outputChatBox("A jelenlegi képernyőfelbontásod NEM kompatibilis a szerveren lévő", 255, 0, 0)
- outputChatBox("képi megjelenítésekkel! Így pár dolog nem a megfelelő módon fog megjelenni!", 255, 0, 0)
- outputChatBox("Például: munkapanel, F9-es panel, bolt panel, stb...", 255, 0, 0)
- outputChatBox("Ha lehetőségeid engedik állítsd át minimum 1024x768-as felbontásra a monitorod!", 255, 0, 0)
- outputChatBox("-----------------------------", 255, 0, 0)
- end, 2000, 1 )
- end
- end
- )
- addEvent("vonatMegallojKi",true)
- addEventHandler( "vonatMegallojKi",getRootElement(),
- function( )
- stopSound( soundMegallojVonat )
- end
- )
- function hasBeta()
- local xmlRoot = xmlLoadFile( "cylusbeta.xml" )
- if (xmlRoot) then
- local betaNode = xmlFindChild(xmlRoot, "beta", 0)
- if (betaNode) then
- return true
- end
- return false
- end
- return false
- end
- if not hasBeta() then
- function stopNameChange(oldNick, newNick)
- if (source==getLocalPlayer()) then
- local legitNameChange = getElementData(getLocalPlayer(), "legitnamechange")
- if (oldNick~=newNick) and (legitNameChange==0) then
- triggerServerEvent("resetName", getLocalPlayer(), oldNick, newNick)
- -- outputChatBox("Karakterváltáshoz kattints a 'Karakterváltás' gombra.", 255, 0, 0)
- end
- end
- end
- addEventHandler("onClientPlayerChangeNick", getRootElement(), stopNameChange)
- function onPlayerSpawn()
- showCursor(false)
- local interior = getElementInterior(source)
- setCameraInterior(interior)
- end
- addEventHandler("onClientPlayerSpawn", getLocalPlayer(), onPlayerSpawn)
- function clearChatBox()
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- outputChatBox("")
- end
- function hideInterfaceComponents()
- --triggerEvent("hideHud", getLocalPlayer())
- showPlayerHudComponent("weapon", false)
- showPlayerHudComponent("ammo", false)
- showPlayerHudComponent("vehicle_name", false)
- showPlayerHudComponent("money", false)
- showPlayerHudComponent("clock", false)
- showPlayerHudComponent("health", false)
- showPlayerHudComponent("armour", false)
- showPlayerHudComponent("breath", false)
- showPlayerHudComponent("area_name", false)
- showPlayerHudComponent("radar", false)
- --triggerEvent("hideHud", getLocalPlayer())
- end
- addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()), hideInterfaceComponents)
- ---------------------- [ ACCOUNT SCRIPT ] ----------------------
- lLostSecurityKey, tLostSecurityKey, bForgot, chkRemember, chkAutoLogin, bLogin, lLogUsername, lLogUsernameNote, tLogUsername, tLogPassword, lLogPassword, tabPanelMain, tabLogin, tabRegister, tabForgot, lRegUsername, tRegUsername, lRegUsernameNote, lRegPassword, tRegPassword, lRegPassword2, tRegPassword2, bRegister, wDelConfirmation = nil
- -- increasing this will reshow the tos as updated
- tosversion = 1
- toswindow, tos, bAccept, bDecline = nil
- function checkTOS()
- local xmlRoot = xmlLoadFile("cylusrptos.xml")
- if (xmlRoot) then
- local tosNode = xmlFindChild(xmlRoot, "tosversion", 0)
- if (tosNode) then
- local tversion = xmlNodeGetValue(tosNode)
- if (tversion) and (tversion~="") then
- if (tonumber(tversion)~=tosversion) then
- xmlRoot = nil
- end
- else
- xmlRoot = nil
- end
- else
- xmlRoot = nil
- end
- end
- if not (xmlRoot) then -- User hasn't accepted terms of service or is out of date
- local width, height = 700, 300
- local scrWidth, scrHeight = guiGetScreenSize()
- local x = scrWidth/2 - (width/2)
- local y = scrHeight/2 - (height/2)
- toswindow = guiCreateWindow(x, y, width, height, "Regisztrálási feltételek", false)
- guiWindowSetMovable(toswindow, false)
- tos = guiCreateMemo(0.025, 0.1, 0.95, 0.7, "", true, toswindow)
- guiSetText(tos, "A regisztrációval automatikusan elfogadod a szerver szabályzatát.\nA szabályzatot a honlapunkon találod meg\nSzámítógépenként maximum 1db felhasználót tudsz regisztrálni\nElérhetőségeink:\n- http://fine-mta.eu/\n- http://facebook.com/finerp\n- TeamSpeak: 37.221.210.86:10039\n- E-mail: info@fine-mta.eu")
- guiEditSetReadOnly(tos, true)
- bAccept = guiCreateButton(0.1, 0.8, 0.4, 0.15, "Elfogad", true, toswindow)
- bDecline = guiCreateButton(0.51, 0.8, 0.4, 0.15, "Elutasít", true, toswindow)
- addEventHandler("onClientGUIClick", bAccept, acceptTOS, false)
- addEventHandler("onClientGUIClick", bDecline, declineTOS, false)
- end
- end
- function acceptTOS(button, state)
- local theFile = xmlCreateFile("cylusrptos.xml", "tosversion")
- if (theFile) then
- local node = xmlCreateChild(theFile, "tosversion")
- xmlNodeSetValue(node, tostring(tosversion))
- xmlSaveFile(theFile)
- end
- destroyElement(toswindow)
- toswindow = nil
- end
- function declineTOS(button, state)
- triggerServerEvent("declineTOS", getLocalPlayer())
- end
- triggerServerEvent("getSalt", getLocalPlayer(), scripter)
- function storeSalt(theSalt, theIP)
- ip = theIP
- salt = theSalt
- createMainUI(getThisResource())
- end
- addEvent("sendSalt", true)
- addEventHandler("sendSalt", getRootElement(), storeSalt)
- bnolva = 0
- function bannEllbj(lej, bby, bre, bwh, bti)
- bnolva = 1
- lej2 = lej
- bby2 = bby
- bre2 = bre
- bwh2 = bwh
- bti2 = bti
- showCursor(true)
- triggerEvent("shBanFel", getLocalPlayer(), lej2, bby2, bre2, bwh2, bti2)
- end
- addEvent("bannEllbj", true)
- addEventHandler("bannEllbj", getRootElement(), bannEllbj)
- sbnolva = 0
- function sbannEllbj(bby, bre, bwh, bti)
- sbnolva = 1
- bby2 = bby
- bre2 = bre
- bwh2 = bwh
- bti2 = bti
- showCursor(true)
- triggerEvent("shSerBanFel", getLocalPlayer(), bby2, bre2, bwh2, bti2)
- end
- addEvent("sbannEllbj", true)
- addEventHandler("sbannEllbj", getRootElement(), sbannEllbj)
- function createMainUI(res, isChangeAccount)
- if (res==getThisResource()) then
- sent = false
- --local tutFile = xmlLoadFile("vgrptut.xml")
- local regFile = xmlLoadFile("cylusrpreg.xml")
- if (bnolva==0 and sbnolva==0) then
- showChat(false)
- if true then
- -- Set the camera to a nice view
- local cameraRand = math.random(1, 5)
- loginpanel = guiCreateStaticImage( 0.0, 0.0, 100, 100, "loginpanel.png", true )
- guiSetEnabled(loginpanel, false)
- guiMoveToBack(loginpanel)
- if (cameraRand==1) then
- -- setCameraInterior(0)
- -- setCameraMatrix(1511.6787109375, -1713.888671875, 21.128396987915, 1452.0458984375, -1793.7919921875, 13.4206199646)
- -- addEventHandler("onClientRender", getRootElement(), renderWelcomeMessage)
- loginpanel1 = guiCreateStaticImage( 0.0, 0.0, 100, 100, "1.png", true )
- guiSetEnabled(loginpanel1, false)
- guiMoveToBack(loginpanel1)
- elseif (cameraRand==2) then
- -- setCameraInterior(0)
- -- setCameraMatrix(1938.09375, -1776.720703125, 28.015789031982, 1850.9013671875, -1776.3251953125, -20.946716308594)
- -- addEventHandler("onClientRender", getRootElement(), renderWelcomeMessage)
- loginpanel2 = guiCreateStaticImage( 0.0, 0.0, 100, 100, "2.png", true )
- guiSetEnabled(loginpanel2, false)
- guiMoveToBack(loginpanel2)
- elseif (cameraRand==3) then
- -- setCameraInterior(0)
- -- setCameraMatrix(1913.845703125, -1535.5751953125, 56.516700744629, 1829.259765625, -1489.291015625, 83.031295776367)
- -- addEventHandler("onClientRender", getRootElement(), renderWelcomeMessage)
- loginpanel3 = guiCreateStaticImage( 0.0, 0.0, 100, 100, "3.png", true )
- guiSetEnabled(loginpanel3, false)
- guiMoveToBack(loginpanel3)
- elseif (cameraRand==4) then
- -- setCameraInterior(0)
- -- setCameraMatrix(-2346.0888671875, 1782.640625, 151.88487243652, -2445.6357421875, 1778.9208984375, 143.13357543945)
- -- addEventHandler("onClientRender", getRootElement(), renderWelcomeMessage)
- loginpanel4 = guiCreateStaticImage( 0.0, 0.0, 100, 100, "4.png", true )
- guiSetEnabled(loginpanel4, false)
- guiMoveToBack(loginpanel4)
- elseif (cameraRand==5) then
- -- setCameraInterior(0)
- -- setCameraMatrix(-1735.984375, 1318.880859375, 6.8283386230469, -1659.4482421875, 1383.1806640625, 9.5825147628784)
- -- addEventHandler("onClientRender", getRootElement(), renderWelcomeMessage)
- loginpanel5 = guiCreateStaticImage( 0.0, 0.0, 100, 100, "5.png", true )
- guiSetEnabled(loginpanel5, false)
- guiMoveToBack(loginpanel5)
- end
- -- fadeCamera(true)
- if (bChangeAccount) then
- destroyElement(bChangeAccount)
- bChangeAccount = nil
- end
- checkTOS() -- Terms of Service
- local width, height = 400, 200
- local scrWidth, scrHeight = guiGetScreenSize()
- local x = scrWidth/3 - (width/2)
- local y = scrHeight/3 - (height/2)
- if (scrWidth<1024) and (scrHeight<768) then
- outputChatBox("FIGYELEM! Ajánlott képernyőfelbontás minimum: 1024x768!!", 255, 0, 0)
- outputChatBox("FIGYELEM! Ajánlott képernyőfelbontás minimum: 1024x768!!", 255, 0, 0)
- outputChatBox("FIGYELEM! Ajánlott képernyőfelbontás minimum: 1024x768!!", 255, 0, 0)
- end
- tLogUsername = guiCreateEdit(0.115, 0.177, 0.138, 0.042, "", true)
- tLogPassword = guiCreateEdit(0.114, 0.2725, 0.138, 0.042, "", true)
- guiEditSetMaxLength(tLogUsername, 32)
- guiEditSetMasked(tLogPassword, true)
- guiEditSetMaxLength(tLogPassword, 32)
- guiSetInputMode("no_binds_when_editing")
- bLogin = guiCreateStaticImage( 0.12, 0.407, 0.13, 0.049, "login.png", true )
- bRegister = guiCreateStaticImage( 0.12, 0.477, 0.13, 0.049, "reg.png", true )
- addEventHandler("onClientGUIClick", bLogin, validateDetails, false)
- addEventHandler("onClientGUIClick", bRegister, validateDetails, false)
- if (toswindow) then
- guiBringToFront(toswindow)
- end
- else
- -- showChat(true)
- end
- end
- end
- end
- --addEventHandler("onClientResourceStart", getRootElement(), createMainUI)
- function validateDetails()
- if (source==bRegister) then
- local username = guiGetText(tLogUsername)
- local password1 = guiGetText(tLogPassword)
- local password2 = guiGetText(tLogPassword)
- local password = password1 .. password2
- clearChatBox()
- if (string.len(username)<3) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3Túl rövid felhasználónév. Minimum 3 karakter legyen.", 255, 0, 0, true)
- exports.notifications:showBox("error", "Túl rövid felhasználónév. Minimum 3 karakter legyen.")
- elseif (string.find(username, ";", 0)) or (string.find(username, "'", 0)) or (string.find(username, "@", 0)) or (string.find(username, ",", 0)) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3A felhasználónév nem tartalmazhat: ;,@'.", 255, 0, 0, true)
- exports.notifications:showBox("error", "A felhasználóneved érvénytelen karaktereket tartalmaz.")
- elseif (string.len(password1)<6) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3Túl rövid jelszó. Minimum 6 karakterből álljon.", 255, 0, 0, true)
- exports.notifications:showBox("error", "Túl rövid jelszó. Minimum 6 karakterből legyen.")
- elseif (string.len(password1)>=30) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3Túl hosszú jelszó (több, mint 30 karakter).", 255, 0, 0, true)
- exports.notifications:showBox("error", "Túl hosszú jelszó (max. 30 karakter).")
- elseif (string.find(password, ";", 0)) or (string.find(password, "'", 0)) or (string.find(password, "@", 0)) or (string.find(password, ",", 0)) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3A jelszavad nem tartalmazhat: ;,@'.", 255, 0, 0, true)
- exports.notifications:showBox("error", "A jelszavad érvénytelen karaktereket tartalmaz.")
- elseif (password1~=password2) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3A két jelszó nem egyezik meg.", 255, 0, 0, true)
- exports.notifications:showBox("error", "A két jelszó nem egyezik meg.")
- else
- -- showChat(true)
- triggerServerEvent("attemptRegister", getLocalPlayer(), username, password1)
- end
- local username = guiGetText(tLogUsername)
- elseif (source==bLogin) then
- local password = guiGetText(tLogPassword)
- local username = guiGetText(tLogUsername)
- clearChatBox()
- if (string.len(username)<3) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3Túl rövid felhasználónév. Minimum 3 karakter legyen.", 255, 0, 0, true)
- exports.notifications:showBox("error", "Túl rövid felhasználónevet adtál meg. (min. 3 karakter).")
- elseif (string.find(username, ";", 0)) or (string.find(username, "'", 0)) or (string.find(username, "@", 0)) or (string.find(username, ",", 0)) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3A felhasználónév nem tartalmazhat: ;,@.'", 255, 0, 0, true)
- exports.notifications:showBox("error", "A felhasználónévben érvénytelen karakterek vannak.")
- elseif (string.len(password)<6) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3Túl rövid jelszó. Minimum 6 karakterből álljon.", 255, 0, 0, true)
- exports.notifications:showBox("error", "Túl rövid jelszavat adtál meg (min. 6 karakter).")
- elseif (string.find(password, ";", 0)) or (string.find(password, "'", 0)) or (string.find(password, "@", 0)) or (string.find(password, ",", 0)) then
- --outputChatBox("#5e5e5e[#abababFineMTA#5e5e5e] #c3c3c3A jelszavad nem tartalmazhat: ;,@'.", 255, 0, 0, true)
- exports.notifications:showBox("error", "A jelszó érvénytelen karaktereket tartalmaz.")
- else
- local vinfo = getVersion()
- local operatingsystem = vinfo.os
- triggerServerEvent("attemptLogin", getLocalPlayer(), username, password, operatingsystem)
- end
- end
- end
- tabPanelCharacter, tabCharacter, tabAccount, tabAchievements, tabStatistics, tableAccounts, lCharacters, paneCharacters, lCreateFakepane, lCreateBG, lCreateName, lCreateImage = nil
- paneChars = { }
- tableAchievements, tableStatistics, iAchievementCount, iAchievementPointsCount = nil
- bEditChar = nil
- bDeleteChar = nil
- bChangeAccount = nil
- sent = false
- betutipus = dxCreateFont("betu.ttf", 12)
- function informaciokRenderelese()
- local width, height = guiGetScreenSize()
- if (bejmenu) then
- if (bejmenu~=1) then
- dxDrawImage ( 0.37*width, 0.71*height, 0.4*width, 0.6*height, 'menu.png' )
- end
- else
- dxDrawImage ( 0.37*width, 0.71*height, 0.4*width, 0.6*height, 'menu2.png' )
- end
- if (choosed==2) then
- dxDrawText ( "Karakternév: "..nejv:gsub("_", " "), 0.4*width, 0.84*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- dxDrawText ( "Magasság: "..mag.." cm", 0.4*width, 0.87*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- dxDrawText ( "Súly: "..sulyy.." kg", 0.4*width, 0.9*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- dxDrawText ( "Életkor: "..elet.." év", 0.4*width, 0.93*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- elseif (choosed==1) and (whichPK==1) then
- dxDrawText ( "Karakternév: "..nejv2:gsub("_", " "), 0.4*width, 0.84*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- dxDrawText ( "Magasság: "..mag2.." cm", 0.4*width, 0.87*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- dxDrawText ( "Súly: "..sulyy2.." kg", 0.4*width, 0.9*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- dxDrawText ( "Életkor: "..elet2.." év", 0.4*width, 0.93*height, 0.94*width, 0.2*height, tocolor ( 255, 255, 255, 255 ), 1, betutipus )
- end
- end
- function valkoxUgyesvagyHurra()
- showCursor(true)
- choosed = false
- wDelConfirmation = false
- if (isElement(playerkeee1)) then
- destroyElement(playerkeee1)
- end
- if (isElement(playerkeee12)) then
- destroyElement(playerkeee12)
- end
- if (isElement(playerkeee)) then
- destroyElement(playerkeee)
- end
- if (isElement(playerkeee2)) then
- destroyElement(playerkeee2)
- end
- addEventHandler("onClientKey", getRootElement(), playerPressedKeyke)
- setElementPosition(getLocalPlayer(), 380.3291015625, -1963.9150390625, 7.8359375)
- setElementDimension(getLocalPlayer(), 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementInterior(getLocalPlayer(), 0)
- setPedRotation(getLocalPlayer(), 88.29)
- setElementAlpha(getLocalPlayer(), 0)
- triggerServerEvent("karakterekLek", getLocalPlayer())
- end
- function karakterekLekData(eredmeny, skinID, knevID, weightID, heightID, ageID, skinID2, knevID2, weightID2, heightID2, ageID2)
- if (eredmeny==2 or eredmeny==3) then
- whichPK = 1
- bejmenu = true
- choosed = 2
- if not (isElement(playerkeee)) then
- playerkeee = createPed ( skinID, 377.8369140625, -1963.041015625, 7.8359375 )
- end
- setPedFrozen(playerkeee, true)
- setElementDimension(playerkeee, 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementInterior(playerkeee, 0)
- setPedRotation(playerkeee, 88.29)
- playeeerNev = knevID
- nejv = playeeerNev
- mag = heightID
- sulyy = weightID
- elet = ageID
- playeeerNev2 = knevID2
- nejv2 = playeeerNev2
- mag2 = heightID2
- sulyy2 = weightID2
- elet2 = ageID2
- setPedAnimation ( playerkeee, "DANCING", "dnce_M_d")
- if not (isElement(playerkeee2)) then
- playerkeee2 = createPed ( skinID2, 377.8349609375, -1964.3994140625, 7.8359375 )
- end
- setPedFrozen(playerkeee2, true)
- setElementDimension(playerkeee2, 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementInterior(playerkeee2, 0)
- setPedRotation(playerkeee2, 91.59)
- setPedAnimation ( playerkeee2, "ped", "SEAT_idle")
- elseif (eredmeny==1) then
- whichPK = 2
- bejmenu = true
- choosed = 2
- if not (isElement(playerkeee1)) then
- playerkeee1 = createPed ( skinID, 377.8369140625, -1963.041015625, 7.8359375 )
- end
- setPedFrozen(playerkeee1, true)
- setElementDimension(playerkeee1, 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementInterior(playerkeee1, 0)
- setPedRotation(playerkeee1, 88.29)
- if not (isElement(playerkeee12)) then
- playerkeee12 = createPed ( 299, 377.8349609375, -1964.3994140625, 7.8359375 )
- end
- setPedFrozen(playerkeee12, true)
- setElementDimension(playerkeee12, 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementInterior(playerkeee12, 0)
- setPedRotation(playerkeee12, 91.59)
- setPedAnimation ( playerkeee12, "ped", "SEAT_idle")
- nejv = knevID
- mag = heightID
- sulyy = weightID
- elet = ageID
- setPedAnimation ( playerkeee1, "DANCING", "dnce_M_d")
- else
- whichPK = 3
- bejmenu = false
- if not (isElement(playerkeee12)) then
- playerkeee12 = createPed ( 299, 377.8349609375, -1964.3994140625, 7.8359375 )
- end
- setPedFrozen(playerkeee12, true)
- setElementDimension(playerkeee12, 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementInterior(playerkeee12, 0)
- setPedRotation(playerkeee12, 91.59)
- setPedAnimation ( playerkeee12, "DANCING", "dnce_M_d")
- end
- end
- addEvent("karakterekLekData", true)
- addEventHandler("karakterekLekData", getRootElement(), karakterekLekData)
- function playerPressedKeyke(button, press)
- if (press) then
- if (whichPK==1) then
- if (button=="arrow_r") then
- if (choosed==1) then
- setPedAnimation ( playerkeee2, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee, "DANCING", "dnce_M_d")
- choosed = 2
- elseif (choosed==2) then
- setPedAnimation ( playerkeee, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee2, "DANCING", "dnce_M_d")
- choosed = 1
- end
- elseif (button=="arrow_l") then
- if (choosed==1) then
- setPedAnimation ( playerkeee2, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee, "DANCING", "dnce_M_d")
- choosed = 2
- elseif (choosed==2) then
- setPedAnimation ( playerkeee, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee2, "DANCING", "dnce_M_d")
- choosed = 1
- end
- elseif (button=="delete") then
- if not (wDelConfirmation) then
- if (choosed==2) then
- charname = nejv
- elseif (choosed==1) then
- charname = nejv2
- end
- local sx, sy = guiGetScreenSize()
- wDelConfirmation = guiCreateWindow(sx/2 - 125,sy/2 - 50,250,100,"Törlés megerősítése", false)
- local lQuestion = guiCreateLabel(0.05,0.25,0.9,0.3,"Törlöd "..charname:gsub("_"," ").." nevű karaktered?",true,wDelConfirmation)
- guiLabelSetHorizontalAlign (lQuestion,"center",true)
- local bYes = guiCreateButton(0.1,0.65,0.37,0.23,"Igen",true,wDelConfirmation)
- local bNo = guiCreateButton(0.53,0.65,0.37,0.23,"Nem",true,wDelConfirmation)
- addEventHandler("onClientGUIClick", getRootElement(),
- function(button)
- if (button=="left") then
- if source == bYes then
- triggerServerEvent("deleteCharacter", getLocalPlayer(), charname)
- destroyElement(playerkeee1)
- destroyElement(playerkeee12)
- destroyElement(playerkeee)
- destroyElement(playerkeee2)
- destroyElement(wDelConfirmation)
- destroyElement(lQuestion)
- destroyElement(bYes)
- destroyElement(bNo)
- valkoxUgyesvagyHurra()
- elseif source == bNo then
- if wDelConfirmation then
- destroyElement(wDelConfirmation)
- wDelConfirmation = nil
- end
- end
- end
- end
- )
- end
- elseif (button=="enter") then
- if (choosed==2) then
- charname = nejv
- elseif (choosed==1) then
- charname = nejv2
- end
- if not (krealva) and not (wDelConfirmation) then
- -- fadeCamera(false, 1)
- setCameraInterior(0)
- spawned = true
- destroyElement(tabPanelCharacter)
- destroyElement(bChangeAccount)
- playSoundFrontEnd(32)
- sent = false
- triggerServerEvent("spawnCharacter", getLocalPlayer(), charname, getVersion().mta)
- removeEventHandler("onClientKey", getRootElement(), playerPressedKeyke)
- removeEventHandler("onClientRender", getRootElement(), informaciokRenderelese)
- destroyElement(playerkeee1)
- destroyElement(playerkeee12)
- destroyElement(playerkeee)
- destroyElement(playerkeee2)
- setTimer(resetTriggers, 100, 1)
- setTimer(showCursor, 50, 30, false)
- toggleAllControls(true, true, true)
- guiSetInputEnabled(false)
- showCursor(false)
- showChat(true)
- showLogoutPanel()
- --triggerEvent("showHud", getLocalPlayer())
- showPlayerHudComponent("weapon", false)
- showPlayerHudComponent("ammo", false)
- showPlayerHudComponent("vehicle_name", false)
- showPlayerHudComponent("money", false)
- showPlayerHudComponent("health", false)
- showPlayerHudComponent("armour", false)
- showPlayerHudComponent("breath", false)
- showPlayerHudComponent("radar", false)
- showPlayerHudComponent("area_name", false)
- end
- end
- elseif (whichPK==2) then
- if (button=="arrow_r") then
- if (choosed==1) then
- setPedAnimation ( playerkeee12, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee1, "DANCING", "dnce_M_d")
- choosed = 2
- elseif (choosed==2) then
- setPedAnimation ( playerkeee1, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee12, "DANCING", "dnce_M_d")
- choosed = 1
- bejmenu = false
- end
- elseif (button=="arrow_l") then
- if (choosed==1) then
- setPedAnimation ( playerkeee12, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee1, "DANCING", "dnce_M_d")
- choosed = 2
- bejmenu = true
- elseif (choosed==2) then
- setPedAnimation ( playerkeee1, "ped", "SEAT_idle")
- setPedAnimation ( playerkeee12, "DANCING", "dnce_M_d")
- choosed = 1
- bejmenu = false
- end
- elseif (button=="enter") then
- if not (krealva) then
- if (choosed==2) then
- -- fadeCamera(false, 1)
- setCameraInterior(0)
- spawned = true
- destroyElement(tabPanelCharacter)
- destroyElement(bChangeAccount)
- playSoundFrontEnd(32)
- sent = false
- triggerServerEvent("spawnCharacter", getLocalPlayer(), nejv, getVersion().mta)
- removeEventHandler("onClientKey", getRootElement(), playerPressedKeyke)
- removeEventHandler("onClientRender", getRootElement(), informaciokRenderelese)
- destroyElement(playerkeee1)
- destroyElement(playerkeee12)
- destroyElement(playerkeee)
- destroyElement(playerkeee2)
- setTimer(resetTriggers, 100, 1)
- setTimer(showCursor, 50, 30, false)
- toggleAllControls(true, true, true)
- guiSetInputEnabled(false)
- showCursor(false)
- showChat(true)
- showLogoutPanel()
- --triggerEvent("showHud", getLocalPlayer())
- showPlayerHudComponent("weapon", false)
- showPlayerHudComponent("ammo", false)
- showPlayerHudComponent("vehicle_name", false)
- showPlayerHudComponent("money", false)
- showPlayerHudComponent("health", false)
- showPlayerHudComponent("armour", false)
- showPlayerHudComponent("breath", false)
- showPlayerHudComponent("radar", false)
- showPlayerHudComponent("area_name", false)
- else
- characterCreation()
- --exports.notifications:showBox("info", "asd")
- end
- end
- end
- elseif (whichPK==3) then
- if (button=="enter") then
- characterCreation()
- end
- end
- end
- end
- function showCharacterUI(accounts, firstTime, needsEmail)
- destroyElement(loginpanel)
- destroyElement(bRegister)
- destroyElement(bLogin)
- destroyElement(tLogUsername)
- destroyElement(tLogPassword)
- exports.notifications:showBox("info", "Sikeresen bejelentkeztél!")
- sent = false
- destroyElement(loginpanel1)
- destroyElement(loginpanel2)
- destroyElement(loginpanel3)
- destroyElement(loginpanel4)
- destroyElement(loginpanel5)
- --triggerEvent("hideHud", getLocalPlayer())
- if not (firstTime) then
- showChat(false)
- end
- setElementAlpha(getLocalPlayer(), 255)
- setCameraInterior(0)
- --setCameraMatrix(257.20394897461, -40.330944824219, 1002.5234375, 260.32162475586, -41.565814971924, 1002.0234375)
- --setCameraMatrix(9.51953125, -7.349609375, 5.6171875, 2.6767578125, -0.5126953125, 3.1171875)
- setCameraMatrix(370.525390625, -1963.4345703125, 8.2718753814697, 377.8369140625, -1963.041015625, 7.8359375)
- --fadeCamera(true)
- valkoxUgyesvagyHurra()
- addEventHandler("onClientRender", getRootElement(), informaciokRenderelese)
- --bDeleteChar = guiCreateButton(0.85, 0.05, 0.1, 0.05, "Karakter törlése", true)
- tableAccounts = accounts
- --iAchievementCount = achievementCount
- --iAchievementPointsCount = achievementPointsCount
- --tableAchievements = achievements
- toggleAllControls(false, true, false)
- -- For character creation
- lCreateFakepane = guiCreateScrollPane(0.0, y-0.015, 1.0, 0.35, true, paneCharacters)
- lCreateBG = guiCreateStaticImage(0.0, 0.1, 0.95, 0.5, "img/charbg0.png", true, lCreateFakepane)
- lCreateName = guiCreateLabel(0.3, 0.1, 0.5, 0.2, "Karakter létrehozása", true, lCreateFakepane)
- lCreateImage = guiCreateStaticImage(0.05, 0.07, 0.2, 0.53, "img/newchar.png", true, lCreateFakepane)
- guiSetFont(lCreateName, "default-bold-small")
- addEventHandler("onClientGUIClick", lCreateFakepane, selectedCharacter)
- --addEventHandler("onClientGUIClick", lCreateBG, selectedCharacter)
- --addEventHandler("onClientGUIClick", lCreateName, selectedCharacter)
- --addEventHandler("onClientGUIClick", lCreateImage, selectedCharacter)
- addEventHandler("onClientGUIDoubleClick", lCreateFakepane, dcselectedCharacter)
- addEventHandler("onClientGUIDoubleClick", lCreateBG, dcselectedCharacter)
- addEventHandler("onClientGUIDoubleClick", lCreateName, dcselectedCharacter)
- addEventHandler("onClientGUIDoubleClick", lCreateImage, dcselectedCharacter)
- guiSetAlpha(tabPanelCharacter, 0.75)
- showCursor(true)
- setElementAlpha(getLocalPlayer(), 0)
- -- fadeCamera(true, 2)
- if ( needsEmail ) then
- promptEmail()
- end
- guiSetInputEnabled(true)
- end
- addEvent("showCharacterSelection", true)
- addEventHandler("showCharacterSelection", getRootElement(), showCharacterUI)
- wEmail, lEmailInfo, lEmail, tEmail, bSubmitEmail = nil
- function promptEmail()
- guiSetAlpha(tabPanelCharacter, 0.3)
- guiSetEnabled(tabPanelCharacter, false)
- local width, height = 400, 200
- local scrWidth, scrHeight = guiGetScreenSize()
- local x = scrWidth/2 - (width/2)
- local y = scrHeight/2 - (height/2)
- wEmail = guiCreateWindow(x, y, width, height, "E-mail cím szükséges!", false)
- lEmailInfo = guiCreateLabel(0.02, 0.1, 0.95, 0.3, "Ide lesznek elküldve az adataid, ha elfelejtetted a jelszavadat/felhasználónevedet.", true, wEmail)
- guiLabelSetHorizontalAlign(lEmailInfo, "center", true)
- guiSetFont(lEmailInfo, "default-bold-small")
- lEmail = guiCreateLabel(0.15, 0.6, 0.3, 0.3, "Email cím:", true, wEmail)
- guiSetFont(lEmail, "default-bold-small")
- tEmail = guiCreateEdit(0.38, 0.59, 0.5, 0.1, "email@cím.hu", true, wEmail)
- guiSetFont(tEmail, "default-bold-small")
- addEventHandler("onClientGUIChanged", tEmail, checkEmail, false)
- bSubmitEmail = guiCreateButton(0.15, 0.75, 0.7, 0.15, "Ok", true, wEmail)
- addEventHandler("onClientGUIClick", bSubmitEmail, submitEmail, false)
- guiSetFont(bSubmitEmail, "default-bold-small")
- guiSetEnabled(bSubmitEmail, false)
- guiSetAlpha(bSubmitEmail, 0.5)
- end
- function submitEmail()
- local email = guiGetText(tEmail)
- cleanupEmail()
- guiSetAlpha(tabPanelCharacter, 0.7)
- guiSetEnabled(tabPanelCharacter, true)
- triggerServerEvent("storeEmail", getLocalPlayer(), email)
- end
- function checkEmail()
- local text = guiGetText(source)
- local length = text:len()
- local atSymbol = text:find("@")
- if ( length > 5 and atSymbol ~= nil ) then
- guiSetEnabled(bSubmitEmail, true)
- guiSetAlpha(bSubmitEmail, 1.0)
- else
- guiSetEnabled(bSubmitEmail, false)
- guiSetAlpha(bSubmitEmail, 0.5)
- end
- end
- function cleanupEmail()
- if ( tabPanelCharacter ) then
- guiSetAlpha(tabPanelCharacter, 1.0)
- guiSetEnabled(tabPanelCharacter, true)
- end
- if ( wEmail ) then
- destroyElement(wEmail)
- wEmail = nil
- lEmail = nil
- lEmailInfo = nil
- tEmail = nil
- bSubmitEmail = nil
- end
- end
- triggering = false
- addEvent("onClientChooseCharacter", false)
- function dcselectedCharacter(button, state)
- if (button=="left") and (state=="up") then
- if (source~=lCreateFakepane) and (source~=lCreateBG) and (source~=lCreateName) and (source~=lCreateImage) then
- if not (triggering) then
- triggering = true
- -- Find the key that was hit
- local foundkey = nil
- for key, value in pairs(paneChars) do
- for i, j in pairs(paneChars[key]) do
- if (j==source) then
- foundkey = key
- end
- end
- end
- local charname = tostring(guiGetText(paneChars[foundkey][2]))
- local cked = string.find(charname, "(Deceased)")
- if (cked==nil) then
- -- fadeCamera(false, 1)
- setCameraInterior(0)
- spawned = true
- destroyElement(tabPanelCharacter)
- destroyElement(bChangeAccount)
- playSoundFrontEnd(32)
- sent = false
- triggerServerEvent("spawnCharacter", getLocalPlayer(), nejv, getVersion().mta)
- setTimer(resetTriggers, 100, 1)
- setTimer(showCursor, 50, 30, false)
- toggleAllControls(true, true, true)
- guiSetInputEnabled(false)
- showCursor(false)
- showChat(true)
- showLogoutPanel()
- --triggerEvent("showHud", getLocalPlayer())
- showPlayerHudComponent("weapon", false)
- showPlayerHudComponent("ammo", false)
- showPlayerHudComponent("vehicle_name", false)
- showPlayerHudComponent("money", false)
- showPlayerHudComponent("health", false)
- showPlayerHudComponent("armour", false)
- showPlayerHudComponent("breath", false)
- showPlayerHudComponent("radar", false)
- showPlayerHudComponent("area_name", false)
- else
- triggering = false
- setTimer(playSoundFrontEnd, 500, 3, 20)
- end
- end
- else
- if (creation==false) then
- creation = true
- guiSetVisible(tabPanelCharacter, false)
- characterCreation()
- playSoundFrontEnd(32)
- end
- end
- end
- end
- addEvent("dcselectedCharacter", true)
- addEventHandler("dcselectedCharacter", getRootElement(), dcselectedCharacter)
- function resetTriggers()
- triggering = false
- end
- function unhideCursor()
- if not (spawned) then
- showCursor(true)
- else
- showCursor(false)
- end
- end
- function selectedCharacter(button, state)
- if (button=="left") and (state=="up") then
- playSoundFrontEnd(32)
- if (source~=lCreateFakepane) and (source~=lCreateBG) and (source~=lCreateName) and (source~=lCreateImage) then
- local found = false
- local key = 0
- for i, j in pairs(paneChars) do
- local isthis = false
- for k, v in pairs(paneChars[i]) do
- if (v==source) then
- isthis = true
- found = true
- key = i
- end
- end
- guiBringToFront(paneChars[i][2])
- guiBringToFront(paneChars[i][3])
- guiBringToFront(paneChars[i][4])
- guiBringToFront(paneChars[i][5])
- guiBringToFront(paneChars[i][6])
- guiBringToFront(paneChars[i][7])
- guiBringToFront(lCreateBG)
- guiBringToFront(lCreateFakepane)
- guiBringToFront(lCreateName)
- guiBringToFront(lCreateImage)
- if not (isthis) then
- guiStaticImageLoadImage(paneChars[i][1], "img/charbg0.png")
- end
- end
- if (found) then
- guiStaticImageLoadImage(paneChars[key][1], "img/charbg1.png")
- selectedChar = key
- guiStaticImageLoadImage(lCreateBG, "img/charbg0.png")
- local skinID = tonumber(tableAccounts[key][9])
- local cked = tonumber(tableAccounts[key][3])
- -- nejv = tableAccounts[key][2]
- setElementModel(getLocalPlayer(), skinID)
- -- setElementPosition(getLocalPlayer(), 1922.552734375, -2407.791015625, 13.53911781311)
- -- setElementInterior(getLocalPlayer(), 0)
- -- setPedRotation(getLocalPlayer(), 180)
- local rand = math.random(1,6)
- if (rand==1) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "shift", -1, true, true, true)
- elseif (rand==2) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "shldr", -1, true, true, true)
- elseif (rand==3) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "stretch", -1, true, true, true)
- elseif (rand==4) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "strleg", -1, true, true, true)
- elseif (rand==5) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "time", -1, true, true, true)
- elseif (rand==6) then
- exports.global:applyAnimation(getLocalPlayer(), "ON_LOOKERS", "wave_loop", -1, true, true, true)
- end
- setElementAlpha(getLocalPlayer(), 0)
- if (cked==nil) then
- --if (skinID==0) then -- Load CJ's clothes etc.
- -- local charname = tableAccounts[key][2]
- -- triggerServerEvent("spawnClothes", getLocalPlayer(), charname)
- --end
- fading = true
- if (isTimer(tmrFadeIn)) then killTimer(tmrFadeIn) end
- tmrHideMouse = setTimer(unhideCursor, 200, 1)
- tmrFadeIn = setTimer(fadePlayerIn, 50, 10)
- guiSetVisible(bEditChar, true)
- guiSetVisible(bDeleteChar, true)
- else
- local x, y, z = getElementPosition(getLocalPlayer())
- setElementAlpha(getLocalPlayer(), 0)
- tmrFadeIn = setTimer(fadePlayerIn, 50, 10)
- exports.global:applyAnimation(getLocalPlayer(), "WUZI", "CS_Dead_Guy", -1, true, false, true)
- guiSetVisible(bEditChar, false)
- guiSetVisible(bDeleteChar, false)
- end
- end
- else
- if (isTimer(tmrFadeIn)) then killTimer(tmrFadeIn) end
- for key, value in ipairs(paneChars) do
- guiStaticImageLoadImage(paneChars[key][1], "img/charbg0.png")
- end
- selectedChar = nil
- guiBringToFront(lCreateBG)
- guiBringToFront(lCreateFakepane)
- guiBringToFront(lCreateName)
- guiBringToFront(lCreateImage)
- guiStaticImageLoadImage(lCreateBG, "img/charbg1.png")
- -- Player effect
- setElementModel(getLocalPlayer(), 264)
- -- setElementPosition(getLocalPlayer(), 1922.552734375, -2407.791015625, 13.53911781311)
- --setElementInterior(getLocalPlayer(), 0)
- -- setPedRotation(getLocalPlayer(), 180)
- local rand = math.random(1,6)
- if (rand==1) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "shift", -1, true, false, true)
- elseif (rand==2) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "shldr", -1, true, false, true)
- elseif (rand==3) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "stretch", -1, true, false, true)
- elseif (rand==4) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "strleg", -1, true, false, true)
- elseif (rand==5) then
- exports.global:applyAnimation(getLocalPlayer(), "PLAYIDLES", "time", -1, true, false, true)
- elseif (rand==6) then
- exports.global:applyAnimation(getLocalPlayer(), "ON_LOOKERS", "wave_loop", -1, true, false, true)
- end
- -- optomize this
- --triggerServerEvent("stripPlayer", getLocalPlayer())
- setElementAlpha(getLocalPlayer(), 0)
- fading = true
- tmrHideMouse = setTimer(unhideCursor, 200, 1)
- tmrFadeIn = setTimer(fadePlayerIn, 50, 10)
- guiSetVisible(bEditChar, false)
- guiSetVisible(bDeleteChar, false)
- end
- end
- end
- -- /////////////////////////////// CHARACTER CREATION ////////////////////////////////////
- tabPanelCreation, bCancel, bNext, lType, rNormal, rCJ = nil
- -- Step 1
- fatness = 0
- muscles = 0
- name = ""
- tabCreationOne, lName, tName, lRestrictions, bRotate = nil
- creation = false
- function characterCreation()
- local width, height = 400, 400
- bejmenu = 1
- krealva = 1
- local scrWidth, scrHeight = guiGetScreenSize()
- local x = scrWidth/2 - (width/2)
- local y = scrHeight/2 - (height/2)
- tabPanelCreation = guiCreateTabPanel(5, y, width, height, false)
- tabCreationOne = guiCreateTab("Karakterlétrehozás: 1. lépés", tabPanelCreation)
- guiSetAlpha(tabPanelCreation, 0.75)
- rot = 120.0
- -- addEventHandler("onClientRender", getRootElement(), moveCameraToCreation)
- setElementPosition(getLocalPlayer(), 375.61328125, -1963.7919921875, 7.8359375)
- setElementDimension(getLocalPlayer(), 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementAlpha(getLocalPlayer(), 255)
- setCameraMatrix(370.525390625, -1963.4345703125, 8.2718753814697, 377.8369140625, -1963.041015625, 7.8359375)
- setCameraInterior(0)
- bNext = guiCreateButton(0.05, 0.75, 0.9, 0.1, "Tovább", true, tabCreationOne)
- addEventHandler("onClientGUIClick", bNext, loadNextPage, false)
- bCancel = guiCreateButton(0.05, 0.85, 0.9, 0.1, "Mégse", true, tabCreationOne)
- addEventHandler("onClientGUIClick", bCancel, cancelCreation, false)
- -- Step 1 tab contents
- lName = guiCreateLabel(0.1, 0.05, 0.25, 0.1, "Karakternév:", true, tabCreationOne)
- tName = guiCreateEdit(0.35, 0.05, 0.4, 0.05, "Lompos Frigyes", true, tabCreationOne)
- addEventHandler("onClientGUIChanged", tName, checkName)
- guiSetFont(lName, "default-bold-small")
- lRestrictions = guiCreateLabel(0.0, 0.105, 1.0, 0.3, "Szempontok: \n\n - A nevedet szóközzel válaszd el. \n - A valóságban is létező nevet adj meg \n - Maximum 23 karakter hosszú lehet \n - Legyen egy vezetéknév és egy keresztnév \n - Nem tartalmazhat számokat \n - Nem tartalmazhat speciális karaktereket. pl: $@';", true, tabCreationOne)
- guiLabelSetColor(lRestrictions, 0, 255, 0)
- guiLabelSetHorizontalAlign(lRestrictions, "center")
- guiSetFont(lRestrictions,"default-bold-small")
- showCursor(true)
- guiSetInputEnabled(true)
- end
- function spawnNormal(button, state)
- if (button=="left") and (state=="up") then
- skinint = math.random(1, #blackMales)
- skin = blackMales[skinint]
- setElementModel(getLocalPlayer(), skin)
- curskin = skinint
- end
- end
- function checkName()
- if (source==tName) then
- local theText = guiGetText(source)
- local foundSpace, valid = false, true
- local lastChar, current = ' ', ''
- for i = 1, #theText do
- local char = theText:sub( i, i )
- if char == ' ' then -- it's a space
- if i == #theText then -- space at the end of name is not allowed
- valid = false
- break
- else
- foundSpace = true -- we have at least two name parts
- end
- if #current < 2 then -- check if name's part is at least 2 chars
- valid = false
- break
- end
- current = ''
- elseif lastChar == ' ' then -- this char follows a space, we need a capital letter
- if char < 'A' or char > 'Z' then
- valid = false
- break
- end
- current = current .. char
- elseif ( char >= 'a' and char <= 'z' ) or ( char >= 'A' and char <= 'Z' ) then -- can have letters anywhere in the name
- current = current .. char
- else -- unrecognized char (numbers, special chars)
- valid = false
- break
- end
- lastChar = char
- end
- if valid and foundSpace and #theText < 22 and #current >= 2 then
- guiLabelSetColor(lRestrictions, 0, 255, 0)
- guiSetEnabled(bNext, true)
- else
- guiLabelSetColor(lRestrictions, 255, 0, 0)
- guiSetEnabled(bNext, false)
- end
- end
- end
- function cancelCreation(button, state)
- --triggerServerEvent("stripPlayer", getLocalPlayer())
- removeEventHandler("onClientRender", getRootElement(), moveCameraToCreation)
- krealva = false
- if (isElement(bRotate)) then
- destroyElement(bRotate)
- end
- bRotate = nil
- local playerid = getElementData(getLocalPlayer(), "playerid")
- --[[ setElementInterior(getLocalPlayer(), 14)
- setElementDimension(getLocalPlayer(), 65000+playerid)
- setElementPosition(getLocalPlayer(), 258.43417358398, -41.489139556885, 1002.0234375)
- setPedRotation(getLocalPlayer(), 268.19247436523) --]]
- setElementPosition(getLocalPlayer(), 380.3291015625, -1963.9150390625, 7.8359375)
- setElementDimension(getLocalPlayer(), 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementInterior(getLocalPlayer(), 0)
- setPedRotation(getLocalPlayer(), 88.29)
- setElementAlpha(getLocalPlayer(), 0)
- creation = false
- if (isElement(tabPanelCreation)) then
- destroyElement(tabPanelCreation)
- end
- tabPanelCreation = nil
- setCameraMatrix(370.525390625, -1963.4345703125, 8.2718753814697, 377.8369140625, -1963.041015625, 7.8359375)
- setCameraInterior(0)
- --fadeCamera(true)
- --addEventHandler("onClientRender", getRootElement(), moveCameraToCreation)
- guiSetVisible(tabPanelCharacter, true)
- end
- rot = 120.0
- function moveCameraToCreation()
- local pX, pY, pZ = getElementPosition(getLocalPlayer())
- local x = pX + math.cos(math.deg(rot))*2
- local y = pY + math.sin(math.deg(rot))*2
- local sight, eX, eY, eZ = processLineOfSight(pX, pY, pZ, x, y, pZ+1, true, true, false)
- -- if (sight) then
- -- setCameraMatrix(eX, eY, eZ, pX, pY, pZ+0.2)
- -- else
- -- setCameraMatrix(x, y, pZ+1, pX, pY, pZ+0.2)
- -- end
- setElementPosition(getLocalPlayer(), 375.61328125, -1963.7919921875, 7.8359375)
- setElementDimension(getLocalPlayer(), 65000 + getElementData(getLocalPlayer(), "gameaccountid"))
- setElementAlpha(getLocalPlayer(), 255)
- setCameraMatrix(370.525390625, -1963.4345703125, 8.2718753814697, 377.8369140625, -1963.041015625, 7.8359375)
- setCameraInterior(0)
- --fadeCamera(true)
- rot = rot + 0.0001
- end
- function loadNextPage(button, state)
- if (button=="left") and (state=="up") then
- triggerServerEvent("doesCharacterExist", getLocalPlayer(), guiGetText(tName))
- end
- end
- function nextPage(exists)
- if (exists) then
- guiSetText(tName, "Ez a név már foglalt!")
- guiLabelSetColor(lRestrictions, 255, 0, 0)
- guiSetEnabled(bNext, false)
- elseif not (exists) then
- --local CJ = guiRadioButtonGetSelected(rCJ)
- name = guiGetText(tName)
- destroyElement(tabCreationOne)
- tabCreationOne = nil
- destroyElement(tabPanelCreation)
- tabPanelCreation = nil
- --if (CJ) then
- -- characterCreationStep2CJ()
- --else
- characterCreationStep2Normal()
- --end
- end
- end
- addEvent("characterNextStep", true )
- addEventHandler("characterNextStep", getRootElement(), nextPage)
- tabCreationTwo, fatInc, fatDec, lFat, lFatDesc, muscleInc, muscleDec, lMuscle, lMuscleDesc = nil
- lDescriptionNormal, lGender, rMale, rFemale, lSkinColour, rBlack, rWhite, rAsian, tempPane, lChangeSkin, nextSkin, prevSkin = nil
- gender = 0
- skincolour = 1
- curskin = 0
- --blackMales = {7, 14, 15, 16, 17, 18, 20, 21, 22, 24, 25, 28, 35, 36, 50, 51, 66, 67, 78, 79, 80, 83, 84, 102, 103, 104, 105, 106, 107, 134, 136, 142, 143, 144, 156, 163, 166, 168, 176, 180, 182, 183, 185, 220, 221, 222, 249, 253, 260, 262 }
- blackMales = {9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 47, 57, 59, 61, 66, 67, 85}
- --whiteMales = {23, 26, 27, 29, 30, 32, 33, 34, 35, 36, 37, 38, 43, 44, 45, 46, 47, 48, 50, 51, 52, 53, 58, 59, 60, 61, 62, 68, 70, 72, 73, 78, 81, 82, 94, 95, 96, 97, 98, 99, 100, 101, 108, 109, 110, 111, 112, 113, 114, 115, 116, 120, 121, 122, 124, 125, 126, 127, 128, 132, 133, 135, 137, 146, 147, 153, 154, 155, 158, 159, 160, 161, 162, 164, 165, 170, 171, 173, 174, 175, 177, 179, 181, 184, 186, 187, 188, 189, 200, 202, 204, 206, 209, 212, 213, 217, 223, 230, 234, 235, 236, 240, 241, 242, 247, 248, 250, 252, 254, 255, 258, 259, 261, 264 }
- whiteMales = {9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 47, 57, 59, 61, 66, 67, 85}
- --asianMales = {49, 57, 58, 59, 60, 117, 118, 120, 121, 122, 123, 170, 186, 187, 203, 210, 227, 228, 229}
- asianMales = {9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 47, 57, 59, 61, 66, 67, 85}
- --blackFemales = {9, 10, 11, 12, 13, 40, 41, 63, 64, 69, 76, 91, 139, 148, 190, 195, 207, 215, 218, 219, 238, 243, 244, 245, 256 }
- blackFemales = {9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 47, 57, 59, 61, 66, 67, 85}
- --whiteFemales = {12, 31, 38, 39, 40, 41, 53, 54, 55, 56, 64, 75, 77, 85, 86, 87, 88, 89, 90, 91, 92, 93, 129, 130, 131, 138, 140, 145, 150, 151, 152, 157, 172, 178, 192, 193, 194, 196, 197, 198, 199, 201, 205, 211, 214, 216, 224, 225, 226, 231, 232, 233, 237, 243, 246, 251, 257, 263 }
- whiteFemales = {9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 47, 57, 59, 61, 66, 67, 85}
- --asianFemales = {38, 53, 54, 55, 56, 88, 141, 169, 178, 224, 225, 226, 263}
- asianFemales = {9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 47, 57, 59, 61, 66, 67, 85}
- function characterCreationStep2Normal()
- gender = 0
- skincolour = 1
- curskin = 0
- local width, height = 400, 400
- local scrWidth, scrHeight = guiGetScreenSize()
- local x = scrWidth/2 - (width/2)
- local y = scrHeight/2 - (height/2)
- tabPanelCreation = guiCreateTabPanel(5, y, width, height, false)
- tabCreationTwo = guiCreateTab("Karakterlétrehozás: 2. lépés", tabPanelCreation)
- guiSetAlpha(tabPanelCreation, 0.75)
- lDescriptionNormal = guiCreateLabel(0.1, 0.025, 0.9, 0.15, "Válassz kinézetet", true, tabCreationTwo)
- guiSetFont(lDescriptionNormal, "sa-header")
- --/////////////
- -- GENDER
- --/////////////
- lGender = guiCreateLabel(0.1, 0.225, 0.25, 0.15, "Nem:", true, tabCreationTwo)
- guiSetFont(lGender, "default-bold-small")
- rMale = guiCreateRadioButton(0.4, 0.225, 0.15, 0.05, "Férfi", true, tabCreationTwo)
- rFemale = guiCreateRadioButton(0.65, 0.225, 0.15, 0.05, "Nő", true, tabCreationTwo)
- guiRadioButtonSetSelected(rMale, true)
- addEventHandler("onClientGUIClick", rMale, normalSetMale, false)
- addEventHandler("onClientGUIClick", rFemale, normalSetFemale, false)
- --/////////////
- -- SKIN COLOUR
- --/////////////
- tempPane = guiCreateScrollPane(0.05, 0.35, 0.9, 0.4, true, tabCreationTwo)
- lSkinColour = guiCreateLabel(0.1, 0.375, 0.25, 0.15, "Bőrszín:", true, tempPane)
- guiSetFont(lSkinColour, "default-bold-small")
- rBlack = guiCreateRadioButton(0.4, 0.385, 0.15, 0.15, "Fekete", true, tempPane)
- rWhite = guiCreateRadioButton(0.6, 0.385, 0.15, 0.15, "Fehér", true, tempPane)
- rAsian = guiCreateRadioButton(0.8, 0.385, 0.15, 0.15, "Ázsiai", true, tempPane)
- guiRadioButtonSetSelected(rWhite, true)
- addEventHandler("onClientGUIClick", rBlack, normalSetBlack, true, false, false)
- addEventHandler("onClientGUIClick", rWhite, normalSetWhite, false, true, false)
- addEventHandler("onClientGUIClick", rAsian, normalSetAsian, false, false, true)
- --/////////////
- -- SKIN
- --/////////////
- lChangeSkin = guiCreateLabel(0.1, 0.535, 0.25, 0.2, "Skin:", true, tempPane)
- guiSetFont(lChangeSkin, "default-bold-small")
- prevSkin = guiCreateButton(0.3, 0.525, 0.2, 0.15, "<-", true, tempPane)
- addEventHandler("onClientGUIClick", prevSkin, adjustNormalSkin, false)
- nextSkin = guiCreateButton(0.6, 0.525, 0.2, 0.15, "->", true, tempPane)
- addEventHandler("onClientGUIClick", nextSkin, adjustNormalSkin, false)
- -- NEXT/BACK
- bNext = guiCreateButton(0.05, 0.75, 0.9, 0.1, "Tovább", true, tabCreationTwo)
- addEventHandler("onClientGUIClick", bNext, characterCreationStep5, false)
- bCancel = guiCreateButton(0.05, 0.85, 0.9, 0.1, "Mégse", true, tabCreationTwo)
- addEventHandler("onClientGUIClick", bCancel, cancelCreation, false)
- end
- function adjustNormalSkin(button, state)
- if (button=="left") and (state=="up") then
- if (source==nextSkin) then
- local array = nil
- if (skincolour==0) then -- BLACK
- if (gender==0) then -- BLACK MALE
- array = blackMales
- elseif (gender==1) then -- BLACK FEMALE
- array = blackFemales
- end
- elseif (skincolour==1) then -- WHITE
- if (gender==0) then -- WHITE MALE
- array = whiteMales
- elseif (gender==1) then -- WHITE FEMALE
- array = whiteFemales
- end
- elseif (skincolour==2) then -- ASIAN
- if (gender==0) then -- ASIAN MALE
- array = asianMales
- elseif (gender==1) then -- ASIAN FEMALE
- array = asianFemales
- end
- end
- -- Get the next skin
- if (curskin==#array) then
- curskin = 1
- skin = array[1]
- setElementModel(getLocalPlayer(), tonumber(skin))
- else
- curskin = curskin + 1
- skin = array[curskin]
- setElementModel(getLocalPlayer(), tonumber(skin))
- end
- elseif (source==prevSkin) then
- local array = nil
- if (skincolour==0) then -- BLACK
- if (gender==0) then -- BLACK MALE
- array = blackMales
- elseif (gender==1) then -- BLACK FEMALE
- array = blackFemales
- end
- elseif (skincolour==1) then -- WHITE
- if (gender==0) then -- WHITE MALE
- array = whiteMales
- elseif (gender==1) then -- WHITE FEMALE
- array = whiteFemales
- end
- elseif (skincolour==2) then -- ASIAN
- if (gender==0) then -- ASIAN MALE
- array = asianMales
- elseif (gender==1) then -- ASIAN FEMALE
- array = asianFemales
- end
- end
- -- Get the next skin
- if (curskin==1) then
- curskin = #array
- skin = array[1]
- setElementModel(getLocalPlayer(), tonumber(skin))
- else
- curskin = curskin - 1
- skin = array[curskin]
- setElementModel(getLocalPlayer(), tonumber(skin))
- end
- end
- end
- end
- function normalSetMale(button, state)
- if (source==rMale) and (button=="left") and (state=="up") then
- gender = 0
- generateSkin()
- end
- end
- function normalSetFemale(button, state)
- if (source==rFemale) and (button=="left") and (state=="up") then
- gender = 1
- generateSkin()
- end
- end
- function normalSetBlack(button, state)
- if (source==rBlack) and (button=="left") and (state=="up") then
- skincolour = 0
- generateSkin()
- end
- end
- function normalSetWhite(button, state)
- if (source==rWhite) and (button=="left") and (state=="up") then
- skincolour = 1
- generateSkin()
- end
- end
- function normalSetAsian(button, state)
- if (source==rAsian) and (button=="left") and (state=="up") then
- skincolour = 2
- generateSkin()
- end
- end
- function generateSkin()
- local skinint = 0
- if (gender==0) then -- MALE
- if (skincolour==0) then -- BLACK
- skinint = math.random(1, #blackMales)
- skin = blackMales[skinint]
- setElementModel(getLocalPlayer(), skin)
- elseif (skincolour==1) then -- WHITE
- skinint = math.random(1, #whiteMales)
- skin = whiteMales[skinint]
- setElementModel(getLocalPlayer(), skin)
- elseif (skincolour==2) then -- ASIAN
- skinint = math.random(1, #asianMales)
- skin = asianMales[skinint]
- setElementModel(getLocalPlayer(), skin)
- end
- elseif (gender==1) then -- FEMALE
- if (skincolour==0) then -- BLACK
- skinint = math.random(1, #blackFemales)
- skin = blackFemales[skinint]
- setElementModel(getLocalPlayer(), skin)
- elseif (skincolour==1) then -- WHITE
- skinint = math.random(1, #whiteFemales)
- skin = whiteFemales[skinint]
- setElementModel(getLocalPlayer(), skin)
- elseif (skincolour==2) then -- ASIAN
- skinint = math.random(1, #asianFemales)
- skin = asianFemales[skinint]
- setElementModel(getLocalPlayer(), skin)
- end
- end
- curskin = skinint
- end
- function characterCreationStep5(button, state)
- if (button=="left") and (state=="up") and (source==bNext) then
- -- Cleanup
- if (tabCreationFour) then
- destroyElement(tabCreationFour)
- tabCreationFour = nil
- elseif (tabCreationTwo) then
- destroyElement(tabCreationTwo)
- tabCreationTwo = nil
- end
- destroyElement(tabPanelCreation)
- tabPanelCreation = nil
- local width, height = 400, 400
- local scrWidth, scrHeight = guiGetScreenSize()
- local x = scrWidth/2 - (width/2)
- local y = scrHeight/2 - (height/2)
- tabPanelCreation = guiCreateTabPanel(5, y, width, height, false)
- tabCreationFive = guiCreateTab("Karakterlétrehozás: Majdnem kész!", tabPanelCreation)
- guiSetAlpha(tabPanelCreation, 0.75)
- lInformation = guiCreateLabel(0.1, 0.025, 0.8, 0.15, "Információ", true, tabCreationFive)
- guiSetFont(lInformation, "sa-header")
- --/////////////
- -- HEIGHT
- --/////////////
- lHeight = guiCreateLabel(0.1, 0.145, 0.5, 0.15, "Magasság (100 és 200 cm között):", true, tabCreationFive)
- guiSetFont(lHeight, "default-bold-small")
- guiLabelSetColor(lHeight, 0, 255, 0)
- tHeight = guiCreateEdit(0.635, 0.143, 0.15, 0.05, "170", true, tabCreationFive)
- addEventHandler("onClientGUIChanged", tHeight, checkInput)
- --/////////////
- -- WEIGHT
- --/////////////
- lWeight = guiCreateLabel(0.1, 0.215, 0.5, 0.15, "Súly (40 és 200 kg között):", true, tabCreationFive)
- guiSetFont(lWeight, "default-bold-small")
- guiLabelSetColor(lWeight, 0, 255, 0)
- tWeight = guiCreateEdit(0.635, 0.213, 0.15, 0.05, "70", true, tabCreationFive)
- addEventHandler("onClientGUIChanged", tWeight, checkInput)
- --/////////////
- -- AGE
- --/////////////
- lAge = guiCreateLabel(0.1, 0.285, 0.5, 0.15, "Életkor (18 és 80 év között):", true, tabCreationFive)
- guiSetFont(lAge, "default-bold-small")
- guiLabelSetColor(lAge, 0, 255, 0)
- tAge = guiCreateEdit(0.635, 0.283, 0.15, 0.05, "24", true, tabCreationFive)
- addEventHandler("onClientGUIChanged", tAge, checkInput)
- --/////////////
- -- DESCRIPTION
- --/////////////
- lCharDesc = guiCreateLabel(0.1, 0.385, 0.8, 0.15, "Karakter leírása (30 és 100 karakter között):", true, tabCreationFive)
- guiSetFont(lCharDesc, "default-bold-small")
- guiLabelSetColor(lCharDesc, 0, 255, 0)
- tCharDesc = guiCreateMemo(0.1, 0.455, 0.8, 0.25, "A karaktered vizuális megjelenése, stb.", true, tabCreationFive)
- addEventHandler("onClientGUIChanged", tCharDesc, checkInput)
- --/////////////
- -- NEXT/BACK
- --/////////////
- bNext = guiCreateButton(0.05, 0.75, 0.9, 0.1, "Tovább", true, tabCreationFive)
- addEventHandler("onClientGUIClick", bNext, characterCreationStep6, false)
- bCancel = guiCreateButton(0.05, 0.85, 0.9, 0.1, "Mégse", true, tabCreationFive)
- addEventHandler("onClientGUIClick", bCancel, cancelCreation, false)
- end
- end
- heightvalid = true
- weightvalid = true
- descvalid = true
- agevalid = true
- function checkInput()
- if (source==tHeight) then
- if not (tostring(type(tonumber(guiGetText(tHeight)))) == "number") then
- guiLabelSetColor(lHeight, 255, 0, 0)
- heightvalid = false
- elseif (tonumber(guiGetText(tHeight))<100) or (tonumber(guiGetText(tHeight))>200) then
- guiLabelSetColor(lHeight, 255, 0, 0)
- heightvalid = false
- else
- guiLabelSetColor(lHeight, 0, 255, 0)
- heightvalid = true
- end
- elseif (source==tWeight) then
- if not (tostring(type(tonumber(guiGetText(tWeight)))) == "number") then
- guiLabelSetColor(lWeight, 255, 0, 0)
- weightvalid = false
- elseif (tonumber(guiGetText(tWeight))<40) or (tonumber(guiGetText(tWeight))>200) then
- guiLabelSetColor(lWeight, 255, 0, 0)
- weightvalid = false
- else
- guiLabelSetColor(lWeight, 0, 255, 0)
- weightvalid = true
- end
- elseif (source==tAge) then
- if not (tostring(type(tonumber(guiGetText(tAge)))) == "number") then
- guiLabelSetColor(lAge, 255, 0, 0)
- agevalid = false
- elseif (tonumber(guiGetText(tAge))<18) or (tonumber(guiGetText(tAge))>80) then
- guiLabelSetColor(lAge, 255, 0, 0)
- agevalid = false
- else
- guiLabelSetColor(lAge, 0, 255, 0)
- agevalid = true
- end
- elseif (source==tCharDesc) then
- if (string.len(guiGetText(tCharDesc))<30) or (string.len(guiGetText(tCharDesc))>100) then
- guiLabelSetColor(lCharDesc, 255, 0, 0)
- descvalid = false
- else
- guiLabelSetColor(lCharDesc, 0, 255, 0)
- descvalid = true
- end
- end
- end
- tabCreationFive, lTransport, rTrain, rBus, rAeroplane, rBoat, transObject, transVehicle, lastSelected, anim = nil
- language = 1
- function characterCreationStep6(button, state)
- if (button=="left") and (state=="up") and (source==bNext) then
- if (heightvalid) and (weightvalid) and (descvalid) and (agevalid) then
- height = guiGetText(tHeight)
- weight = guiGetText(tWeight)
- age = guiGetText(tAge)
- description = guiGetText(tCharDesc)
- -- Cleanup
- destroyElement(tabCreationFive)
- tabCreationFive = nil
- destroyElement(tabPanelCreation)
- tabPanelCreation = nil
- local width, height = 400, 400
- local scrWidth, scrHeight = guiGetScreenSize()
- local x = scrWidth/2 - (width/2)
- local y = scrHeight/2 - (height/2)
- tabPanelCreation = guiCreateTabPanel(5, y, width, height, false)
- tabCreationSix = guiCreateTab("Karakterlétrehozás: Befejezés!", tabPanelCreation)
- guiSetAlpha(tabPanelCreation, 0.75)
- lInformation = guiCreateLabel(0.1, 0.025, 0.8, 0.15, "A kezdet...", true, tabCreationSix)
- guiSetFont(lInformation, "sa-header")
- --/////////////
- -- TRANSPORT
- --/////////////
- lTransport = guiCreateLabel(0.1, 0.145, 0.8, 0.15, "Érkezés Fine Citybe: Vonattal", true, tabCreationSix)
- guiSetFont(lTransport, "default-bold-small")
- -- rAeroplane = guiCreateRadioButton(0.15, 0.2, 0.6, 0.05, "Repülővel", true, tabCreationSix)
- -- rBus = guiCreateRadioButton(0.15, 0.25, 0.6, 0.05, "Busszal", true, tabCreationSix)
- -- addEventHandler("onClientGUIClick", rBus, busEffect, false)
- -- addEventHandler("onClientGUIClick", rAeroplane, aeroplaneEffect, false)
- lLanguage = guiCreateLabel(0.1, 0.45, 0.8, 0.15, "Mi a karaktered anyanyelve?", true, tabCreationSix)
- guiSetFont(lLanguage, "default-bold-small")
- lCharLanguage = guiCreateLabel(0.3, 0.52, 0.2, 0.05, "Magyar", true, tabCreationSix)
- guiLabelSetHorizontalAlign( lCharLanguage, "center" )
- language = 16
- lLangPrevious = guiCreateButton(0.23, 0.51, 0.07, 0.07, "<-", true, tabCreationSix)
- lLangNext = guiCreateButton(0.5, 0.51, 0.07, 0.07, "->", true, tabCreationSix)
- addEventHandler("onClientGUIClick", lLangPrevious,
- function( button, state )
- if button == "left" and state == "up" then
- if language == 1 then
- language = call( getResourceFromName( "language-system" ), "getLanguageCount" )
- else
- language = language - 1
- end
- guiSetText(lCharLanguage, call( getResourceFromName( "language-system" ), "getLanguageName", language ))
- end
- end, false
- )
- addEventHandler("onClientGUIClick", lLangNext,
- function( button, state )
- if button == "left" and state == "up" then
- if language == call( getResourceFromName( "language-system" ), "getLanguageCount" ) then
- language = 1
- else
- language = language + 1
- end
- guiSetText(lCharLanguage, call( getResourceFromName( "language-system" ), "getLanguageName", language ))
- end
- end, false
- )
- --/////////////
- -- NEXT/BACK
- --/////////////
- bNext = guiCreateButton(0.05, 0.75, 0.9, 0.1, "Kész!", true, tabCreationSix)
- addEventHandler("onClientGUIClick", bNext, characterCreationFinal, false)
- bCancel = guiCreateButton(0.05, 0.85, 0.9, 0.1, "Mégse", true, tabCreationSix)
- addEventHandler("onClientGUIClick", bCancel, cancelCreation, false)
- end
- end
- end
- -- ////////////////
- -- FINAL
- --/////////////////
- function characterCreationFinal(button, state)
- if (source==bNext) and (button=="left") and (state=="up") and not (anim) then
- local train = guiRadioButtonGetSelected(rTrain)
- local bus = guiRadioButtonGetSelected(rBus)
- local aeroplane = guiRadioButtonGetSelected(rAeroplane)
- -- if (train or bus or aeroplane) then
- local transport
- -- if (train) then
- -- transport = 0
- -- elseif (bus) then
- -- transport = 1
- -- elseif (aeroplane) then
- -- transport = 2
- -- else
- transport = 1
- -- end
- local skin = getElementModel(getLocalPlayer())
- creation = false
- destroyElement(tabPanelCreation)
- tabPanelCreation = nil
- -- cleanup
- removeEventHandler("onClientRender", getRootElement(), moveCameraToCreation)
- destroyElement(bRotate)
- bRotate = nil
- local playerid = getElementData(getLocalPlayer(), "playerid")
- setElementInterior(getLocalPlayer(), 14)
- setElementDimension(getLocalPlayer(), 65000+playerid)
- setElementPosition(getLocalPlayer(), 258.43417358398, -41.489139556885, 1002.0234375)
- setPedRotation(getLocalPlayer(), 268.19247436523)
- setCameraMatrix(370.525390625, -1963.4345703125, 8.2718753814697, 377.8369140625, -1963.041015625, 7.8359375)
- setCameraInterior(14)
- -- fadeCamera(true)
- krealva = false
- destroyElement(playerkeee1)
- destroyElement(playerkeee12)
- valkoxUgyesvagyHurra()
- bejmenu = 1
- -- end cleanup
- if (skin==0) then -- CJ
- local clothes = { curhair, curhat, curneck, curface, curupper, curwrist, curlower, curfeet, curcostume, luTattoo, llTattoo, ruTattoo, rlTattoo, bTattoo, lcTattoo, rcTattoo, sTattoo, lbTattoo }
- triggerServerEvent("createCharacter", getLocalPlayer(), name, gender, skincolour, weight, height, fatness, muscles, transport, description, age, skin, language, clothes)
- else
- triggerServerEvent("createCharacter", getLocalPlayer(), name, gender, skincolour, weight, height, fatness, muscles, transport, description, age, skin, language)
- end
- -- end
- end
- end
- addEvent("updateName", true) -- not using it since we send the char list on changing characters, just so it won't pop up with errors
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement