Jump to content

papam77

Members
  • Posts

    517
  • Joined

  • Last visited

Everything posted by papam77

  1. song from map still playing
  2. And is possible to stop song from map only ? Because it is double song
  3. Oh, my bad sorry. Work it Thank you
  4. part of meta: song_c.lua addEvent ( "playSound", true ) addEventHandler ( "playSound", root, function ( ) playSound ( "song.mp3" ) end ) song_s.lua addEvent ( "onPostFinish", true ) addEventHandler ( "onPostFinish", root, function ( ) triggerClientEvent ( root, "playSound", root ) end ) Path: /s1.hrajminecraft.cz_22003/mods/deathmatch/resources/[eag]/main_eag/endsong And doesn't work while end.
  5. Hello, everybody know changing map in race - Next map starts in: 5 4 3 2 1 And i wanna add any song to chaning map. How can do it ?
  6. papam77

    Fade as hide

    I haven't problem i wanna only icon as hide icon (Lag Reduction)
  7. papam77

    Fade as hide

    Hello, i wanna Fade car as Hide (Lag Reduction) Fade: local MAX_DIST = 30 local MIN_DIST = 5 local MIN_ALPHA = 50 local carfade = true addEventHandler("onClientRender", getRootElement(), function() local camTarget = getCameraTarget() local tarVehicle = false if(camTarget == false)then return end if(getElementType(camTarget) == "vehicle")then tarVehicle = camTarget elseif(getElementType(camTarget) == "player")then tarVehicle = getPedOccupiedVehicle(camTarget) end if (camTarget == false or tarVehicle == false)then return end local posX, posY, posZ = getElementPosition(tarVehicle) local camX, camY, camZ = getCameraMatrix() local player = getElementsByType("player") for i = 1, #player do local vehicle = getPedOccupiedVehicle(player[i]) if(vehicle ~= tarVehicle and vehicle ~= false)then local alpha = 255 local x, y, z = getElementPosition(vehicle) local playerDist = getDistanceBetweenPoints3D(posX, posY, posZ, x, y, z) local camDist = getDistanceBetweenPoints3D(camX, camY, camZ, x, y, z) -- If distance is more or less than maximum and minimum values, then set alpha to minimum alpha. if(playerDist <= MIN_DIST or camDist <= MIN_DIST)then alpha = MIN_ALPHA end local alpha_dist = (playerDist/MAX_DIST) if(alpha_dist >= 0)then alpha = alpha_dist * 255 if(alpha > 255)then alpha = 255 end if(alpha < MIN_ALPHA)then alpha = MIN_ALPHA end end if(carfade == false)then alpha = 255 end local state = getElementData(player[i], "state") or false if(state == "dead" or state == "not ready")then alpha = 0 end setElementAlpha(vehicle, alpha) setElementAlpha(player[i], alpha) end if(vehicle == tarVehicle and vehicle ~= false)then setElementAlpha(vehicle, 255) setElementAlpha(player[i], 255) end end end) bindKey("F2", "up", function mapwindowa() deltaTime = (getTickCount()) - startTimess if deltaTime <= 1000 then beta = sy - ((deltaTime/1000)*100) elseif (deltaTime > 1000) and (deltaTime < 4000) then beta = sy-100 elseif (deltaTime >= 4000) and (deltaTime <= 6000) then beta = sy-((1-((deltaTime-4000)/800))*100) else removeEventHandler("onClientRender",getRootElement(),mapwindowa) end dxDrawRectangle((sx-400)/2,beta,400,110,tocolor ( 95, 0, 250, 100 )) dxDrawText("Lag Reduction",125+(sx-400)/2,beta+15,((sx-400)/2)+400,beta+55,tocolor(255,255,255),2,"default-bold","left","top",true) dxDrawText("Disabled",165+(sx-400)/2,beta+60,((sx-400)/2)+400,beta+85,tocolor(255,255,255),1.7,"default","left","top",true) end function mapwindowda() deltaTime = (getTickCount()) - startTimess if deltaTime <= 1000 then beta = sy - ((deltaTime/1000)*100) elseif (deltaTime > 1000) and (deltaTime < 4000) then beta = sy-100 elseif (deltaTime >= 4000) and (deltaTime <= 6000) then beta = sy-((1-((deltaTime-4000)/800))*100) else removeEventHandler("onClientRender",getRootElement(),mapwindowda) end dxDrawRectangle((sx-400)/2,beta,400,110,tocolor ( 95, 0, 250, 100 )) dxDrawText("Lag Reduction",125+(sx-400)/2,beta+15,((sx-400)/2)+400,beta+55,tocolor(255,255,255),2,"default-bold","left","top",true) dxDrawText("Enabled",165+(sx-400)/2,beta+60,((sx-400)/2)+400,beta+85,tocolor(255,255,255),1.7,"default","left","top",true) end Hide: local me = getLocalPlayer() local maxStreamedPlayers = 16 sx,sy = guiGetScreenSize() function isDM() for i, pu in pairs (getElementsByType("racepickup")) do local puType = getElementData(pu, "type") if (puType == "vehiclechange") then local puVehicle = tonumber(getElementData(pu, "vehicle")) if puVehicle == 425 then return true end end end return false end enabled = false function toggleHideAll() startTimess = getTickCount() setElementData(me, "hideAllPlayers", not getElementData(me, "hideAllPlayers"), false) if enabled == false then removeEventHandler("onClientRender",getRootElement(),mapwindowa) removeEventHandler("onClientRender",getRootElement(),carclose) removeEventHandler("onClientRender",getRootElement(),caropen) removeEventHandler("onClientRender",getRootElement(),wateropen) removeEventHandler("onClientRender",getRootElement(),waterclose) addEventHandler("onClientRender",getRootElement(),mapwindowda) else removeEventHandler("onClientRender",getRootElement(),mapwindowda) removeEventHandler("onClientRender",getRootElement(),carclose) removeEventHandler("onClientRender",getRootElement(),caropen) removeEventHandler("onClientRender",getRootElement(),wateropen) removeEventHandler("onClientRender",getRootElement(),waterclose) addEventHandler("onClientRender",getRootElement(),mapwindowa) end enabled = not enabled end addCommandHandler("hide", toggleHideAll) bindKey("F1", "down", toggleHideAll) function getPlayers() return getElementsByType("player") end streamedPlayers = {} function hidePlayer(player) local vehicle = getPedOccupiedVehicle(player) if vehicle then if getElementModel(vehicle) == 425 then showPlayer(player) return end if getElementDimension(vehicle) ~= 999 or getElementDimension(player) ~= 999 or getElementInterior(player) ~= 999 or getElementInterior(vehicle) ~= 999 then setElementDimension(vehicle, 999) setElementDimension(player, 999) setElementInterior(vehicle, 999) setElementInterior(player, 999) end end end function showPlayer(player) local vehicle = getPedOccupiedVehicle(player) if vehicle then if getElementDimension(vehicle) ~= 0 or getElementDimension(player) ~= 0 or getElementInterior(player) ~= 0 or getElementInterior(vehicle) ~= 0 then setElementDimension(vehicle, 0) setElementDimension(player, 0) setElementInterior(vehicle, 0) setElementInterior(player, 0) end end end setTimer( function() streamedPlayers = {} if getElementData(me, "state") ~= "alive" then for id, player in ipairs(getPlayers()) do if getElementData(player,"state") == "alive" then showPlayer(player) end end else if getElementData(me, "hideAllPlayers") and isDM() then for id, player in ipairs(getPlayers()) do if player ~= me then hidePlayer(player) end end return end local x2,y2,z2 = getElementPosition(me) for id, player in ipairs(getPlayers()) do if player ~= me then local x1,y1,z1 = getElementPosition(player) local d = getDistanceBetweenPoints3D(x1,y1,z1,x2,y2,z2 ) if d < 200 then table.insert(streamedPlayers, {player, d }) end end end if #streamedPlayers > maxStreamedPlayers then table.sort(streamedPlayers, function(a,b) return a[2] < b[2] end) for i = 1, maxStreamedPlayers do showPlayer(streamedPlayers[i][1]) end for i = maxStreamedPlayers+1, #streamedPlayers do hidePlayer(streamedPlayers[i][1]) end else for id, player in ipairs(getPlayers()) do if getElementData(player, "state") == "alive" then showPlayer(player) end end end end end, 500,0 ) function mapwindowa() deltaTime = (getTickCount()) - startTimess if deltaTime <= 1000 then beta = sy - ((deltaTime/1000)*100) elseif (deltaTime > 1000) and (deltaTime < 4000) then beta = sy-100 elseif (deltaTime >= 4000) and (deltaTime <= 6000) then beta = sy-((1-((deltaTime-4000)/800))*100) else removeEventHandler("onClientRender",getRootElement(),mapwindowa) end dxDrawRectangle((sx-400)/2,beta,400,110,tocolor ( 95, 0, 250, 100 )) dxDrawText("Lag Reduction",125+(sx-400)/2,beta+15,((sx-400)/2)+400,beta+55,tocolor(255,255,255),2,"default-bold","left","top",true) dxDrawText("Disabled",165+(sx-400)/2,beta+60,((sx-400)/2)+400,beta+85,tocolor(255,255,255),1.7,"default","left","top",true) end function mapwindowda() deltaTime = (getTickCount()) - startTimess if deltaTime <= 1000 then beta = sy - ((deltaTime/1000)*100) elseif (deltaTime > 1000) and (deltaTime < 4000) then beta = sy-100 elseif (deltaTime >= 4000) and (deltaTime <= 6000) then beta = sy-((1-((deltaTime-4000)/800))*100) else removeEventHandler("onClientRender",getRootElement(),mapwindowda) end dxDrawRectangle((sx-400)/2,beta,400,110,tocolor ( 95, 0, 250, 100 )) dxDrawText("Lag Reduction",125+(sx-400)/2,beta+15,((sx-400)/2)+400,beta+55,tocolor(255,255,255),2,"default-bold","left","top",true) dxDrawText("Enabled",165+(sx-400)/2,beta+60,((sx-400)/2)+400,beta+85,tocolor(255,255,255),1.7,"default","left","top",true) end
  8. Hello, i have login panel but i need if is player in login panel he can't use "TAB" for players and he can't hear music from map etc... Only must be in login panel and when he will press "Play as guest" or "Login" he will hear music etc.. client: wdwLogin_Pannel = {} tabPannel_Main = {} tab_Login = {} tab_Register = {} function open_log_reg_pannel() if not(isElement(wdwLogin_Pannel)) then showChat(false) x,y = guiGetScreenSize() local sWidth,sHeight = guiGetScreenSize() local Width,Height = 350,350 local X = (sWidth/2) - (Width/2) local Y = (sHeight/2) - (Height/2) Image = guiCreateStaticImage( 0, 0, 1920, 1200, "login_bg.jpeg", false ) guiSetEnabled (Image, false) Login_img = guiCreateStaticImage( X, Y + 120, 350, 350, "login_window.png", false ) guiSetEnabled (Login_img, false) --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! shLogin = guiCreateStaticImage( X + 23, Y + 349, 301, 44, "login.png", false ) addEventHandler("onClientGUIClick",shLogin,onClickBtnLogin) addEventHandler( "onClientMouseEnter",shLogin,LoginSH) addEventHandler("onClientMouseLeave",shLogin,SErem) edit_Login = guiCreateEdit(X + 20,Y + 205,250,35,"",false) edit_password = guiCreateEdit(X + 20,Y + 280,250,35,"",false) guiEditSetMaxLength ( edit_Login,25) guiEditSetMaxLength ( edit_password,25) guiEditSetMasked ( edit_password, true ) lbl_about_legth = guiCreateLabel(142,42,184,18,"",false) guiLabelSetColor(lbl_about_legth,253,255,68) guiLabelSetVerticalAlign(lbl_about_legth,"center") guiLabelSetHorizontalAlign(lbl_about_legth,"center",false) checkbox_save = guiCreateCheckBox(X + 175,Y + 260,100,20,"(Remember me!)",false,false) guiSetFont(checkbox_save,"default-small") login_tab_error_msg = guiCreateLabel(X,Y + 310,364,31,"Error_login_tab",false) guiLabelSetColor(login_tab_error_msg,255,0,0) guiLabelSetVerticalAlign(login_tab_error_msg,"center") guiLabelSetHorizontalAlign(login_tab_error_msg,"center",false) guiSetFont(login_tab_error_msg,"default-bold-small") --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! shGuest = guiCreateStaticImage( X + 23, Y + 401, 143, 45, "guest.png", false ) -- A gomb addEventHandler("onClientGUIClick",shGuest,onClickGuest) addEventHandler( "onClientMouseEnter",shGuest,GuestSH) addEventHandler("onClientMouseLeave",shGuest,SErem) lbl_reg_top_info = guiCreateLabel(X - 70,Y + 380,500,30,"Do not use: (\"!@#$\"%'^&*()\")",false) guiLabelSetColor(lbl_reg_top_info,255,145,0) guiLabelSetVerticalAlign(lbl_reg_top_info,"center") guiLabelSetHorizontalAlign(lbl_reg_top_info,"center",false) guiSetVisible(lbl_reg_top_info,false) edit_account_name = guiCreateEdit(X + 20,Y + 210,250,35,"",false) guiEditSetMaxLength ( edit_account_name,25) guiSetVisible(edit_account_name,false) edit__reg_tab_password = guiCreateEdit(X + 20,Y + 275,250,35,"",false) guiEditSetMaxLength ( edit__reg_tab_password,25) guiEditSetMasked ( edit__reg_tab_password, true ) guiSetVisible(edit__reg_tab_password,false) edit__reg_tab_Repassword = guiCreateEdit(X + 20,Y + 345,250,35,"",false) guiEditSetMaxLength ( edit__reg_tab_Repassword,25) guiEditSetMasked ( edit__reg_tab_Repassword, true ) guiSetVisible(edit__reg_tab_Repassword,false) guiSetEnabled (edit__reg_tab_Repassword, true) --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! shRegister = guiCreateStaticImage( X + 182, Y + 401, 143, 45, "register.png", false ) addEventHandler("onClientGUIClick",shRegister,OnBtnRegister) addEventHandler( "onClientMouseEnter",shRegister,RegisterSH) addEventHandler("onClientMouseLeave",shRegister,SErem) --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! shRegister2 = guiCreateStaticImage( X + 23, Y + 409, 301, 44, "register2.png", false ) addEventHandler("onClientGUIClick",shRegister2,onClickBtnRegister) addEventHandler( "onClientMouseEnter",shRegister2,Register2SH) addEventHandler("onClientMouseLeave",shRegister2,SErem) guiSetVisible(shRegister2,false) reg_tab_error_msg = guiCreateLabel(X,Y + 310,364,31,"Error_reg_ttab",false) guiLabelSetColor(reg_tab_error_msg,255,20,0) guiLabelSetVerticalAlign(reg_tab_error_msg,"center") guiLabelSetHorizontalAlign(reg_tab_error_msg,"center",false) guiSetFont(reg_tab_error_msg,"default-bold-small") showCursor(true) guiSetText(reg_tab_error_msg, "") guiSetText(login_tab_error_msg, "") local username, password = loadLoginFromXML() if not( username == "" or password == "") then guiCheckBoxSetSelected ( checkbox_save, true ) guiSetText ( edit_Login, tostring(username)) guiSetText ( edit_password, tostring(password)) else guiCheckBoxSetSelected ( checkbox_save, false ) guiSetText ( edit_Login, tostring(username)) guiSetText ( edit_password, tostring(password)) end end end function LoginSH () guiStaticImageLoadImage(shLogin, "sh.png" ) end function RegisterSH () guiStaticImageLoadImage(shRegister, "shr.png" ) end function Register2SH () guiStaticImageLoadImage(shRegister2, "shr2.png" ) end function GuestSH () guiStaticImageLoadImage(shGuest, "shg.png" ) end function SErem () guiStaticImageLoadImage(shLogin, "login.png" ) guiStaticImageLoadImage(shRegister, "register.png" ) guiStaticImageLoadImage(shGuest, "guest.png" ) guiStaticImageLoadImage(shRegister2, "register2.png" ) end function start_cl_resource() open_log_reg_pannel() end addEventHandler("onClientResourceStart",getResourceRootElement(getThisResource()),start_cl_resource) function loadLoginFromXML() local xml_save_log_File = xmlLoadFile ("files/xml/userdata.xml") if not xml_save_log_File then xml_save_log_File = xmlCreateFile("files/xml/userdata.xml", "login") end local usernameNode = xmlFindChild (xml_save_log_File, "username", 0) local passwordNode = xmlFindChild (xml_save_log_File, "password", 0) if usernameNode and passwordNode then return xmlNodeGetValue(usernameNode), xmlNodeGetValue(passwordNode) else return "", "" end xmlUnloadFile ( xml_save_log_File ) end function saveLoginToXML(username, password) local xml_save_log_File = xmlLoadFile ("files/xml/userdata.xml") if not xml_save_log_File then xml_save_log_File = xmlCreateFile("files/xml/userdata.xml", "login") end if (username ~= "") then local usernameNode = xmlFindChild (xml_save_log_File, "username", 0) if not usernameNode then usernameNode = xmlCreateChild(xml_save_log_File, "username") end xmlNodeSetValue (usernameNode, tostring(username)) end if (password ~= "") then local passwordNode = xmlFindChild (xml_save_log_File, "password", 0) if not passwordNode then passwordNode = xmlCreateChild(xml_save_log_File, "password") end xmlNodeSetValue (passwordNode, tostring(password)) end xmlSaveFile(xml_save_log_File) xmlUnloadFile (xml_save_log_File) end addEvent("saveLoginToXML", true) addEventHandler("saveLoginToXML", getRootElement(), saveLoginToXML) function resetSaveXML() local xml_save_log_File = xmlLoadFile ("files/xml/userdata.xml") if not xml_save_log_File then xml_save_log_File = xmlCreateFile("files/xml/userdata.xml", "login") end if (username ~= "") then local usernameNode = xmlFindChild (xml_save_log_File, "username", 0) if not usernameNode then usernameNode = xmlCreateChild(xml_save_log_File, "username") end end if (password ~= "") then local passwordNode = xmlFindChild (xml_save_log_File, "password", 0) if not passwordNode then passwordNode = xmlCreateChild(xml_save_log_File, "password") end xmlNodeSetValue (passwordNode, "") end xmlSaveFile(xml_save_log_File) xmlUnloadFile (xml_save_log_File) end addEvent("resetSaveXML", true) addEventHandler("resetSaveXML", getRootElement(), resetSaveXML) function onClickBtnLogin(button,state) showChat(true) showCursor(false) guiSetVisible(Image,false) guiSetVisible(shGuest, false) guiSetVisible(Image, false) guiSetVisible(shLogin, false) guiSetVisible(shRegister, false) guiSetVisible(edit_password, false) guiSetVisible(edit_Login, false) guiSetVisible(checkbox_save, false) guiSetVisible(Login_img, false) if(button == "left" and state == "up") then if (source == shLogin) then username = guiGetText(edit_Login) password = guiGetText(edit_password) if guiCheckBoxGetSelected ( checkbox_save ) == true then checksave = true else checksave = false end triggerServerEvent("onRequestLogin",getLocalPlayer(),username,password,checksave) end end end function OnBtnRegister () guiStaticImageLoadImage(Login_img, "register_window.png" )
  9. Hello, where can find part with Map name as gamemode ? I wanna delete it
  10. client.lua local clientContainer = {} clientContainer.createLogin = function() clientContainer.GUI = {} local resX, resY = guiGetScreenSize(); clientContainer.GUI.root = guiCreateWindow(resX/2-300/2, resY/2-117.5/2, 300, 117.5, 'authentication', false) -- USERNAME clientContainer.GUI.UserLab = guiCreateLabel(10,25,75,25,'Username:',false,clientContainer.GUI.root) clientContainer.GUI.UserEdt = guiCreateEdit(70,22.5,225,25,'', false,clientContainer.GUI.root) -- PASSWORD clientContainer.GUI.PassLab = guiCreateLabel(10,55,75,25,'Password:',false,clientContainer.GUI.root) clientContainer.GUI.PassEdt = guiCreateEdit(70,52.5,225,25,'', false,clientContainer.GUI.root) guiEditSetMasked(clientContainer.GUI.PassEdt, true) -- BUTTONS clientContainer.GUI.Check = guiCreateCheckBox(10,82.5,75,25,'save Data!',false,false,clientContainer.GUI.root) clientContainer.GUI.LogButt = guiCreateButton(216,82.5,75,25,'Log In',false,clientContainer.GUI.root) -- HANDLER addEventHandler('onClientGUIClick', clientContainer.GUI.LogButt, function() local user = guiGetText(clientContainer.GUI.UserEdt); local pass = guiGetText(clientContainer.GUI.PassEdt); if pass and pass ~= '' and user and user ~= '' then triggerServerEvent('onClientLogins', localPlayer, user, pass) end end, false) -- XML if fileExists('acc.xml') then local accRoot = xmlLoadFile('acc.xml') if accRoot then for index, child in next, xmlNodeGetChildren(accRoot) do if xmlNodeGetAttribute(child,'Save') == 'true' then guiSetText(clientContainer.GUI.UserEdt,xmlNodeGetAttribute(child,'Username')) guiSetText(clientContainer.GUI.PassEdt,xmlNodeGetAttribute(child,'Password')) guiCheckBoxSetSelected(clientContainer.GUI.Check,true) end end xmlUnloadFile(accRoot) end else local accRoot = xmlCreateFile('acc.xml','authentication') if accRoot then local settings = xmlCreateChild(accRoot,'Settings') -- settings xmlNodeSetAttribute(settings,'Username','') xmlNodeSetAttribute(settings,'Password','') xmlNodeSetAttribute(settings,'Save','false') xmlSaveFile(accRoot) xmlUnloadFile(accRoot) end end showCursor(true) end addEventHandler('onClientResourceStart', resourceRoot, clientContainer.createLogin) clientContainer.onClientSuccessfullyLogin = function() -- XML SAVE if ( guiCheckBoxGetSelected(clientContainer.GUI.Check) == true ) then local accRoot = xmlLoadFile('acc.xml') if accRoot then for index, child in next, xmlNodeGetChildren(accRoot) do xmlNodeSetAttribute(child,'Save','true') xmlNodeSetAttribute(child,'Username',guiGetText(clientContainer.GUI.UserEdt)) xmlNodeSetAttribute(child,'Password',guiGetText(clientContainer.GUI.PassEdt)) end xmlSaveFile(accRoot) xmlUnloadFile(accRoot) end end destroyElement(clientContainer.GUI.root) showCursor(false) end addEvent('onClientSuccessfullyLogin', true) addEventHandler('onClientSuccessfullyLogin', root, clientContainer.onClientSuccessfullyLogin)
  11. So still don't work i am clicking to Log In and nothing happend
  12. It doesn't work Maybe DB sections are wrong. Here: http://www.img.tpx.cz/uploads/DBALLLLLLLLLLLL.png
  13. server.lua local serverContainer = {} serverContainer.Settings = {} -- settings serverContainer.Settings.user = 'zahrej' serverContainer.Settings.pass = ' Can't tell you it :* ' serverContainer.Settings.host = 'mysql.mmhost.eu:3306' serverContainer.Settings.name = 'zahrej' serverContainer.startResource = function() local connection = dbConnect('mysql', 'dbname='..serverContainer.Settings.name..';host='..serverContainer.Settings.host, serverContainer.Settings.user, serverContainer.Settings.pass) if connection then outputDebugString('[MYBB-CONNECTER]: Could connect to the mysql server') serverContainer.connection = connection; else outputDebugString('[MYBB-CONNECTER]: Couldn\'t connect to the mysql server') end end addEventHandler('onResourceStart', resourceRoot, serverContainer.startResource) serverContainer.loginClient = function(user, pass) local qh = dbQuery(serverContainer.connection,'SELECT * FROM mtamembers WHERE username = ?',user) local result, row, errmsg = dbPoll ( qh, 5000 ) if row > 0 then for id, result in ipairs(result) do local salt = result['salt'] local username = result['username'] local password = result['password'] if salt and username and password then local newPass = md5(md5(salt):lower()..md5(pass):lower()):lower() if newPass == password then triggerClientEvent(source,'onClientSuccessfullyLogin',source) outputChatBox('#ff6666[sERVER]#ffffff You have successfully login.', source,1,1,1,true) else outputChatBox('#ff6666[sERVER]#ffffff This account doesn\'t exists or the password is wrong.', source,1,1,1,true) end end end end end addEvent('onClientLogins', true) addEventHandler('onClientLogins', root, serverContainer.loginClient) Can't press login button why ?
  14. You should to create colors in file called library, than you can use it, if you already have it use color without space #FF9900Map:
  15. I can help you, download any other user panel...
  16. papam77

    MTA:SA 1.4.0

    Hello, i have only one ask will anytime MTA 1.4 ?
  17. Hello, i have problem. I downloaded today MTA script editor but i don't see colored functions. How can set it ? http://www.img.tpx.cz/uploads/coloreeddsaas.png Like this https://wiki.multitheftauto.com/wiki/Fil ... ainwnd.png
  18. Or try use some functions of "Authifications" local serverContainer = {} serverContainer.Settings = {} -- settings serverContainer.Settings.user = 'ficker' serverContainer.Settings.pass = 'larsistcool123' serverContainer.Settings.host = '5.104.106.162' serverContainer.Settings.name = 'lars' -- only for example ;p -- [url=http://lars.projectx-gaming.net/]http://lars.projectx-gaming.net/[/url] serverContainer.startResource = function() local connection = dbConnect('mysql', 'dbname='..serverContainer.Settings.name..';host='..serverContainer.Settings.host, serverContainer.Settings.user, serverContainer.Settings.pass) if connection then outputDebugString('[MYBB-CONNECTER]: Could connect to the mysql server') serverContainer.connection = connection; else outputDebugString('[MYBB-CONNECTER]: Couldn\'t connect to the mysql server') end end addEventHandler('onResourceStart', resourceRoot, serverContainer.startResource) serverContainer.loginClient = function(user, pass) local qh = dbQuery(serverContainer.connection,'SELECT * FROM mybb_users WHERE username = ?',user) local result, row, errmsg = dbPoll ( qh, 5000 ) if row > 0 then for id, result in ipairs(result) do local salt = result['salt'] local username = result['username'] local password = result['password'] if salt and username and password then local newPass = md5(md5(salt):lower()..md5(pass):lower()):lower() if newPass == password then triggerClientEvent(source,'onClientSuccessfullyLogin',source) outputChatBox('#ff6666[sERVER]#ffffff You have successfully login.', source,1,1,1,true) else outputChatBox('#ff6666[sERVER]#ffffff This account doesn\'t exists or the password is wrong.', source,1,1,1,true) end end end end end addEvent('onClientLogins', true) addEventHandler('onClientLogins', root, serverContainer.loginClient)
  19. He mean command like /deletetime 1 But for rename time. Example: Player DeeJay has tt1 (I am DeeJay ) And when he type /renametime 1 [New Name] so time will rename to choosen name.
  20. Because this user panel is shit with too many timers. User panel still refresh "TAB"
  21. papam77

    DB Table

    Hello, where can type table name in DB my table with users has name "users" Where can type it ? local serverContainer = {} serverContainer.Settings = {} -- settings serverContainer.Settings.user = 'ficker' serverContainer.Settings.pass = 'larsistcool123' serverContainer.Settings.host = '5.104.106.162' serverContainer.Settings.name = 'lars' -- only for example ;p -- [url=http://lars.projectx-gaming.net/]http://lars.projectx-gaming.net/[/url] serverContainer.startResource = function() local connection = dbConnect('mysql', 'dbname='..serverContainer.Settings.name..';host='..serverContainer.Settings.host, serverContainer.Settings.user, serverContainer.Settings.pass) if connection then outputDebugString('[MYBB-CONNECTER]: Could connect to the mysql server') serverContainer.connection = connection; else outputDebugString('[MYBB-CONNECTER]: Couldn\'t connect to the mysql server') end end addEventHandler('onResourceStart', resourceRoot, serverContainer.startResource) serverContainer.loginClient = function(user, pass) local qh = dbQuery(serverContainer.connection,'SELECT * FROM mybb_users WHERE username = ?',user) local result, row, errmsg = dbPoll ( qh, 5000 ) if row > 0 then for id, result in ipairs(result) do local salt = result['salt'] local username = result['username'] local password = result['password'] if salt and username and password then local newPass = md5(md5(salt):lower()..md5(pass):lower()):lower() if newPass == password then triggerClientEvent(source,'onClientSuccessfullyLogin',source) outputChatBox('#ff6666[sERVER]#ffffff You have successfully login.', source,1,1,1,true) else outputChatBox('#ff6666[sERVER]#ffffff This account doesn\'t exists or the password is wrong.', source,1,1,1,true) end end end end end addEvent('onClientLogins', true) addEventHandler('onClientLogins', root, serverContainer.loginClient)
  22. Hello, i have file for shooter if player fall he can press "F" for join to Shooter Arena but he can shoot in playing normal maps where is error ? local screen_width, screen_height = guiGetScreenSize() local RESPAWN_KEY = "F" local showRespawn = false local text = "#5F02FAPress #FFFFFF"..RESPAWN_KEY.." #5F02FAfor join to Shooter Arena" local scale = 1 local font = "bankgothic" local textWidth = dxGetTextWidth(text:gsub("#%x%x%x%x%x%x", ""), scale, font) local fontHeight = dxGetFontHeight(scale, font) local color = tocolor(255, 128, 0, 255) setElementData(getLocalPlayer(), "respawn.playing", false, true) local running = false local vehicleData = {} local SAVE_INTER = 22500 local saveTimer = nil local reset = true -- reset timer local lastSaved = 0 -- When element data for the player changes, bind or unbind key. addEventHandler("onClientElementDataChange", getLocalPlayer(), function(dataName, oldValue) if(getElementType(source) ~= "player" or dataName ~= "state")then return end local newValue = getElementData(source, dataName) if(newValue == "dead")then reset =true setTimer(function() if(#vehicleData > 0 and running)then showRespawn = true setElementData(getLocalPlayer(), "respawn.playing", false, true) bindKey(RESPAWN_KEY, "up", respawn) end end, 3000, 1) else unbindKey(RESPAWN_KEY, "up", respawn) showRespawn = false setElementData(getLocalPlayer(), "respawn.playing", false, true) end if(newValue == "alive" and oldValue ~= "alive")then reset = false end end) -- respawn player, later add "checkpoints" function respawn() reset = false unbindKey(RESPAWN_KEY, "up", respawn) showRespawn = false setElementData(getLocalPlayer(), "respawn.playing", true, true) local index = #vehicleData local index2 = #vehicleData -- Save memory and go back to later saved positions if dying too fast. local timeWasted = math.floor((getTickCount() - lastSaved)/1000) if(timeWasted <= 7 and index > 1)then table.remove(vehicleData, index) index = #vehicleData outputDebugString("Vehicle data num: "..index.." removed respawn.") end outputDebugString("Respawning with vehicle data index: "..index) triggerServerEvent("onClientRequestRespawn", getLocalPlayer(), vehicleData[index]) if(index2 > 1 and index == index2)then table.remove(vehicleData, index) outputDebugString("Vehicle data num: "..index.." removed.") end end addEventHandler("onClientRender", getRootElement(), function() if(reset)then resetTimer(saveTimer) end -- Dont show text if player is not allowed to respawn. if not showRespawn then return end local x, y = screen_width/2 - textWidth/2, screen_height * 0.75 - fontHeight/2 dxDrawColoredText(text, x, y, screen_width, screen_height, color, scale, font) end) -- Save vehicle data, to later spawn with that data. function saveVehicleData() local vehicle = getPedOccupiedVehicle(getLocalPlayer()) if(not running or showRespawn or (not vehicle) or reset)then return end local mode = getElementModel(vehicle) if(mode == 425)then return end local lastSaved = getTickCount() local index = #vehicleData + 1 vehicleData[index] = {} local posX, posY, posZ = getElementPosition(vehicle) local rotX, rotY, rotZ = getElementRotation(vehicle) local velX, velY, velZ = getElementVelocity(vehicle) local turnVelX, turnVelY, turnVelZ = getVehicleTurnVelocity(vehicle) local health = getElementHealth(vehicle) local model = getElementModel(vehicle) -- Later add worldSpecialProperty too. vehicleData[index].posX = posX vehicleData[index].posY = posY vehicleData[index].posZ = posZ vehicleData[index].rotX = rotX vehicleData[index].rotY = rotY vehicleData[index].rotZ = rotZ vehicleData[index].velX = velX vehicleData[index].velY = velY vehicleData[index].velZ = velZ vehicleData[index].turnVelX = turnVelX vehicleData[index].turnVelY = turnVelY vehicleData[index].turnVelZ = turnVelZ vehicleData[index].health = health vehicleData[index].model = model vehicleData[index].dimension = getElementDimension(vehicle) vehicleData[index].nitro = nil local upgrades = getVehicleUpgrades(vehicle) for upgradeKey, upgradeValue in ipairs(upgrades) do if(tonumber(upgradeValue) >= 1008 and tonumber(upgradeValue) <= 1010)then vehicleData[index].nitro = tonumber(upgradeValue) end end outputDebugString("Vehicle data num: "..index.." saved.") end saveTimer = setTimer(saveVehicleData, SAVE_INTER, 0) function saveRespawnToSpawnpoint(player) local vehicle = getPedOccupiedVehicle(player) local index = #vehicleData + 1 vehicleData[index] = {} local spawn = getElementsByType("spawnpoint") local posX, posY, posZ = getElementData(spawn[1], "posX"), getElementData(spawn[1], "posY"), getElementData(spawn[1], "posZ") local rotX, rotY, rotZ = getElementData(spawn[1], "rotX"), getElementData(spawn[1], "rotY"), getElementData(spawn[1], "rotZ") local velX, velY, velZ = 0, 0, 0 local turnVelX, turnVelY, turnVelZ = 0, 0, 0 local health = getElementHealth(vehicle) local model = getElementData(spawn[1], "vehicle") -- Later add worldSpecialProperty too. vehicleData[index].posX = posX vehicleData[index].posY = posY vehicleData[index].posZ = posZ vehicleData[index].rotX = rotX vehicleData[index].rotY = rotY vehicleData[index].rotZ = rotZ vehicleData[index].velX = velX vehicleData[index].velY = velY vehicleData[index].velZ = velZ vehicleData[index].turnVelX = turnVelX vehicleData[index].turnVelY = turnVelY vehicleData[index].turnVelZ = turnVelZ vehicleData[index].health = health vehicleData[index].model = model vehicleData[index].dimension = getElementDimension(vehicle) end addEvent("onClientRaceStateChanging", true) addEventHandler("onClientRaceStateChanging", getRootElement(), function(newState, oldState) if(newState == "Running")then local state = tostring(getElementData(getLocalPlayer(), "state")) if(state == "waiting")then --[[ reset = false running = true vehicleData = {} saveRespawnToSpawnpoint(getLocalPlayer()) showRespawn = true setElementData(getLocalPlayer(), "respawn.playing", false, true) bindKey(RESPAWN_KEY, "up", respawn) --]] elseif(state == "alive" or state == "not ready")then reset = false running = true for i = 1, #vehicleData do table.remove(vehicleData, i) end vehicleData = {} saveVehicleData() end end if(newState == "PostFinish" or newState == "NoMap")then reset = true running = false unbindKey(RESPAWN_KEY, "up", respawn) showRespawn = false setElementData(getLocalPlayer(), "respawn.playing", false, true) end end) addEventHandler("onClientPlayerWasted", getLocalPlayer(), function() if(source ~= getLocalPlayer())then return end reset = true setElementData(getLocalPlayer(), "respawn.playing", false, true) setTimer(function() --local state = getElementData(getLocalPlayer(), "respawn.playing") or true if(#vehicleData > 0 and running)then showRespawn = true setElementData(getLocalPlayer(), "respawn.playing", false, true) bindKey(RESPAWN_KEY, "up", respawn) end end, 3000, 1) end) local unfreeze = {} addEvent("clientUnfreezeOnReady", true) addEventHandler("clientUnfreezeOnReady", getRootElement(), function(vehicle, vehData) -- source is the vehicle to unfreeze unfreeze.vehicle = vehicle unfreeze.health = vehData.health unfreeze.dim = vehData.dimension unfreeze.x, unfreeze.y, unfreeze.z = vehData.posX, vehData.posY, vehData.posZ unfreeze.vx, unfreeze.vy, unfreeze.vz = vehData.velX, vehData.velY, vehData.velZ unfreeze.tx, unfreeze.ty, unfreeze.tz = vehData.turnVelX, vehData.turnVelY, vehData.turnVelZ setElementFrozen(vehicle, false) addEventHandler("onClientRender", getRootElement(), unfreezeOnReady) end) function unfreezeOnReady() setElementHealth(unfreeze.vehicle, unfreeze.health) setElementPosition(unfreeze.vehicle, unfreeze.x, unfreeze.y, unfreeze.z) if(not isElementFrozen(unfreeze.vehicle))then setElementDimension(unfreeze.vehicle, unfreeze.dim) setElementVelocity(unfreeze.vehicle, unfreeze.vx, unfreeze.vy, unfreeze.vz) setVehicleTurnVelocity(unfreeze.vehicle, unfreeze.tx, unfreeze.ty, unfreeze.tz) removeEventHandler("onClientRender", getRootElement(), unfreezeOnReady) end end function dxDrawColoredText(text, left, top, right, bottom, color, scale, font, alignX, alignY, clip, wordBreak, postGUI) -- Making them optional. right = right or screen_width bottom = bottom or screen_height while(left < 0) do left = screen_width - math.abs(left) end while(top < 0) do top = screen_height - math.abs(top) end while(right < 0) do right = screen_width - math.abs(right) end while(bottom < 0) do bottom = screen_height -
  23. Hello, i wanna make better protection for my scripts how can make it ? And if i will need edit it again how can decrypt it ?
  24. Hello, i downloaded dm_respawn as already someone told me, and now i need to make that player will move to infernus Shooter-Arena.map "editor_main"> "object (vgsSairportland14) (1)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1735.7420654297" posY="-572.17755126953" posZ="26.983905792236" rotX="0" rotY="270" rotZ="0"> "object (vgsSairportland14) (2)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1735.7412109375" posY="-360.18450927734" posZ="26.983905792236" rotX="0" rotY="269.99450683594" rotZ="0"> "object (vgsSairportland14) (3)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1747.3885498047" posY="-268.55426025391" posZ="26.983905792236" rotX="0" rotY="269.99450683594" rotZ="339"> "object (vgsSairportland14) (4)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1738.3052978516" posY="-268.5537109375" posZ="26.983905792236" rotX="0" rotY="269.98901367188" rotZ="349.09411621094"> "object (vgsSairportland14) (5)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1732.8608398438" posY="-209.81007385254" posZ="26.983905792236" rotX="0" rotY="269.98901367188" rotZ="321.09057617188"> "object (vgsSairportland14) (6)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1714.6787109375" posY="-181.00752258301" posZ="26.983905792236" rotX="0" rotY="269.98901367188" rotZ="314.86291503906"> "object (vgsSairportland14) (7)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1657.2185058594" posY="-123.90294647217" posZ="26.983905792236" rotX="0" rotY="269.98901367188" rotZ="314.86267089844"> "object (vgsSairportland14) (8)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1510.2595214844" posY="22.485719680786" posZ="26.983905792236" rotX="0" rotY="269.98901367188" rotZ="314.86267089844"> "object (waterjumpx2) (1)" interior="0" alpha="255" doublesided="false" model="1655" scale="1" dimension="0" posX="-1298.4639892578" posY="-376.56405639648" posZ="14.115664482117" rotX="0" rotY="0" rotZ="0"> "object (waterjumpx2) (2)" interior="0" alpha="255" doublesided="false" model="1655" scale="1" dimension="0" posX="-1298.4638671875" posY="-371.90435791016" posZ="16.906421661377" rotX="14.754089355469" rotY="0" rotZ="0"> "object (waterjumpx2) (3)" interior="0" alpha="255" doublesided="false" model="1655" scale="1" dimension="0" posX="-1298.4638671875" posY="-374.8073425293" posZ="15.03102684021" rotX="6.2073059082031" rotY="0" rotZ="0"> "object (waterjumpx2) (4)" interior="0" alpha="255" doublesided="false" model="1655" scale="1" dimension="0" posX="-1298.4638671875" posY="-367.95407104492" posZ="20.480047225952" rotX="24.843994140625" rotY="0" rotZ="0"> "vehicle (Infernus) (1)" paintjob="3" interior="0" alpha="255" model="411" plate="0YTK 9PK" dimension="0" posX="-1338.6936035156" posY="-274.35089111328" posZ="13.948437690735" rotX="0" rotY="0" rotZ="283" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (2)" paintjob="3" interior="0" alpha="255" model="411" plate="YDE2 B8F" dimension="0" posX="-1361.203125" posY="-245.90014648438" posZ="13.948437690735" rotX="0" rotY="0" rotZ="315.66735839844" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (3)" paintjob="3" interior="0" alpha="255" model="411" plate="3NX1 A7F" dimension="0" posX="-1387.2897949219" posY="-224.47856140137" posZ="13.907984733582" rotX="0" rotY="0" rotZ="336.66467285156" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (4)" paintjob="3" interior="0" alpha="255" model="411" plate="KRBC EV9" dimension="0" posX="-1382.7534179688" posY="-148.18823242188" posZ="25.120460510254" rotX="0" rotY="0" rotZ="336.65954589844" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (5)" paintjob="3" interior="0" alpha="255" model="411" plate="DGOS 3WR" dimension="0" posX="-1432.6052246094" posY="-128.24569702148" posZ="25.120460510254" rotX="0" rotY="0" rotZ="345.20104980469" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (6)" paintjob="3" interior="0" alpha="255" model="411" plate="3WSW 6DP" dimension="0" posX="-1260.2960205078" posY="35.431861877441" posZ="13.941098213196" rotX="0" rotY="0" rotZ="132.19592285156" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (7)" paintjob="3" interior="0" alpha="255" model="411" plate="9T9C SII" dimension="0" posX="-1138.8322753906" posY="-159.45195007324" posZ="13.948437690735" rotX="0" rotY="0" rotZ="46.642761230469" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (8)" paintjob="3" interior="0" alpha="255" model="411" plate="5QQZ Z8R" dimension="0" posX="-1128.939453125" posY="-148.56323242188" posZ="13.948437690735" rotX="0" rotY="0" rotZ="46.642456054688" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (9)" paintjob="3" interior="0" alpha="255" model="411" plate="7OK5 46E" dimension="0" posX="-1153.9693603516" posY="-94.981910705566" posZ="13.869968414307" rotX="0" rotY="0" rotZ="46.642456054688" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (10)" paintjob="3" interior="0" alpha="255" model="411" plate="FQ3X VMR" dimension="0" posX="-1314.3807373047" posY="-495.02334594727" posZ="13.948437690735" rotX="0" rotY="0" rotZ="287.64245605469" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (11)" paintjob="3" interior="0" alpha="255" model="411" plate="FPO1 N2Z" dimension="0" posX="-1314.3798828125" posY="-490.99911499023" posZ="13.948437690735" rotX="0" rotY="0" rotZ="287.63854980469" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (12)" paintjob="3" interior="0" alpha="255" model="411" plate="NM5H 6NF" dimension="0" posX="-1314.3798828125" posY="-486.91906738281" posZ="13.948437690735" rotX="0" rotY="0" rotZ="287.63854980469" color="98,68,40,245,245,245,0,0,0,0,0,0"> "object (ballypllr01_lvs) (1)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1324.6219482422" posY="-493.69378662109" posZ="16.576461791992" rotX="0" rotY="0" rotZ="35"> "object (ballypllr01_lvs) (2)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1327.0543212891" posY="-489.0641784668" posZ="21.94188117981" rotX="270.20080566406" rotY="179.99993896484" rotZ="207.99688720703"> "object (ballypllr01_lvs) (5)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1327.0537109375" posY="-489.0634765625" posZ="17.956241607666" rotX="270.19775390625" rotY="179.99450683594" rotZ="207.9931640625"> "object (ballypllr01_lvs) (6)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1327.0537109375" posY="-489.0634765625" posZ="13.375527381897" rotX="270.19775390625" rotY="179.99450683594" rotZ="207.9931640625"> "object (ballypllr01_lvs) (7)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1328.7805175781" posY="-485.55590820313" posZ="16.473478317261" rotX="24.449127197266" rotY="179.99993896484" rotZ="205.63897705078"> "object (ballypllr01_lvs) (8)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1330.9780273438" posY="-481.14282226563" posZ="16.537443161011" rotX="333.88000488281" rotY="179.99444580078" rotZ="207.18493652344"> "object (ballypllr01_lvs) (9)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1331.3809814453" posY="-480.45343017578" posZ="16.537443161011" rotX="89.544586181641" rotY="1.2454833984375" rotZ="25.862121582031"> "object (ballypllr01_lvs) (11)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1331.9125976563" posY="-479.205078125" posZ="16.576461791992" rotX="0" rotY="0" rotZ="34.996948242188"> "object (ballypllr01_lvs) (12)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1334.3114013672" posY="-474.53689575195" posZ="21.94188117981" rotX="270.19775390625" rotY="179.99450683594" rotZ="207.9931640625"> "object (ballypllr01_lvs) (13)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1334.310546875" posY="-474.5361328125" posZ="13.180958747864" rotX="270.19775390625" rotY="179.99450683594" rotZ="207.9931640625"> "object (ballypllr01_lvs) (14)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1334.2320556641" posY="-474.44448852539" posZ="12.185346603394" rotX="0.025543212890625" rotY="0" rotZ="27.998626708984"> "object (ballypllr01_lvs) (15)" interior="0" alpha="255" doublesided="false" model="3437" scale="1" dimension="0" posX="-1335.2026367188" posY="-472.87512207031" posZ="17.680547714233" rotX="270.9443359375" rotY="180" rotZ="209.54626464844"> "vehicle (Infernus) (13)" paintjob="3" interior="0" alpha="255" model="411" plate="F5TM F2M" dimension="0" posX="-1527.3990478516" posY="-252.03063964844" posZ="13.948437690735" rotX="0" rotY="0" rotZ="0" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (14)" paintjob="3" interior="0" alpha="255" model="411" plate="2DNC OMB" dimension="0" posX="-1594.1765136719" posY="-291.63287353516" posZ="13.948437690735" rotX="0" rotY="0" rotZ="49" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (15)" paintjob="3" interior="0" alpha="255" model="411" plate="KBS6 JDV" dimension="0" posX="-1728.6401367188" posY="-368.51068115234" posZ="14.035047531128" rotX="0" rotY="0" rotZ="269.78698730469" color="98,68,40,245,245,245,0,0,0,0,0,0"> "object (vgsSairportland14) (9)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1755.9299316406" posY="-636.63043212891" posZ="26.983905792236" rotX="0" rotY="269.99450683594" rotZ="28"> "object (vgsSairportland14) (10)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1777.4443359375" posY="-803.19573974609" posZ="22.465316772461" rotX="0" rotY="269.98901367188" rotZ="317.99865722656"> "vehicle (Infernus) (16)" paintjob="3" interior="0" alpha="255" model="411" plate="GF8I LPC" dimension="0" posX="-1519.5301513672" posY="-661.82983398438" posZ="13.943956375122" rotX="0" rotY="0" rotZ="4.6385498046875" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (17)" paintjob="3" interior="0" alpha="255" model="411" plate="56Z1 O83" dimension="0" posX="-1681.7583007813" posY="-614.80065917969" posZ="14.011343955994" rotX="0" rotY="0" rotZ="4.63623046875" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (18)" paintjob="3" interior="0" alpha="255" model="411" plate="B1ZR 3YM" dimension="0" posX="-1677.5977783203" posY="-617.39001464844" posZ="14.011343955994" rotX="0" rotY="0" rotZ="4.63623046875" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (19)" paintjob="3" interior="0" alpha="255" model="411" plate="UIAB IVR" dimension="0" posX="-1615.3203125" posY="-489.13208007813" posZ="21.887805938721" rotX="0" rotY="0" rotZ="41.9658203125" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (20)" paintjob="3" interior="0" alpha="255" model="411" plate="KX13 96M" dimension="0" posX="-1611.5079345703" posY="-493.36871337891" posZ="21.887805938721" rotX="0" rotY="0" rotZ="223.19671630859" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (21)" paintjob="3" interior="0" alpha="255" model="411" plate="22VA K7H" dimension="0" posX="-1083.4086914063" posY="404.96258544922" posZ="13.948437690735" rotX="0" rotY="0" rotZ="132.19299316406" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (22)" paintjob="3" interior="0" alpha="255" model="411" plate="B9CT KQZ" dimension="0" posX="-1083.408203125" posY="416.60971069336" posZ="13.948437690735" rotX="0" rotY="0" rotZ="132.19299316406" color="98,68,40,245,245,245,0,0,0,0,0,0"> "vehicle (Infernus) (23)" paintjob="3" interior="0" alpha="255" model="411" plate="PIWP Z1B" dimension="0" posX="-1070.9675292969" posY="404.11468505859" posZ="13.948437690735" rotX="0" rotY="0" rotZ="132.19299316406" color="98,68,40,245,245,245,0,0,0,0,0,0"> "object (vgsSairportland14) (11)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1134.5936279297" posY="-498.97256469727" posZ="24.802307128906" rotX="0" rotY="269.99450683594" rotZ="140"> "object (vgsSairportland14) (12)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1203.7003173828" posY="-671.36535644531" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="174.99877929688"> "object (vgsSairportland14) (13)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1218.4534912109" posY="-696.21484375" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="125.99572753906"> "object (vgsSairportland14) (14)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1247.1832275391" posY="-717.32196044922" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="104.9912109375"> "object (vgsSairportland14) (15)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1338.0318603516" posY="-738.28814697266" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="90.990844726563"> "object (vgsSairportland14) (16)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1442.8572998047" posY="-755.37219238281" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="104.98876953125"> "object (vgsSairportland14) (17)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1539.1411132813" posY="-757.70172119141" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="83.9853515625"> "object (vgsSairportland14) (18)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1629.4488525391" posY="-734.24768066406" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="62.984985351563"> "object (vgsSairportland14) (19)" interior="0" alpha="255" doublesided="false" model="8357" scale="1" dimension="0" posX="-1667.4962158203" posY="-724.92846679688" posZ="24.802307128906" rotX="0" rotY="269.98901367188" rotZ="83.984619140625"> respawn_c.lua local screen_width, screen_height = guiGetScreenSize() local RESPAWN_KEY = "F" local showRespawn = false local text = "#FF5500Press #FFFFFF"..RESPAWN_KEY.." #FF5500for join to Shooter Arena" local scale = 1.5 local font = "bankgothic" local textWidth = dxGetTextWidth(text:gsub("#%x%x%x%x%x%x", ""), scale, font) local fontHeight = dxGetFontHeight(scale, font) local color = tocolor(255, 128, 0, 255) setElementData(getLocalPlayer(), "respawn.playing", false, true) local running = false local vehicleData = {} local SAVE_INTER = 22500 local saveTimer = nil local reset = true -- reset timer local lastSaved = 0 -- When element data for the player changes, bind or unbind key. addEventHandler("onClientElementDataChange", getLocalPlayer(), function(dataName, oldValue) if(getElementType(source) ~= "player" or dataName ~= "state")then return end local newValue = getElementData(source, dataName) if(newValue == "dead")then reset =true setTimer(function() if(#vehicleData > 0 and running)then showRespawn = true setElementData(getLocalPlayer(), "respawn.playing", false, true) bindKey(RESPAWN_KEY, "up", respawn) end end, 3000, 1) else unbindKey(RESPAWN_KEY, "up", respawn) showRespawn = false setElementData(getLocalPlayer(), "respawn.playing", false, true) end if(newValue == "alive" and oldValue ~= "alive")then reset = false end end) -- respawn player, later add "checkpoints" function respawn() reset = false unbindKey(RESPAWN_KEY, "up", respawn) showRespawn = false setElementData(getLocalPlayer(), "respawn.playing", true, true) local index = #vehicleData local index2 = #vehicleData -- Save memory and go back to later saved positions if dying too fast. local timeWasted = math.floor((getTickCount() - lastSaved)/1000) if(timeWasted <= 7 and index > 1)then table.remove(vehicleData, index) index = #vehicleData outputDebugString("Vehicle data num: "..index.." removed respawn.") end outputDebugString("Respawning with vehicle data index: "..index) triggerServerEvent("onClientRequestRespawn", getLocalPlayer(), vehicleData[index]) if(index2 > 1 and index == index2)then table.remove(vehicleData, index) outputDebugString("Vehicle data num: "..index.." removed.") end end addEventHandler("onClientRender", getRootElement(), function() if(reset)then resetTimer(saveTimer) end -- Dont show text if player is not allowed to respawn. if not showRespawn then return end local x, y = screen_width/2 - textWidth/2, screen_height * 0.75 - fontHeight/2 dxDrawColoredText(text, x, y, screen_width, screen_height, color, scale, font) end) -- Save vehicle data, to later spawn with that data. function saveVehicleData() local vehicle = getPedOccupiedVehicle(getLocalPlayer()) if(not running or showRespawn or (not vehicle) or reset)then return end local mode = getElementModel(vehicle) if(mode == 425)then return end local lastSaved = getTickCount() local index = #vehicleData + 1 vehicleData[index] = {} local posX, posY, posZ = getElementPosition(vehicle) local rotX, rotY, rotZ = getElementRotation(vehicle) local velX, velY, velZ = getElementVelocity(vehicle) local turnVelX, turnVelY, turnVelZ = getVehicleTurnVelocity(vehicle) local health = getElementHealth(vehicle) local model = getElementModel(vehicle) -- Later add worldSpecialProperty too. vehicleData[index].posX = posX vehicleData[index].posY = posY vehicleData[index].posZ = posZ vehicleData[index].rotX = rotX vehicleData[index].rotY = rotY vehicleData[index].rotZ = rotZ vehicleData[index].velX = velX vehicleData[index].velY = velY vehicleData[index].velZ = velZ vehicleData[index].turnVelX = turnVelX vehicleData[index].turnVelY = turnVelY vehicleData[index].turnVelZ = turnVelZ vehicleData[index].health = health vehicleData[index].model = model vehicleData[index].dimension = getElementDimension(vehicle) vehicleData[index].nitro = nil local upgrades = getVehicleUpgrades(vehicle) for upgradeKey, upgradeValue in ipairs(upgrades) do if(tonumber(upgradeValue) >= 1008 and tonumber(upgradeValue) <= 1010)then vehicleData[index].nitro = tonumber(upgradeValue) end end outputDebugString("Vehicle data num: "..index.." saved.") end saveTimer = setTimer(saveVehicleData, SAVE_INTER, 0) function saveRespawnToSpawnpoint(player) local vehicle = getPedOccupiedVehicle(player) local index = #vehicleData + 1 vehicleData[index] = {} local spawn = getElementsByType("spawnpoint") local posX, posY, posZ = getElementData(spawn[1], "posX"), getElementData(spawn[1], "posY"), getElementData(spawn[1], "posZ") local rotX, rotY, rotZ = getElementData(spawn[1], "rotX"), getElementData(spawn[1], "rotY"), getElementData(spawn[1], "rotZ") local velX, velY, velZ = 0, 0, 0 local turnVelX, turnVelY, turnVelZ = 0, 0, 0 local health = getElementHealth(vehicle) local model = getElementData(spawn[1], "vehicle") -- Later add worldSpecialProperty too. vehicleData[index].posX = posX vehicleData[index].posY = posY vehicleData[index].posZ = posZ vehicleData[index].rotX = rotX vehicleData[index].rotY = rotY vehicleData[index].rotZ = rotZ vehicleData[index].velX = velX vehicleData[index].velY = velY vehicleData[index].velZ = velZ vehicleData[index].turnVelX = turnVelX vehicleData[index].turnVelY = turnVelY vehicleData[index].turnVelZ = turnVelZ vehicleData[index].health = health vehicleData[index].model = model vehicleData[index].dimension = getElementDimension(vehicle) end addEvent("onClientRaceStateChanging", true) addEventHandler("onClientRaceStateChanging", getRootElement(), function(newState, oldState) if(newState == "Running")then local state = tostring(getElementData(getLocalPlayer(), "state")) if(state == "waiting")then --[[ reset = false running = true vehicleData = {} saveRespawnToSpawnpoint(getLocalPlayer()) showRespawn = true setElementData(getLocalPlayer(), "respawn.playing", false, true) bindKey(RESPAWN_KEY, "up", respawn) --]] elseif(state == "alive" or state == "not ready")then reset = false running = true for i = 1, #vehicleData do table.remove(vehicleData, i) end vehicleData = {} saveVehicleData() end end if(newState == "PostFinish" or newState == "NoMap")then reset = true running = false unbindKey(RESPAWN_KEY, "up", respawn) showRespawn = false setElementData(getLocalPlayer(), "respawn.playing", false, true) end end) addEventHandler("onClientPlayerWasted", getLocalPlayer(), function() if(source ~= getLocalPlayer())then return end reset = true setElementData(getLocalPlayer(), "respawn.playing", false, true) setTimer(function() --local state = getElementData(getLocalPlayer(), "respawn.playing") or true if(#vehicleData > 0 and running)then showRespawn = true setElementData(getLocalPlayer(), "respawn.playing", false, true) bindKey(RESPAWN_KEY, "up", respawn) end end, 3000, 1) end) local unfreeze = {} addEvent("clientUnfreezeOnReady", true) addEventHandler("clientUnfreezeOnReady", getRootElement(), function(vehicle, vehData) -- source is the vehicle to unfreeze unfreeze.vehicle = vehicle unfreeze.health = vehData.health unfreeze.dim = vehData.dimension unfreeze.x, unfreeze.y, unfreeze.z = vehData.posX, vehData.posY, vehData.posZ unfreeze.vx, unfreeze.vy, unfreeze.vz = vehData.velX, vehData.velY, vehData.velZ unfreeze.tx, unfreeze.ty, unfreeze.tz = vehData.turnVelX, vehData.turnVelY, vehData.turnVelZ setElementFrozen(vehicle, false) addEventHandler("onClientRender", getRootElement(), unfreezeOnReady) end) function unfreezeOnReady() setElementHealth(unfreeze.vehicle, unfreeze.health) setElementPosition(unfreeze.vehicle, unfreeze.x, unfreeze.y, unfreeze.z) if(not isElementFrozen(unfreeze.vehicle))then setElementDimension(unfreeze.vehicle, unfreeze.dim) setElementVelocity(unfreeze.vehicle, unfreeze.vx, unfreeze.vy, unfreeze.vz) setVehicleTurnVelocity(unfreeze.vehicle, unfreeze.tx, unfreeze.ty, unfreeze.tz) removeEventHandler("onClientRender", getRootElement(), unfreezeOnReady) end end function dxDrawColoredText(text, left, top, right, bottom, color, scale, font, alignX, alignY, clip, wordBreak, postGUI) -- Making them optional. right = right or screen_width bottom = bottom or screen_height while(left < 0) do left = screen_width - math.abs(left) end while(top < 0) do top = screen_height - math.abs(top) end while(right < 0) do right = screen_width - math.abs(right) end while(bottom < 0) do bottom = screen_height -
×
×
  • Create New...