• Announcements

    • jhxp

      Forums are online again after a maintenance.   18/03/17

      MTA Forums maintenance is completed, although some automatic time-heavy tasks are still in process and will be finished eventually in background. Expect some features such as Forum Search to not display all results until all processes are finished. Please let us know if you spot a forum feature that worked correctly before the maintenance but does not work anymore now. Thanks. --MTA Team
    • jhxp

      Multi Theft Auto: San Andreas 1.5.4 is out!   21/04/17

      Click the link in the announcement for more details.  

-Rex-

Members
  • Content count

    187
  • Joined

  • Last visited

Community Reputation

1 Neutral

2 Followers

About -Rex-

  • Rank
    Mark

Details

  • Location
    Ecuador
  • Interests
    Powerlifting
  1. Solucionado!, No entendia bien el tema de los renderTargets y al pareces los rectangulos se mueve solamente dentro del render target y no libremente en toda la resolucion de MTA como siempre.
  2. Hola, tengo una duda y es que quiero crear un tipo de gridlist pero en dx y el problema es que quiero hacer que solo se vean las cosas que estan dentro del rectangulo gris es decir nada de lo que este fuera del rectangulo gris se dibuje.
  3. Quisiera saber cuantas dimensiones existen en MTA, quiero hacer un tipo de lobby ( MultiGM ) con diferentes modos de juego y asi.
  4. Usa imgur para publicar imagenes, no uses FB No todos te tenemos agregado.
  5. Tomar el control de un Vehiculo, siendo Pasajero: function checkCopilot( player ) local vehicle = getPedOccupiedVehicle(player) --Parte del codigo es de la wiki, Que flojera no? xD local occupants = getVehicleOccupants(vehicle) or {} for seat, occupant in pairs(occupants) do if (occupant and getElementType(occupant) == "player") then if not getVehicleController( vehicle ) then warpPedIntoVehicle( player, vehicle, 0 ) outputChatBox("Has tomado el control", player) end end end end addEventHandler ( "onResourceStart", getResourceRootElement( getThisResource() ), function ( ) for i,v in ipairs( getElementsByType ("player") ) do bindKey( v, "b", "down", checkCopilot ) end end ) addEventHandler ( "onPlayerJoin", root, function ( ) bindKey( source, "b", "down", checkCopilot ) end ) addCommandHandler("control", checkCopilot ) Descripcion: Es simple, Por ejemplo, El conductor del vehiculo en el que vas ha muerto y vas como pasajero, Presionas 'b' o tecleas /control y automaticamente te conviertes en el conductor.
  6. Bueno debido a que no puedo ir creando un post para cada script que aporte, Entonces crearé este post donde ire agregando aportes de mi antiguo servidor. Scripts: Modo de disparo (Cliente): ------------------------------------------------------------------------ -- Desarrollador/Developer: -Rex- -- Proyecto/Proyect: Battle of GamerZ -- Contacto/Contact: https://www.facebook.com/rexscripting/ -- Fecha de creacion: xx/xx/2016 No recuerdo el mes Jeje -- -- Libre uso y modificacion, No borrar los creditos, Gracias ------------------------------------------------------------------------ local maxFiring = 0 local firing = 0 local theMode = 1 toggleControl ( "fire", true ) setElementData( getLocalPlayer( ), "weapon_mode", "Auto" ) function onClientPlayerWeaponFireFunc(weapon, ammo, ammoInClip, hitX, hitY, hitZ, hitElement ) if weapon == 0 then return end if weapon == 33 or weapon == 34 then return end if theMode == 2 then if firing >= maxFiring-1 then toggleControl ( "fire", false ) else firing = firing + 1 end elseif theMode == 3 then if firing >= maxFiring-1 then toggleControl ( "fire", false ) else firing = firing + 1 end else toggleControl ( "fire", true ) end end -- Add this as a handler so that the function will be triggered every time the local player fires. addEventHandler ( "onClientPlayerWeaponFire", getLocalPlayer(), onClientPlayerWeaponFireFunc ) function setMode1( ) if weapon == 0 then return end if weapon == 33 or weapon == 34 then return end theMode = 1 maxFiring = false firing = 0 toggleControl ( "fire", true ) setElementData( getLocalPlayer( ), "weapon_mode", "Auto" ) outputChatBox( "Modo de disparo: Automatico", 242, 242, 242, true ) end bindKey( "1", "down", setMode1 ) bindKey( "num_1", "down", setMode1 ) function setMode2( ) if weapon == 0 then return end if weapon == 33 or weapon == 34 then return end theMode = 2 maxFiring = 3 firing = 0 toggleControl ( "fire", true ) setElementData( getLocalPlayer( ), "weapon_mode", "Rafaga" ) outputChatBox( "Modo de disparo: Rafaga", 242, 242, 242, true ) end bindKey( "2", "down", setMode2 ) bindKey( "num_2", "down", setMode2 ) function setMode3( ) if weapon == 0 then return end if weapon == 33 or weapon == 34 then return end maxFiring = 1 theMode = 3 firing = 0 toggleControl ( "fire", true ) setElementData( getLocalPlayer( ), "weapon_mode", "Semi" ) outputChatBox( "Modo de disparo: Semiautomatico", 242, 242, 242, true ) end bindKey( "3", "down", setMode3 ) bindKey( "num_3", "down", setMode3 ) function allow( ) local weapon = getPedWeapon( getLocalPlayer( ) ) if weapon == 0 then return end if weapon == 33 or weapon == 34 then return end if theMode == 2 then theMode = 2 maxFiring = 3 firing = 0 elseif theMode == 3 then maxFiring = 1 theMode = 3 firing = 0 end toggleControl ( "fire", true ) end bindKey( "fire", "down", allow ) local x, y = guiGetScreenSize( ) local sx, sy = 1280, 600 function ss() local id = getPedWeapon( getLocalPlayer( ) ) if id == 0 then return end local r, g, b = 255, 255, 255 local r2, g2, b2 = 255, 255, 255 local r3, g3, b3 = 255, 255, 255 local mode = getElementData( getLocalPlayer( ), "weapon_mode" ) if mode == "Auto" then r, g, b = 83, 200, 0 r2, g2, b2 = 255, 255, 255 r3, g3, b3 = 255, 255, 255 elseif mode == "Rafaga" then r, g, b = 255, 255, 255 r2, g2, b2 = 83, 200, 0 r3, g3, b3 = 255, 255, 255 elseif mode == "Semi" then r, g, b = 255, 255, 255 r2, g2, b2 = 255, 255, 255 r3, g3, b3 = 83, 200, 0 else r, g, b = 255, 255, 255 r2, g2, b2 = 255, 255, 255 r3, g3, b3 = 255, 255, 255 end local fontS = ( y / 600 ) * 1.0 if x < 1024 then fontS = 0.8 end dxDrawText('Fire mode', ( ( 10 - 1 ) / sx ) * x, ( ( 364 - 1 ) / sy ) * y, ( ( 105 - 1 ) / sx ) * x, ( ( 282 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Fire mode', ( ( 10 + 1 ) / sx ) * x, ( ( 364 - 1 ) / sy ) * y, ( ( 105 + 1 ) / sx ) * x, ( ( 282 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Fire mode', ( ( 10 - 1 ) / sx ) * x, ( ( 364 + 1 ) / sy ) * y, ( ( 105 - 1 ) / sx ) * x, ( ( 282 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Fire mode', ( ( 10 + 1 ) / sx ) * x, ( ( 364 + 1 ) / sy ) * y, ( ( 105 + 1 ) / sx ) * x, ( ( 282 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Fire mode', ( 10 / sx ) * x, ( 364 / sy ) * y, ( 105 / sx ) * x, ( 282 / sy ) * y, tocolor(83, 200, 0, 255), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_1: Auto", ( ( 10 - 1 ) / sx ) * x, ( ( 380 - 1 ) / sy ) * y, ( ( 181 - 1 ) / sx ) * x, ( ( 306 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_1: Auto", ( ( 10 + 1 ) / sx ) * x, ( ( 380 - 1 ) / sy ) * y, ( ( 181 + 1 ) / sx ) * x, ( ( 306 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_1: Auto", ( ( 10 - 1 ) / sx ) * x, ( ( 380 + 1 ) / sy ) * y, ( ( 181 - 1 ) / sx ) * x, ( ( 306 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_1: Auto", ( ( 10 + 1 ) / sx ) * x, ( ( 380 + 1 ) / sy ) * y, ( ( 181 + 1 ) / sx ) * x, ( ( 306 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_1: Auto", ( 10 / sx ) * x, ( 380 / sy ) * y, ( 181 / sx ) * x, ( 306 / sy ) * y, tocolor(r, g, b, 255), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_2: "..'Burst', ( ( 10 - 1 ) / sx ) * x, ( ( 400 - 1 ) / sy ) * y, ( ( 181 - 1 ) / sx ) * x, ( ( 330 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_2: "..'Burst', ( ( 10 + 1 ) / sx ) * x, ( ( 400 - 1 ) / sy ) * y, ( ( 181 + 1 ) / sx ) * x, ( ( 330 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_2: "..'Burst', ( ( 10 - 1 ) / sx ) * x, ( ( 400 + 1 ) / sy ) * y, ( ( 181 - 1 ) / sx ) * x, ( ( 330 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_2: "..'Burst', ( ( 10 + 1 ) / sx ) * x, ( ( 400 + 1 ) / sy ) * y, ( ( 181 + 1 ) / sx ) * x, ( ( 330 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_2: "..'Burst', ( 10 / sx ) * x, ( 400 / sy ) * y, ( 181 / sx ) * x, ( 330 / sy ) * y, tocolor(r2, g2, b2, 255), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_3: Semi-Auto", ( ( 10 - 1 ) / sx ) * x, ( ( 420 - 1 ) / sy ) * y, ( ( 205 - 1 ) / sx ) * x, ( ( 354 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_3: Semi-Auto", ( ( 10 + 1 ) / sx ) * x, ( ( 420 - 1 ) / sy ) * y, ( ( 205 + 1 ) / sx ) * x, ( ( 354 - 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_3: Semi-Auto", ( ( 10 - 1 ) / sx ) * x, ( ( 420 + 1 ) / sy ) * y, ( ( 205 - 1 ) / sx ) * x, ( ( 354 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_3: Semi-Auto", ( ( 10 + 1 ) / sx ) * x, ( ( 420 + 1 ) / sy ) * y, ( ( 205 + 1 ) / sx ) * x, ( ( 354 + 1 ) / sy ) * y, tocolor(5, 5, 5, 21), fontS, "sans", "left", "top", false, false, false, false, false) dxDrawText('Press'.." num_3: Semi-Auto", ( 10 / sx ) * x, ( 420 / sy ) * y, ( 205 / sx ) * x, ( 354 / sy ) * y, tocolor(r3, g3, b3, 255), fontS, "sans", "left", "top", false, false, false, false, false) end addEventHandler("onClientRender", root, ss ) if fileExists( "client.lua" ) then fileDelete( "client.lua" ) end Descripción: Este idea la copie del Counter Strike, ya que ahi podias cambiar el tipo de disparo, Asi que simple, con las teclas 1, 2, 3 puedes cambiar el tipo de disparo de Automatico a Rafaga y a Semi-Automatico. Advertencia de Recargar(Cliente): ------------------------------------------------------------------------ -- Desarrollador/Developer: -Rex- -- Proyecto/Proyect: Battle of GamerZ -- Contacto/Contact: https://www.facebook.com/rexscripting/ -- Fecha de creacion: xx/xx/2016 No recuerdo el mes Jeje -- -- Libre uso y modificacion, No borrar los creditos, Gracias ------------------------------------------------------------------------ local idsT = { [22] = true, [23] = true, [24] = true, [27] = true, [28] = true, [29] = true, [32] = true, [30] = true, [31] = true, } function checkRecargar( ) local id = getPedWeapon( getLocalPlayer( ) ) if idsT[id] == nil then setElementData( getLocalPlayer( ), "recargar_Hud_status", false ) return end if id then local maxAmmo = getWeaponProperty( id, "poor", "maximum_clip_ammo") local minAmmo = math.floor( maxAmmo / 2 ) local clip = getPedAmmoInClip ( getLocalPlayer( ) ) if clip <= minAmmo then setElementData( getLocalPlayer( ), "recargar_Hud_status", true ) else setElementData( getLocalPlayer( ), "recargar_Hud_status", false ) end end end setTimer( checkRecargar, 500, 0 ) local x, y = guiGetScreenSize( ) local par = 255 local parS = false addEventHandler("onClientRender", root, function() if getElementData( getLocalPlayer( ), "recargar_Hud_status" ) == true then if parS == false then if par > 10 then par = par - 10 else parS = true end else if par < 240 then par = par + 10 else parS = false end end local texto = dxGetTextWidth( "Recarga!", 1.50, "default-bold" ) local anc = ( x - texto ) / 2 dxDrawText("Recarga!", anc, y / 2 , ( 1207 / 1280 ) * x, ( 508 / 600 ) * y, tocolor(178, 18, 18, par), 1.50, "default-bold", "left", "top", false, false, false, false, false) end end ) if fileExists( "client.lua" ) then fileDelete( "client.lua" ) end Descripción: Este sistema lo que hace es que cuando la municion de tu Arma este por la mitad, Salga una advertencia ( El mensaje parpadea ) para que recarges tu arma :v
  7. Sistema de radio Sistema de radio vehicular -Caracteristicas: Reproduce links de web's y de Youtube. Audio en 3D ( Alcanze maximo 30 metros ). Volumen configurable. Sistema de guardado de links ( Puedes Copiar/Eliminar los links guardados ) Solo el conductor podra abrir el panel. Todos las cosas se guardan en una base de datos local. Codigo libre 7w7. Imágenes del sistema: Comandos: F5 Para abrir el panel /radio para abrir el panel por comando Debes darle permisos de ACL Al script ( Obligatorio para funcione el YoutubeMP3 ) Link del script: https://community.multitheftauto.com/index.php?p=resources&s=details&id=14289
  8. Funciona en cualquier tipo de GM. Gracias
  9. Gracias
  10. .
  11. La API Que usaba para youtube dejo de funcionar y no he encontrado ninguna, Saben de algun otro metodo para reproducir los videos de Youtube en MP3? Esta era la que usaba: "http://youtubeinmp3.com/fetch/?video="..urldeyoutube
  12. Gracias, Proximamente donare un sistema de Radio vehicular Avanzado <3 . En este se puede configurar el alcanze del volumen de la música ( Sonido 3D ) .. Reproducir radios y músicas de YT.. Guardar tus links.. etc <3
  13. Sistema de grupos -Caracteristicas: Kickear/Expulsar jugadores del grupo. Editar el color del grupo, Te puede ser útil para usarlo en otros recursos, Ya que yo lo use para un sistema de Turfs. Cambiar el rango de los jugadores, Existen tres tipos de Rangos: Fundador, Lider y Aspirante. Comprar Slots para tu Grupo! Por defecto al crear un grupo vienen incluidos 20 Slots.. Esto es modificable en el archivo server.lua Linea: 18; El costo de cada slots es de $5000, Puedes modificar este valor en la Linea 19. Invitar jugadores a tu Grupo! En el panel te muestra todos los jugadores y tambien te muestra si tiene o no grupo. Borrar tu grupo, Opción solo valida para el Fundador del grupo. Sistema de chat grupal, Con solo teclear 'Y' podrás escribir en el chat grupal. Todos las cosas se guardan en una base de datos local. Codigo libre 7w7. Sistema de administracion de grupos ( Válido solo para ACL Admin ) -Caracteristicas: Lista de todos los grupos del servidor ( Nombre del grupo y total de slots que tiene ). Editar los slots de un grupo. Editar el nombre del grupo. Editar la informacion del grupo. Expulsar a cualquier miembro del grupo. Agregar cualquier jugador al grupo. Editar el rango de cualquier jugador del grupo. Ver el nombre, cuenta y rango de un jugador. Registro de todas las acciones que se hacen ( Creaciones de grupo, Expulsaciones, Todo lo que hacen .. ). Registro de todos los chats grupales ( Puedes limpiar todo el registro por si se te acumula mucho ). Cada vez que un jugador escriba se mostrara en el debugscript. Imágenes del sistema: Funciones exportadas del sistema: --Si algún argumento de una funcion esta mal siempre retornara false. isGroupExists ( string nombre_delgrupo ) --> retorna true si es existe y false si no existe getPlayerGroup ( player thePlayer ) --> retorna el grupo del jugador isPlayerLeader ( player thePlayer ) --> retorna true si el jugador es el lider de un grupo, si no false. isPlayerFounder ( player thePlayer ) --> retorna true si el jugador es el Fundador de un grupo, si no false. isPlayerInGroup ( player thePlayer ) --> retorna true si el jugador esta en un grupo, si no false. isAccountInGroup ( string Account ) --> retorna true si la cuenta esta un grupo, si no false. removePlayerFromGroup ( player thePlayer, string GroupName ) --> expulsa al jugador de un grupo addPlayerToGroup ( player thePlayer, string GroupName ) --> Añade al jugador a un grupo. addAccountToGroup ( string Account, string GroupName ) --> Añade la cuenta a un grupo getPlayerRang ( player thePlayer ) --> Obtiene el grupo de un jugador getGroupColor ( string GroupName ) --> Obtiene el color de un grupo; Retorna colores R, G, B, ALPHA getGroupSlots ( string GroupName ) --> Obtiene los slots del grupo; Retorna numero de jugadores en el grupo, Slots del grupo. addGroupSlots ( string GroupName, number Cantidad ) --> Añade Los slots deseados a un grupo deleteGroup ( string GroupName ) --> Borra el grupo ingresado setGroupColor ( string GroupName, R, G, B, ALPHA ) --> Cambiar el color de un grupo. Comandos: F2 Para abrir el panel /cgsp Para abrir el panel de administracion de grupos ( Solo para ACL Admins; Lo puedes modificar en admin_panel_server.lua Linea: 20 ) 'Y' Para el chat grupal. Debes darle permisos de ACL Al script. Link del script: https://community.multitheftauto.com/index.php?p=resources&s=details&id=14279 Con mucho amor.. -Rex- <3
  14. No se puede mover el GPS. Lo que puedes hacer es crear uno y ponerlo en la posicion a gusto.