Search the Community

Showing results for tags 'ayuda'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Multi Theft Auto: San Andreas 1.x
    • Support for MTA:SA 1.x
    • User Guides
    • Open Source Contributors
    • Suggestions
    • Ban appeals
  • General MTA
    • News
    • Media
    • Site/Forum/Discord/Mantis/Wiki related
    • MTA Chat
    • Other languages
  • MTA Community
    • Scripting
    • Maps
    • Resources
    • Other Creations & GTA modding
    • Competitive gameplay
    • Servers
  • Other
  • Archive
  • Private Bugtracker

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me


Gang


Location


Occupation


Interests

Found 76 results

  1. Ayuda por favor, al matar al "hades" salga por un cierto tiempo el segundo "crazy" sin que respawnee de nuevo al boss "hades" hasta matar al boss "crazy", no logro hacerlo sin que me salga bien solo cuando mato al primero sale los 2 al mismo tiempo que le puse (60 segundos). Server side: function boss0 ( ) hades = exports [ "slothBot" ]:spawnBot ( 1184.654, -2038.601, 69.008, 90, math.random ( 300, 303 ), 0, 0, Nemesis, 38, "hunting", true ) exports.extra_health:setElementExtraHealth(hades, 1000) setElementModel ( hades, 38 ) setElementData (hades, "boss", true) outputChatBox ("#9E0000Boss Hades!!",getRootElement(), 255, 255, 255, true ) end addEventHandler("onResourceStart", resourceRoot, boss0) --Boss1 function Boss1 ( ) crazy = exports [ "slothBot" ]:spawnBot ( 1262.77, -2029.756, 59.341, 90, math.random ( 300, 303 ), 0, 0, Nemesis, 38, "hunting", true ) exports.extra_health:setElementExtraHealth(crazy, 1000) setElementModel ( crazy, 312 ) setElementData (crazy, "boss", true) end function money (theKiller) if getElementData(source,"boss")==true then local premio = math.random(1000,5000) givePlayerMoney(theKiller,premio) outputChatBox ( getPlayerName ( theKiller ) .. " #081DBFMato al Boss!, Ha Ganado $".. premio .." platica :v",getRootElement(), 255, 255, 255, true ) if source == hades then setTimer(boss0, 60000, 1) end if (not isElement(crazy)) then setTimer(Boss1, 60000, 1) end end end addEvent("onBotWasted", true) addEventHandler("onBotWasted", getRootElement(), money)
  2. Buenas estoy buscando un recurso o plugin para poder arrestar y poder subir a los arrestados a las patrullas o vehiculos
  3. Hola buena gente,quería saber como puedo hacer para que cuando le de con el spray a alguien lo cure es decir le regenere la vida. Estoy tratando de hacer un trabajo de medico,si me ayudan desde ya gracias!
  4. AYUDA CUANDO ENTRO A UN SERVIDOR DE MTA ME KICKEA POR ESTO : Error de descarga: Error downloading requested files. Timeout was reached. [Connection timed out after 10015 milliseconds] [scoreboard/colorpicker/palette.png] AYUDAAA
  5. Ola, Preciso De Uma Ajudinha Pra Saber Como Posso Fazer O Segundo Painel Parar De Sumir E Menos De 1 Segundo Quero Que Ele Nn Suma Fique Aberto, function Test1() dxDrawRectangle(x*94, y*261, x*167, y*26, tocolor(0, 0, color1, alfa), false) end VTR = guiCreateButton( x*94, y*261, x*167, y*26, "", false ) addEventHandler("onClientGUIClick",VTR,function() VTRS() end) function VTRS() dxDrawRectangle(273, 260, 138, 179, tocolor(0, 0, 0, 152), false) end
  6. Alguien me ayudaria a como poner armaduras y Zonas para capturar en mi server porfavor ando buscando algo asi
  7. Centauro

    Duda

    Buenas noches, ¿alguien sabe alguna función que devuelva la velocidad maxima de cada vehículo? o alguna forma para obtenerla. Muchas gracias.
  8. Hola Soy un Scripter Novato, Requiero Ayuda Con la funcion downloadFile (||Aca En la Wiki|| ), Lei la wiki pero no me aclara ciertas dudas que tengo sobre como funciona. Es Client Side O Server Side? Requiere un Filepath (Ruta De Archivo Como en el meta.xml) o Solo el Filename (Nombre Del archivo) Como puedo identificar en caso de estar en un blucle for (Ejemplo Mas Adelante) que hay no Existen Mas archivos en Cola De Descarga. Ejemplo (Es parte de Mi Script si me pueden ayudar con algun error que encuentren mejor :D) Parte del script donde uso el downloadFile addEvent ("requestDownload", true) addEventHandler ("requestDownload", root, function DownloadModFile() local Ply = getLocalPlayer() local newChildD = xmlCreateChild (downloadXmlC, "fileDownload" ) local XmlTableDownload = xmlNodeGetChildren ( newChildD ) for i, node in pairs (XmlTableDownload) do local FileToDownload = xmlNodeGetValue ( node) end if not (fileExists( txdFile )) or (fileExists( dffFile )) then local DwF = downloadFile( FileToDownload ) outputDebugString("Downloading File :"..FileToDownload) if not DwF then if (fileExists( txdFile )) and (fileExists( dffFile )) then triggerServerEvent ("requestReplacements", Ply) end end elseif (fileExists( txdFile )) and (fileExists( dffFile )) then triggerServerEvent ("requestReplacements", Ply) end end ) En Esta parte Cargo una lista de archivos de un archivo xml, intento hacer que con un trigger se inicie la Descarga de los archivos listados (por eso el For) Lista de archivos que debe descargar, ya use el xmlLoadFile por si tienen dudas <FilesDownload> <fileDownload name="bomb.txd"></fileDownload> <fileDownload name="bomb.dff"></fileDownload> <fileDownload name="sniper.txd"></fileDownload> <fileDownload name="sniper.dff"></fileDownload> <fileDownload name="knifecur.txd"></fileDownload> <fileDownload name="knifecur.dff"></fileDownload> <fileDownload name="rocketla.txd"></fileDownload> <fileDownload name="rocketla.dff"></fileDownload> <fileDownload name="fire_ex.txd"></fileDownload> <fileDownload name="fire_ex.dff"></fileDownload> <fileDownload name="chnsaw.txd"></fileDownload> <fileDownload name="chnsaw.dff"></fileDownload> <fileDownload name="katana.txd"></fileDownload> <fileDownload name="katana.dff"></fileDownload> <fileDownload name="heatseek.txd"></fileDownload> <fileDownload name="heatseek.dff"></fileDownload> <fileDownload name="silenced.txd"></fileDownload> <fileDownload name="silenced.dff"></fileDownload> <fileDownload name="shotgspa.txd"></fileDownload> <fileDownload name="shotgspa.dff"></fileDownload> <fileDownload name="ak47.txd"></fileDownload> <fileDownload name="ak47.dff"></fileDownload> <fileDownload name="flame.txd"></fileDownload> <fileDownload name="flame.dff"></fileDownload> <fileDownload name="gun_para.txd"></fileDownload> <fileDownload name="gun_para.dff"></fileDownload> <fileDownload name="spraycan.txd"></fileDownload> <fileDownload name="spraycan.dff"></fileDownload> <fileDownload name="satchel.txd"></fileDownload> <fileDownload name="satchel.dff"></fileDownload> <fileDownload name="camera.txd"></fileDownload> <fileDownload name="camera.dff"></fileDownload> <fileDownload name="nvgoggles.txd"></fileDownload> <fileDownload name="nvgoggles.dff"></fileDownload> <fileDownload name="teargas.txd"></fileDownload> <fileDownload name="teargas.dff"></fileDownload> <fileDownload name="irgoggles.txd"></fileDownload> <fileDownload name="irgoggles.dff"></fileDownload> <fileDownload name="cellphone.txd"></fileDownload> <fileDownload name="cellphone.dff"></fileDownload> <fileDownload name="micro_uzi.txd"></fileDownload> <fileDownload name="micro_uzi.dff"></fileDownload> <fileDownload name="minigun.txd"></fileDownload> <fileDownload name="minigun.dff"></fileDownload> <fileDownload name="tec9.txd"></fileDownload> <fileDownload name="tec9.dff"></fileDownload> <fileDownload name=":Ogun.txd"></fileDownload> <fileDownload name=":Ogun.dff"></fileDownload> <fileDownload name="chromegun.txd"></fileDownload> <fileDownload name="chromegun.dff"></fileDownload> <fileDownload name="grenade.txd"></fileDownload> <fileDownload name="grenade.dff"></fileDownload> <fileDownload name="sawnoff.txd"></fileDownload> <fileDownload name="sawnoff.dff"></fileDownload> <fileDownload name="mp5lng.txd"></fileDownload> <fileDownload name="mp5lng.dff"></fileDownload> <fileDownload name="desert_eagle.txd"></fileDownload> <fileDownload name="desert_eagle.dff"></fileDownload> <fileDownload name="colt45.txd"></fileDownload> <fileDownload name="colt45.dff"></fileDownload> <fileDownload name="brassknuckle.txd"></fileDownload> <fileDownload name="brassknuckle.dff"></fileDownload> <fileDownload name="missile.txd"></fileDownload> <fileDownload name="missile.dff"></fileDownload> <fileDownload name="molotov.txd"></fileDownload> <fileDownload name="molotov.dff"></fileDownload> <fileDownload name="m4.txd"></fileDownload> <fileDownload name="bat.txd"></fileDownload> <fileDownload name="bat.dff"></fileDownload> <fileDownload name="shovel.txd"></fileDownload> <fileDownload name="shovel.dff"></fileDownload> </FilesDownload> Cualquier tipo de ayuda se los Agradeceria mucho. PD: Soy Nuevo En El Foro PD2 : Soy Programador Pero El Lua es nuevo para mi
  9. Hola,Bueno yo quiero crear un servidor de MTA SA,pero no se como hacerlo,necesito host y otras cosas creo yo,por el dinero no hay problema,por que yo puedo pagar un host. El Problema es que nose como crear el servidor hosteado por eso necesito de su ayuda. Muchas Gracias ! Suerte
  10. Hola! Tengo una pequeña duda. Quisiera saber, como puedo hacer para que aparezca una cantidad de imagenes dadas por una tabla y que estas, aparezcan una a lado de la otra, sin chocarse entre si. local items = { {"Item1"}, {"Item2"}, {"Item3"}, }, addEventHandler("onClientRender", root, function() for i=1, #items do dxDrawImage(x, y, w, h, "images/"..items[i]..".png") -- ¿que calculo puedo hacer para definir 'x', 'y', 'w' y 'h'?? end end) Es decir, que por ejemplo, en la tabla hallan 5 items.. bueno, que aparezcan 5 imagenes una alado de la otra. Ademas de que, tambien quiero, que aparezcan solo 3 por linea. Osea, que cuando hallan 3 imagenes, continue la cuarta imagen abajo de la primera.. ya creo que me entienden ¿Alguien me podria decir como hacer eso? - Gracias de Antemano
  11. Ayuda porfavor como pongo musica en Login Server side: function addNotification(player, text, type) if (player and text and type) then triggerClientEvent(player, 'addNotification', player, text, type); end end function loginPlayer(source, username, password) local account = getAccount ( username ) if ( account ~= false ) then local account = getAccount ( username, password ) if ( account ~= false ) then addNotification(source, "Te has logeado correctamente!", "success") logIn (source, account, password) triggerClientEvent("belepesfunkctsiker", source) else addNotification(source, "Contraseña Incorrecta!", "error") end else addNotification(source, "Contraseña Incorrecta!", "error") end end addEvent("attemptLogin", true) addEventHandler("attemptLogin", getRootElement(), loginPlayer) function registerPlayer(source, username, password) local account = getAccount (username) if (account == false) then local accountAdded = addAccount(tostring(username),tostring(password)) if (accountAdded) then triggerClientEvent("belepesfunkctsikerregisztracio", source) addNotification(source, "Has creado la cuenta correctamente! Logeate para obtener tu nueva cuenta.", "success") else addNotification(source, "Un error a ocurrido!", "error") end else addNotification(source, "Una cuenta con el Username que ingreso ya existe!", "error") end end addEvent("attemptRegister", true) addEventHandler("attemptRegister", getRootElement(), registerPlayer) addEventHandler("onPlayerCommand", root, function(cmd) if cmd == "logout" then cancelEvent() elseif cmd == "register" then cancelEvent() elseif cmd == "login" then cancelEvent() end end) Client Side: local screenWidth, screenHeight = guiGetScreenSize() local page = "http://mta/local/index.html" local initBrowser = guiCreateBrowser(0, 0, screenWidth, screenHeight, true, true, false) local theBrowser = guiGetBrowser(initBrowser) addEventHandler("onClientBrowserCreated", theBrowser, function() loadBrowserURL(source, page) showCursor(true) guiSetInputEnabled(true) addNotification("Porfavor Crea una cuenta o logeate!", "info") end ) function belepesfunkc(UsernameValue, PasswordValue) username = tostring(UsernameValue) password = tostring(PasswordValue) UsernameValue = nil PasswordValue = nil if (string.len(username)<4) then addNotification("Username should be at least 4 characters long.", "warning") elseif (string.len(username)>35) then addNotification("Username not be longer than 35 characters.", "warning") elseif (string.len(password)<4) then addNotification("Password should be at least 4 characters long.", "warning") elseif (string.len(password)>35) then addNotification("Password not be longer than 35 characters.", "warning") else triggerServerEvent("attemptLogin", getRootElement(), getLocalPlayer(), username, password) end end addEvent("belepesfunkc", true) addEventHandler("belepesfunkc", root, belepesfunkc) function belepesfunkct() destroyElement(initBrowser) destroyElement(zene) guiSetInputEnabled(false) showCursor(false) end addEvent("belepesfunkctsiker", true) addEventHandler("belepesfunkctsiker", getLocalPlayer(), belepesfunkct) function belepesfunkctsikerregisztraciohandler() executeBrowserJavascript ( theBrowser, "gotologinfromregister()" ) end addEvent("belepesfunkctsikerregisztracio", true) addEventHandler("belepesfunkctsikerregisztracio", getLocalPlayer(), belepesfunkctsikerregisztraciohandler) function belepesfunkcregisztral(UsernameValue, PasswordValue, PasswordConfirmValue) username = tostring(UsernameValue) password = tostring(PasswordValue) passwordC = tostring(PasswordConfirmValue) UsernameValue = nil PasswordValue = nil PasswordConfirmValue = nil if (string.len(username)<4) then addNotification("El nombre de usuario debe tener al menos 4 caracteres.", "warning") elseif (string.len(username)>35) then addNotification("El nombre de usuario no debe tener más de 35 caracteres.", "warning") elseif (string.len(password)<4) then addNotification("La contraseña debe tener al menos 4 caracteres.", "warning") elseif (string.len(password)>35) then addNotification("La contraseña no debe tener más de 35 caracteres.", "warning") elseif (password ~= passwordC) then addNotification("Las contraseñas no coinciden.", "error") else triggerServerEvent("attemptRegister", getRootElement(), getLocalPlayer(), username, password) end end addEvent("belepesfunkcregisztral", true) addEventHandler("belepesfunkcregisztral", root, belepesfunkcregisztral) local displayWidth, displayHeight = guiGetScreenSize(); local notificationData = {}; local notificationFont = dxCreateFont('files/fonts/roboto.ttf', 12 * 2, false); local iconsFont = dxCreateFont('files/fonts/icons.ttf', 12 * 2, false); addEventHandler('onClientRender', root, function() for k, v in pairs(notificationData) do if (v.State == 'fadeIn') then local alphaProgress = (getTickCount() - v.AlphaTick) / 650; local alphaAnimation = interpolateBetween(0, 0, 0, 255, 0, 0, alphaProgress, 'Linear'); if (alphaAnimation) then v.Alpha = alphaAnimation; else v.Alpha = 255; end if (alphaProgress > 1) then v.Tick = getTickCount(); v.State = 'openTile'; end elseif (v.State == 'fadeOut') then local alphaProgress = (getTickCount() - v.AlphaTick) / 650; local alphaAnimation = interpolateBetween(255, 0, 0, 0, 0, 0, alphaProgress, 'Linear'); if (alphaAnimation) then v.Alpha = alphaAnimation; else v.Alpha = 0; end if (alphaProgress > 1) then notificationData = {}; end elseif (v.State == 'openTile') then local tileProgress = (getTickCount() - v.Tick) / 350; local tilePosition = interpolateBetween(v.StartX, 0, 0, v.EndX, 0, 0, tileProgress, 'Linear'); local tileWidth = interpolateBetween(0, 0, 0, v.Width, 0, 0, tileProgress, 'Linear'); if (tilePosition and tileWidth) then v.CurrentX = tilePosition; v.CurrentWidth = tileWidth; else v.CurrentX = v.EndX; v.CurrentWidth = v.Width; end if (tileProgress > 1) then v.State = 'fixTile'; setTimer(function() v.Tick = getTickCount(); v.State = 'closeTile'; end, string.len(v.Text) * 45 + 5000, 1); end elseif (v.State == 'closeTile') then local tileProgress = (getTickCount() - v.Tick) / 350; local tilePosition = interpolateBetween(v.EndX, 0, 0, v.StartX, 0, 0, tileProgress, 'Linear'); local tileWidth = interpolateBetween(v.Width, 0, 0, 0, 0, 0, tileProgress, 'Linear'); if (tilePosition and tileWidth) then v.CurrentX = tilePosition; v.CurrentWidth = tileWidth; else v.CurrentX = v.StartX; v.CurrentWidth = 0; end if (tileProgress > 1) then v.AlphaTick = getTickCount(); v.State = 'fadeOut'; end elseif (v.State == 'fixTile') then v.Alpha = 255; v.CurrentX = v.EndX; v.CurrentWidth = v.Width; end roundedRectangle(v.CurrentX, 20, 25 + v.CurrentWidth, 25, tocolor(0, 0, 0, 150 * v.Alpha / 255), _, true); dxDrawRectangle(v.CurrentX, 20, 25, 25, tocolor(0, 0, 0, 255 * v.Alpha / 255), true); if (v.Alpha == 255) then dxDrawText(v.Text, v.CurrentX + 25 + 10, 20, v.CurrentX + 25 + 10 + v.CurrentWidth - 20, 20 + 25, tocolor(255, 255, 255, 255), 0.40, notificationFont, 'center', 'center', true, false, true); end if (v.Type == 'error') then dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(215, 90, 90, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true); elseif (v.Type == 'warning') then dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(220, 180, 80, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true); elseif (v.Type == 'info') then dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(85, 180, 245, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true); elseif (v.Type == 'success') then dxDrawText('', v.CurrentX + 5, 20, v.CurrentX + 5 + 25 - 10, 20 + 25, tocolor(80, 205, 105, v.Alpha), 0.50, iconsFont, 'center', 'center', false, false, true); end end end ) addEvent('addNotification', true); function addNotification(text, type) if (text and type) then if (notificationData ~= nil) then table.remove(notificationData, #notificationData); end table.insert(notificationData, { StartX = (displayWidth / 2) - (25 / 2), EndX = (displayWidth / 2) - ((dxGetTextWidth(text, 0.40, notificationFont) + 20 + 25) / 2), Text = text, Width = dxGetTextWidth(text, 0.40, notificationFont) + 20, Alpha = 0, State = 'fadeIn', Tick = 0, AlphaTick = getTickCount(), CurrentX = (displayWidth / 2) - (25 / 2), CurrentWidth = 0, Type = type or 'info' } ); playSoundFrontEnd(11); end end addEventHandler('addNotification', root, addNotification); function roundedRectangle(x, y, w, h, borderColor, bgColor, postGUI) if (x and y and w and h) then if (not borderColor) then borderColor = tocolor(0, 0, 0, 200); end if (not bgColor) then bgColor = borderColor; end --> Background dxDrawRectangle(x, y, w, h, bgColor, postGUI); --> Border dxDrawRectangle(x + 2, y - 1, w - 4, 1, borderColor, postGUI); -- top dxDrawRectangle(x + 2, y + h, w - 4, 1, borderColor, postGUI); -- bottom dxDrawRectangle(x - 1, y + 2, 1, h - 4, borderColor, postGUI); -- left dxDrawRectangle(x + w, y + 2, 1, h - 4, borderColor, postGUI); -- right end end Les agradeceria la ayuda
  12. Primero que todo ¿Es posible esto? Hola como están, quisiera saber si me pueden ayudar con lo siguiente: --[[ for i,v in ipairs(getElementsByType("player")) do setElementData(source,"last_damage",0,false) end for i,v in ipairs(getElementsByType("ped")) do setElementData(source,"last_damage",0,false) end]] --Structure=ID,X rotation,Z rotation,boneID parts = { {2908,-90,-90,6}, --head {2907,-90,0,3}, --torso {2906,-90,-180,33}, --lA {2906,-90,0,23}, --rA {2905,-90,-90,42}, --lL {2905,-90,-90,52} --rL } koef = {[0]=1, [1]=1, [2]=2, [3]=2, [4]=2, [5]=2, [6]=2, [7]=2, [8]=2, [9]=2, [22]=3, [23]=3, [24]=3, [25]=5, [26]=5, [27]=5, [28]=4, [29]=4, [32]=4, [30]=4, [31]=4, [33]=5, [34]=5, [35]=7, [36]=7, [37]=0, [38]=7, [16]=7, [17]=0, [18]=0, [39]=6, [41]=0, [42]=0, [43]=0, [10]=1, [11]=1, [12]=1, [13]=1, [14]=1, [15]=1, [44]=0, [45]=0, [46]=0, [40]=0, [19]=7, [37]=0, [50]=8, [51]=7, [53]=0, [54]=0, [59]=7} function createBloodAtPos(theElement) local x,y,z = getElementPosition(theElement) fxAddBlood(x,y,z,0,0,3,100) end --[[ function onDamage(attacker,weapon,part,loss) if not loss then loss = 0 end setElementData(source,"last_damage",loss,false) end]] function onRender() for i,v in ipairs(getElementsByType("object",getResourceRootElement(getThisResource()))) do if math.random(1,5) == 1 then createBloodAtPos(v) end end for i,v in ipairs(getElementsByType("sound",getResourceRootElement(getThisResource()))) do setSoundSpeed(v,getGameSpeed()) end end function onPlayerWasted(theKiller,theReason) setElementAlpha(source,0) math.randomseed(getTickCount()) local x,y,z = getElementPosition(source) local x2,y2,z2 if theKiller then x2,y2,z2 = getElementPosition(theKiller) else x2,y2,z2 = getElementPosition(source) x2 = x2 + math.random(-1,1) y2 = y2 + math.random(-1,1) z2 = z2 + math.random(-1,1) end local x1,y1,z1 = getElementPosition(getLocalPlayer()) --Sound play local theSound = playSound("sounds/hit"..tostring(math.random(1,6))..".wav") local dis = getDistanceBetweenPoints3D(x1,y1,z1,x,y,z) setSoundVolume(theSound,1/(dis/10)) setSoundSpeed(theSound,getGameSpeed()) --Meat creating for i,v in ipairs(parts) do local bX,bY,bZ = getPedBonePosition(source,v[4]) local thePart = createObject(v[1],x,y,z,v[2],0,getPedRotation(source)-v[3]) setElementCollisionsEnabled(thePart,false) setElementInterior(thePart,getElementInterior(source)) local oX = x-x2 local oY = y-y2 local vecLength = math.sqrt((oX * oX) + (oY * oY)) oX = oX/vecLength oY = oY/vecLength local k = 1 if theReason ~= 49 then if theReason then k = koef[theReason] end else local vX,vY,vZ = getElementVelocity(theKiller) local actualspeed = (vX^2 + vY^2 + vZ^2)^(0.5) k = actualspeed*20 end oX = x+(oX*k) oY = y+(oY*k) oX = oX + math.random(-1,1) oY = oY + math.random(-1,1) local oZ = getGroundPosition(oX,oY,z) local is,x3,y3,z3 = processLineOfSight(x,y,z,oX,oY,oZ,true,false,false,true,false) if is == true then oX = x3 oY = y3 oZ = z3 end moveObject(thePart,400/getGameSpeed(),oX,oY,oZ,math.random(360),math.random(360),math.random(360)) setTimer(destroyElement,20000,1,thePart) end end function onSpawn() setElementAlpha(source,255) end addEventHandler("onClientPedWasted",getRootElement(),onPlayerWasted) addEventHandler("onClientPlayerWasted",getRootElement(),onPlayerWasted) addEventHandler("onClientPlayerSpawn",getRootElement(),onSpawn) addEventHandler("onClientRender",getRootElement(),onRender) --[[ addEventHandler("onClientPedDamage",getRootElement(),onDamage) addEventHandler("onClientPlayerDamage",getRootElement(),onDamage)]] Ese es un script que al morir salen pedazos de carne y sangre por todos lados como si se despedazara el player, lo que quisiera es que en vez de ser trozos de carne y sangre lo que salga que sea algo como lo de este vídeo: Si pueden notarlo al morir salen brillos esparcidos uniformemente, y con un sonido, espero sus respuestas y su posible ayuda por favor !
  13. Hola, estoy intentando hacer una especie de godmode por tablas, pero no consigo hacer que no haga daño a otros, otros a mi no pero yo sí a otros, estoy con esto de hace días y no conseguí hacer que funcione como espero local dm = {} addEventHandler("onClientResourceStart", resourceRoot, function() dm[localPlayer] = false end ) addCommandHandler( "dm", function( localPlayer ) local mode = dm[ localPlayer ] if mode == true then dm[ localPlayer ] = false print("DM OFF") else dm[ localPlayer ] = true print("DM ON") end end ) addEventHandler("onClientPlayerDamage", root, function( attacker, weapon, bodypart ) if dm [attacker] == true then cancelEvent() elseif dm [localPlayer] == true then cancelEvent() end end )
  14. El problema ES Q TODOS LOS USUARIOS PUEDEN ABRIR EL panel de administración PERO TIENE SU PARTES BLOQUIADAS PERO LO PUEDEN ABRIR Y VER EL administración de chat. COMO LOS SOLUCIONO
  15. Por favor pasenme paquete de RP para abrir un servidor de paquetes necesitan sus mods de ayuda lo que me ayuda a abrir un servidor
  16. Como intalo el mta pardise o pasenme pack de scripts RP O RPG CUALQUIERA
  17. Ayuda Zona Segura (Safe Zone) El caso es que quiero que cuando salga el boss se active la zona segura para que los player no se hagan daño cuando salga el boss y lo que pasa es que el boss no hace daño cuando esta dentro de dicha zona, esta Zona tambien es para que no entren los Zombies. Junte El safe Zone Con el boss para que cuando salga se active el safe Zone pero nose como hacer que cuando muera el boss se quite el safe Zone Ayuda porfavor http://imgur.com/hbGEZci http://imgur.com/dhTBnZh http://imgur.com/lBFnG8V http://imgur.com/OMt5OxY Server: -- Advanced Anti Zombie by Kenix version 1.0.6 --[[ It's example how use it. Change this ]] local aSavePlaces = { Rectangle = { -- X, Y, Width, Height { 1115.0374755859, -2117.1108398438, 130, 140 }; }; } local aRadarAreaPlaces = { -- x, y ,size 1, size 2, color: red, green, blue, alpha. { 1115.0374755859, -2117.1108398438, 130, 140, 0, 255, 0, 255 }; { 2773, -2430, 30, 30, 0, 255, 0, 255 }; } local sResourceName = getResourceName ( resource ) local bUseGunsInSavePlace = get( sResourceName .. '.UseGunsInSaveZone' ) local bUseRadarArea = get( sResourceName .. '.UseRadarArea' ) local pColshape, pRadarArea local bUseRunInSaveZone = get( sResourceName .. '.UseRunInSaveZone' ) local bUseJumpInSaveZone = get( sResourceName .. '.UseJumpInSaveZone' ) local bUseWeaponHudInSaveZone = get( sResourceName .. '.UseWeaponHudInSaveZone' ) local bUseAmmoHudInSaveZone = get( sResourceName .. '.UseAmmoHudInSaveZone' ) local bUseDamageInSaveZone = get( sResourceName .. '.UseDamageInSaveZone' ) addEventHandler ( 'onResourceStart', resourceRoot, function ( ) for s, _ in pairs( aSavePlaces ) do for _, a in pairs( aSavePlaces[ s ] ) do pColshape = _G[ 'createCol' .. s ]( unpack( a ) ) setElementData( pColshape, 'zombieProof', true ) addEventHandler ( 'onColShapeHit', pColshape, function ( pHitElement ) if getElementType( pHitElement ) == 'player' then if not bUseGunsInSavePlace then toggleControl ( pHitElement, 'fire', false ) toggleControl ( pHitElement, 'aim_weapon', false ) toggleControl ( pHitElement, 'vehicle_fire', false ) end if not bUseRunInSaveZone then toggleControl ( pHitElement, 'sprint', false ) end if not bUseJumpInSaveZone then toggleControl ( pHitElement, 'jump', false ) end if not bUseWeaponHudInSaveZone then showPlayerHudComponent ( pHitElement, 'weapon', false ) end if not bUseAmmoHudInSaveZone then showPlayerHudComponent ( pHitElement, 'ammo', false ) end if not bUseDamageInSaveZone then setElementData( pHitElement, 'damage', 'no' ) end elseif getElementType( pHitElement ) == 'ped' then -- check if the entered ped kill it killPed( pHitElement ) -- kill ped end end ) addEventHandler ( 'onColShapeLeave', pColshape, function ( pLeaveElement ) if getElementType( pLeaveElement ) == 'player' then if not bUseGunsInSavePlace then toggleControl ( pLeaveElement, 'fire', true ) toggleControl ( pLeaveElement, 'aim_weapon', true ) toggleControl ( pLeaveElement, 'vehicle_fire', true ) end if not bUseRunInSaveZone then toggleControl ( pLeaveElement, 'sprint', true ) end if not bUseJumpInSaveZone then toggleControl ( pLeaveElement, 'jump', true ) end if not bUseWeaponHudInSaveZone then showPlayerHudComponent ( pLeaveElement, 'weapon', true ) end if not bUseAmmoHudInSaveZone then showPlayerHudComponent ( pLeaveElement, 'ammo', true ) end if not bUseDamageInSaveZone then setElementData( pLeaveElement, 'damage', 'yes' ) end elseif getElementType( pLeaveElement ) == 'ped' then -- check if the entered ped kill it killPed( pLeaveElement ) -- kill ped end end ) end end if bUseRadarArea then for _, a in ipairs( aRadarAreaPlaces ) do pRadarArea = createRadarArea ( unpack( a ) ) end end end ) _____________________________________________________________________________________________________________ Client: addEventHandler( 'onClientPlayerDamage', localPlayer, function( ) if getElementData( localPlayer, 'damage' ) == 'no' then cancelEvent( ) end end ) __________________________________________________________________________________________________________________ Meta: <meta> <info author="stor" version="1.0" type="script" name="Boomer" description="LauraSad" /> <script src="server.lua" type="server" /> <script src="client.lua" type="client" /> <file src="skin/boomer.txd" /> <file src="skin/boomer.dff" /> <file src="skin/zombi.txd" /> <file src="skin/zombi.dff" /> <file src="sonido1.mp3" /> <file src="sonido2.mp3" /> <file src="boom.wav" /> <include resource="extra_health" /> <include resource="slothbot" /> <script src="core_server.lua" type="server"/> <script src="core_client.lua" type="client"/> <settings> <!-- option 1 --> <setting name="#UseGunsInSaveZone" value="[ true ]" /> <!-- option 2 --> <setting name="#UseRadarArea" value="[ true ]" /> <!-- Added in version 1.0.1 --> <!-- option 3 --> <setting name="#UseRunInSaveZone" value="[ true ]" /> <!-- option 4 --> <setting name="#UseJumpInSaveZone" value="[ true ]" /> <!-- option 5 --> <setting name="#UseWeaponHudInSaveZone" value="[ true ]" /> <!-- option 6 --> <setting name="#UseAmmoHudInSaveZone" value="[ true ]" /> <!-- Added in version 1.0.4 --> <!-- option 7 --> <setting name="#UseDamageInSaveZone" value="[ false ]" /> <!-- option 1 = If a player enters the zone, he can not use a gun --> <!-- option 2 = use this option if you want to use Radar Area (color map) --> <!-- Added in version 1.0.1 --> <!-- option 3 = If you are using false then you can not run in this area and if you use true you will be able to run in this area --> <!-- option 4 = If you are using false then you can not jump in this area and if you use true you will be able to jump in this area --> <!-- option 5 = this option is responsible for the weapon if you use false then when you go into this zone your weapon (HUD) is not visible and if true then the opposite --> <!-- option 6 = this option is responsible for the ammo if you use false when you go in this area and ammo (HUD) is not visible and if true then the opposite --> <!-- Added in version 1.0.4 --> <!-- option 7 = this option is if damage you if use false then canceled damage --> <!-- Notice: all options are on default --> </settings> </meta>
  18. Hola chicos, no soy escripter, se editar y darle funciones un poquito a los script ya creados... pero me descargue el guieditor y me puse hacer un panel jeje y nunca e hecho uno desde 0 solo había editado ahora como hago para que este panel funcione... si puedes ayudarme gracias de ante mano.. addEventHandler("onClientResourceStart", resourceRoot, function Habilidades() Habilidades = guiCreateWindow(454,410,454,410,"Panel de Habilidades",true) guiWindowSetSizable(Habilidades,false) Sniper = guiCreateButton(509, 540, 68, 28, "Comprar", false, Habilidades) guiSetFont(Sniper, "default-bold-small") guiSetProperty(Sniper, "NormalTextColour", "FA3BDEF1") Silenced = guiCreateButton(579, 333, 68, 28, "Comprar", false, Habilidades) guiSetFont(Silenced, "default-bold-small") guiSetProperty(Silenced, "NormalTextColour", "FA3BDEF1") Rifle = guiCreateButton(873, 433, 68, 28, "Comprar", false, Habilidades) guiSetFont(Rifle, "default-bold-small") guiSetProperty(Rifle, "NormalTextColour", "FA3BDEF1") Recortadas = guiCreateButton(800, 433, 68, 28, "Comprar", false, Habilidades) guiSetFont(Recortadas, "default-bold-small") guiSetProperty(Recortadas, "NormalTextColour", "FA3BDEF1") Uzi = guiCreateButton(795, 333, 68, 28, "Comprar", false, Habilidades) guiSetFont(Uzi, "default-bold-small") guiSetProperty(Uzi, "NormalTextColour", "FA3BDEF1") MP5 = guiCreateButton(725, 333, 68, 28, "Comprar", false, Habilidades) guiSetFont(MP5, "default-bold-small") guiSetProperty(MP5, "NormalTextColour", "FA3BDEF1") AK47 = guiCreateButton(583, 433, 68, 28, "Comprar", false, Habilidades) guiSetFont(AK47, "default-bold-small") guiSetProperty(AK47, "NormalTextColour", "FA3BDEF1") M4 = guiCreateButton(509, 433, 68, 28, "Comprar", false, Habilidades) guiSetFont(M4, "default-bold-small") guiSetProperty(M4, "NormalTextColour", "FA3BDEF1") MiniMetra = guiCreateButton(868, 333, 68, 28, "Comprar", false, Habilidades) guiSetFont(MiniMetra, "default-bold-small") guiSetProperty(MiniMetra, "NormalTextColour", "FA3BDEF1") Deagle = guiCreateButton(651, 333, 68, 28, "Comprar", false, Habilidades) guiSetFont(Deagle, "default-bold-small") guiSetProperty(Deagle, "NormalTextColour", "FA3BDEF1") P9mm = guiCreateButton(509, 333, 68, 28, "Comprar", false, Habilidades) guiSetFont(P9mm, "default-bold-small") guiSetProperty(P9mm, "NormalTextColour", "FA3BDEF1") Recortada = guiCreateButton(728, 433, 68, 28, "Comprar", false, Habilidades) guiSetFont(Recortada, "default-bold-small") guiSetProperty(Recortada, "NormalTextColour", "FA3BDEF1") EscopetaPoli = guiCreateButton(655, 433, 68, 28, "Comprar", false, Habilidades) guiSetFont(EscopetaPoli, "default-bold-small") guiSetProperty(EscopetaPoli, "NormalTextColour", "FA3BDEF1") InfoVIP = guiCreateLabel(531, 583, 375, 15, "Si te haces usuario VIP en el servidor tendras todas las armas full.", false, Habilidades) guiSetFont(InfoVIP, "default-bold-small") guiLabelSetColor(InfoVIP, 59, 222, 241) InfoVIP2 = guiCreateLabel(506, 604, 425, 15, "puedes pagar por mensajes de texto, paypal o deposito si eres venezolano.", false, Habilidades) guiSetFont(InfoVIP2, "default-bold-small") guiLabelSetColor(InfoVIP2, 59, 222, 241) Informacion = guiCreateMemo(587, 471, 354, 45, "Al darle comprar se te descontaran 1400 Dolares y se aumentara 100 puntos de habilidad en el arma que escojas.", false, Habilidades) guiMemoSetReadOnly(Informacion, true) arma1 = guiCreateStaticImage( 509, 264, 62, 63, ":hudn/Weapons/22.png", false,Habilidades ) arma2 = guiCreateStaticImage( 581, 264, 62, 63, ":hudn/Weapons/23.png", false, Habilidades ) arma3 = guiCreateStaticImage( 657, 265, 61, 62, ":hudn/Weapons/24.png", false, Habilidades ) arma4 = guiCreateStaticImage( 655, 361, 60, 62, ":hudn/Weapons/25.png", false, Habilidades ) arma5 = guiCreateStaticImage( 728, 361, 59, 62, ":hudn/Weapons/26.png", false, Habilidades ) arma3 = guiCreateStaticImage( 801, 363, 57, 60, ":hudn/Weapons/27.png", false, Habilidades ) arma7 = guiCreateStaticImage( 794, 267, 57, 60, ":hudn/Weapons/28.png", false, Habilidades ) arma13 = guiCreateStaticImage( 726, 265, 57, 61, ":hudn/Weapons/29.png", false, Habilidades ) arma8 = guiCreateStaticImage( 584, 366, 59, 61, ":hudn/Weapons/30.png", false, Habilidades ) arma9 = guiCreateStaticImage( 512, 367, 59, 60, ":hudn/Weapons/31.png", false, Habilidades ) arma10 = guiCreateStaticImage( 861, 264, 60, 59, ":hudn/Weapons/32.png", false, Habilidades ) arma11 = guiCreateStaticImage( 871, 363, 60, 60, ":hudn/Weapons/33.png", false, Habilidades ) arma12 = guiCreateStaticImage( 513, 471, 60, 59, ":hudn/Weapons/34.png", false, Habilidades ) end )
  19. Hola qué tal, paso por acá para ver si me pueden ayudar con algo por favor.. como hago para: Ponerle este anti spam de comando de este script: local tiempo = {} addCommandHandler("miaumiau", function(l_3_0) if not tiempo[l_3_0] then tiempo[l_3_0] = 0 end if getTickCount() - tiempo[l_3_0] > 10000 then outputChatBox("Jutsu Proteccion", l_3_0, 0, 255, 0, false) tiempo[l_3_0] = getTickCount() local x, y, z = getElementPosition(l_3_0) do setTimer(function() objeto = createObject(1248, x + 0, y + 0, z, 0, 0, 0) setTimer(destroyElement, 6500, 1, objeto) triggerClientEvent("CreateNinjaSound",root,l_3_0,"poof.mp3") setElementRotation(objeto,x,y,z,"default",true) setTimer(destroyElement, 6500, 1, objeto) end, 300, 1) setPedAnimation(l_3_0, "CARRY", "liftup", -1, true, false, false) setTimer(function() setPedAnimation(l_3_0) end, 1000, 1) end else return outputChatBox ( "Espera 10 segundos para volver a utilizar este jutsu!", l_3_0, 225, 0, 0 ) end end ) addEventHandler("onPlayerQuit", root, function () if tiempo[l_3_0] then tiempo[l_3_0] = nil end end ) A este script: local Fs = {} local flyerPlayersTimer = {} function AnimationNula(P,T) setTimer(setPedAnimation,T,1,P,nil) end function CreateObjectNinja(Ob,x,y,z,T) object = createObject(Ob,x,y,z) setElementCollisionsEnabled(object,false) setTimer(destroyElement,T,1,object) return object end Fs.Katon = function (player,k,ks) setPedAnimation(player,"BAR","dnk_stndM_loop") local x,y,z = getElementPosition(player) local r = getPedRotation(player) triggerClientEvent("CreateNinjaSound",root,player,"Katon.mp3") AnimationNula(player,2500) local ob = CreateObjectNinja(2024,x+math.sin(math.rad(-r))*(0.15),y+math.cos(math.rad(-r))*(0.15),z+0.35,1500) setElementRotation(ob,0,0,r) local EsferaColisao = createColSphere ( x+math.sin(math.rad(-r))*3.5, y+math.cos(math.rad(-r))*3.5, z+0.3, 3.5 ) setTimer(destroyElement,1500,1,EsferaColisao) local players = getElementsWithinColShape (EsferaColisao,"player") local peds = getElementsWithinColShape (EsferaColisao,"ped") if(#players>0) then for k,v in ipairs(players)do setPedOnFire(v,true) end end if(#peds>0) then for a,b in ipairs(peds)do setPedOnFire(b,true) end end end addCommandHandler ("plos", Fs.Katon) Espero sus respuestas y su ayuda por favor, traté pero no funciono nada de lo que hice
  20. Buenas, hace mucho que no publicaba por aqui, necesito una pequeña ayuda... Necesito saber como hacer para detectar el frente de un ped, para poder ponerle una setCameraMatrix enfocada en su rostro.. ¿Alguien me podría ayudar?
  21. como hacer que al apretar un boton ejecute un comando es un panel de race que tiene un boton para crear un marker pero yo quiero que al apretar ese boton ejecute el comando porfavor necesito ayuda se los agradeceria mucho
  22. Hola comunidad española de MTA esta vez tengo un problema que no entiendo, pues tengo un script bajado de la comunidad que es un Vehicle System donde puedo bloquear los autos para team,class y user. El script funciona al pelo pero tiene algo que no me gusta y lo quiero cambiar la cosa es que cuando un jugador no es de una class,team o user que se ha bloqueado el auto le manda un mensaje con lo siguiente escrito "Este vehículo está bloqueado a el siguientes Grupo:Nombre del grupo al que ha sido bloqueado" Pues ese mensaje lo manda en outputchatbox y yo no lo quiero por hay si no un export que tengo. Pues le hago un export como estoy acostrumbado a hacerle a mis otros script y funciona y con este no, Aqui el script. function enterVehicle(player,seat,jacked) if getElementData(source,"lockedTo") then local carGroup = getElementData(source,"lockedTo") local lockKind = getElementData(source,"lockType") local carGroups = split(carGroup,",") local carCheckingTable = {} for i,v in ipairs(carGroups) do carCheckingTable[v] = true end if lockKind == "team" then local playerTeam = getTeamName(getPlayerTeam(player)) if seat == 0 then if not carCheckingTable[playerTeam] then cancelEvent() outputDebugString("Locked") exports.SAVGcommands:sendMessage("Este vehículo está bloqueado a el siguiente Equipo: ".. carGroup ..".",player,255,255,0) end end elseif lockKind == "user" then local playerAccount = getAccountName(getPlayerAccount(player)) if seat == 0 then if not carCheckingTable[playerAccount] then cancelEvent() outputDebugString("Locked") exports.SAVGcommands:sendMessage("Este vehículo está bloqueado a el siguiente Usuario: ".. carGroup ..".",player,255,255,0) end end elseif lockKind == "acl" then local playerAcl = isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup(carGroup)) if seat == 0 then if playerAcl == false then cancelEvent() outputDebugString("Locked") outputChatBox("This vehicle is locked to ".. lockKind .. "(s) : ".. carGroup ..".",player,255,0,0) end end elseif lockKind == "class" then local playerClass = getElementData(player,"class") or "" if seat == 0 then if not carCheckingTable[playerClass] then cancelEvent() outputDebugString("Locked") exports.SAVGcommands:sendMessage("Este vehículo está bloqueado a el siguiente Clase: ".. carGroup ..".",player,255,255,0) end end elseif lockKind == "group" then local playerGroup = getElementData(player,"group") if seat == 0 then if not carCheckingTable[playerGroup] then cancelEvent() outputDebugString("Locked") outputChatBox("Este vehículo está bloqueado a el siguientes Grupo: ".. carGroup ..".",player,255,0,0) end end elseif lockKind == "gang" then local playerGang = getElementData(player,"gang") if seat == 0 then if not carCheckingTable[playerGang] then cancelEvent() outputDebugString("Locked") outputChatBox("Este vehículo está bloqueado a la siguiente Pandilla: ".. carGroup ..".",player,255,0,0) end end end end end
  23. Estoy creando un sistema de guardado de cuentas en SQLite pero tengo problemas. Con el código a continuación, cuando le doy a registrar, siempre me dice que hay una cuenta ya creada (cuando la .db está vacía) y cuando le doy a loguear, con lo que sea, puedo entrar. addEventHandler( "onResourceStart", resourceRoot, function( ) sql = dbConnect ( "sqlite" , "accounts.db" ) -- Create the connection playersTable = dbQuery ( sql , "CREATE TABLE IF NOT EXISTS accounts (account TEXT,password TEXT,serial TEXT)" ) if fileExists( "accounts.db" ) and sql and playersTable then outputDebugString( "Succefully connected SQLite resource" ) else outputDebugString( "Failed to connect SQLite" ) end end ) function tryRegister( player, username, password ) if username and password then local exists = dbQuery ( sql , "SELECT * FROM accounts WHERE account = ?", username ) local result = dbPoll( exists, 0 ) if result then triggerClientEvent( player, "loginPanel:executeMessage", player, "Account already exists" ) return else local serial = getPlayerSerial( player ) if serial then local qh = dbQuery ( sql , "INSERT INTO accounts (account,password,serial) VALUES (?,?,?)", username, password, serial ) local result = dbPoll( qh, -1 ) if result then triggerClientEvent( player, "loginPanel:executeMessage", player, "Succefully registered. Welcome" ) return true else triggerClientEvent( player, "loginPanel:executeMessage", player, "Error, contact with server admin" ) return end else triggerClientEvent( player, "loginPanel:executeMessage", player, "Fatal error. No serial found." ) return end end else triggerClientEvent( player, "loginPanel:executeMessage", player, "Type username and password" ) return end end function tryLogin( player, username, password ) if username and password then local exists = dbQuery ( sql , "SELECT * FROM accounts WHERE account = ? AND password = ?", username, password ) local result = dbPoll( exists, -1 ) if result then local x, y, z = 2272.0419921875, 2354.5302734375, 4.8202133178711 spawnPlayer( player, x, y, z ) triggerClientEvent(client, "onClientPlayerLogin", client) return true else triggerClientEvent( player, "loginPanel:executeMessage", player, "Account does not exists" ) return end else triggerClientEvent( player, "loginPanel:executeMessage", player, "Type username and password" ) return end end function performLogin (username, password, type) local account = getAccount( username, password ) if type == "login" then tryLogin( client, username, password ) elseif type == "register" then if username and #username > 3 then if password and #password > 8 then tryRegister( client, username, password ) else triggerClientEvent( client, "loginPanel:executeMessage", client, "Required password characters: 8" ) end else triggerClientEvent( client, "loginPanel:executeMessage", client, "Incorrect username. More than 3 characters" ) end elseif type == "leave" then kickPlayer ( client, "See you soon (Leaving)" ) end end addEvent("loginPanel:performLogin", true) addEventHandler("loginPanel:performLogin", root, performLogin ) ¿Me echan una mano? No sé como funciona correctamente el dbPoll y demás PD: Disculpad los dos temas, con el nuevo diseño no puedo borrar
  24. Me ayudan con esto por favor ? Quiero que al poner por ejemplo el comando "salto" se active, esto lo saque de un resource es decir quiero ponerlo individual (No soy autorq del script), quiero que se active con un comando pero no sé como , soy nueva en esto del script CLIENT: superjumping = 0 function rocketjump() startrocketjumpingthing = nil if getControlState("jump") == true then local task = getPedSimplestTask(getLocalPlayer()) if task == "TASK_SIMPLE_IN_AIR" and superjumping == 0 then if isTimer(startgroundchecktimer) then resetTimer ( startgroundchecktimer) else startgroundchecktimer = setTimer ( startjumpgroundcheck, 300, 1) end superjumpgroundcheck = 0 addEventHandler("onClientRender",getRootElement(), rocketplayer ) addEventHandler("onClientRender",getRootElement(), jumpgroundcheck ) triggerServerEvent ("onSpeedChange", getLocalPlayer(), "jumping") jumpstart = getTickCount() superjumping = 1 end end end function triggersuperjump(key, keyState) if getElementData( getLocalPlayer(), "transport_power" ) == "superjump" then if keyState == "down" then local px,py,pz = getElementPosition( getLocalPlayer () ) local isclear = isLineOfSightClear ( px, py, pz,px, py, pz-3,true,true, true, true,true,true, false, getLocalPlayer() ) if isTimer(startrocketjumpingthing) == false and isclear == false then startrocketjumpingthing = setTimer ( rocketjump, 650, 1) end elseif keyState == "up" then removeEventHandler("onClientRender",getRootElement(), rocketplayer ) end end end bindKey("jump", "both", triggersuperjump) function rocketplayer() local px,py,pz = getElementPosition( getLocalPlayer () ) local currenttask = getPedSimplestTask(getLocalPlayer()) if getTickCount() - jumpstart < 4500 and currenttask ~= "TASK_SIMPLE_NAMED_ANIM" then if getTickCount() - jumpstart > 3000 then theZ = 0 elseif getTickCount() - jumpstart > 2000 then theZ = .1 else theZ = .3 end local playerangle = getPedRotation(getLocalPlayer()) local newradRot = math.rad ( playerangle ) local radius = 3 local ex = px + radius * math.sin(newradRot) local ey = py + -(radius) * math.cos(newradRot) local ez = pz x,y,z = px-ex,py-ey,pz-ez local dist = math.sqrt(x*x+y*y+z*z) x = x*.4/dist y = y*.4/dist setElementVelocity(getLocalPlayer(),x, y, theZ) else removeEventHandler("onClientRender",getRootElement(), rocketplayer ) end end function jumpgroundcheck() if superjumpgroundcheck == 1 then local px,py,pz = getElementPosition( getLocalPlayer () ) local isclear = isLineOfSightClear ( px, py, pz,px, py, pz-2.5,true,true, true, true,true,true, false, getLocalPlayer() ) local currenttask = getPedSimplestTask(getLocalPlayer()) if isclear == false or currenttask == "TASK_SIMPLE_LAND" or isElementInWater(getLocalPlayer()) == true then removeEventHandler("onClientRender",getRootElement(), jumpgroundcheck ) setElementPosition(getLocalPlayer(),px,py,pz ) removeEventHandler("onClientRender",getRootElement(), rocketplayer ) superjumping = 0 triggerServerEvent ("onJumpChange", getLocalPlayer(), "normal") end end end function startjumpgroundcheck() superjumpgroundcheck = 1 startgroundchecktimer = nil triggerServerEvent ("onJumpChange", getLocalPlayer(), "jumping") end SERVER: addEvent( "onJumpChange", true ) function Jumpeffect(mode) if mode == "jumping" then if isElement(getElementData( source, "themeJumpobject" )) == false then local px,py,pz = getElementPosition(source) local Jumpeffect = createThemeObject(source,px,py,pz) attachElements ( Jumpeffect, source, 0, 0, -.7) setElementParent ( Jumpeffect, source) setElementData ( source, "themeJumpobject", Jumpeffect, false ) end elseif mode == "normal" then if isElement(getElementData( source, "themeJumpobject" )) then local oldthemeobject = getElementData( source, "themeJumpobject" ) destroyElement(oldthemeobject) end end end addEventHandler ( "onJumpChange", getRootElement(), Jumpeffect )
  25. Hola amigos, quisiera saber si hay alguna función para ver cuantos players hay en la lista? no encuentro ningúna función para poder hacer un panel de clanes..