Jump to content

~ProtoN!

Members
  • Posts

    45
  • Joined

  • Last visited

Everything posted by ~ProtoN!

  1. ~ProtoN!

    bindKey

    Gracias! ya entendí
  2. ~ProtoN!

    bindKey

    Hola a todos! Quería saber como puedo hacer para que una función dependa de 2 binds. Por ejemplo: shift+c dispara tal función. Desde ya gracias.
  3. Usá 'onClientMarkerLeave' que dispara una funcion cuando se sale del marker.
  4. PlaySong JAJAJAJA Lo importante era que entendiera. Solamente le quise dar una idea de como funciona el math.random() Y creo que todavia no sabe usar las tablas la Dufrana por eso se lo hice así
  5. Dufrana Usá math.random(int, int) esa función devuelve un numero random, dependiendo de los argumentos que le hayas puesto. Por ejemplo math.random(1,10) va a devolver un numero entre 1 y 10. Con el script que querés hacer podes hacer algo así local function cancionRandom() local numero = math.random(1,3) if numero == 1 then playSong('song1.mp3',true) elseif numero == 2 then playSong('song2.mp3',true) else playSong('song3.mp3',true) end end addEventHandler('onClientMarkerHit', getRootElement(), cancionRandom)
  6. Listo! c: gracias Alex y Dufrana!
  7. Hola a todos! Tengo un problema con el evento onResourceStart. No se si a alguno le pasó que al usar este evento la función que se le asignó se dispara al iniciar o reiniciar otro script Por ejemplo: function saludar() outputChatBox('Hola a todos!', getRootElement(), 255, 255, 255, true) end addEventHandler('onResourceStart', root, saludar) Y cuando prendo otro script se dispara la funcion saludar Si alguien sabe como solucionar esto voy a agradecer su ayuda Desde ya gracias!
  8. La verdad que te llevaria mas tiempo, es mas sensillo que el script te haga el calculo antes que perder mas tiempo sacando las cuentas.
  9. Para que los elementos gui y/o dx se vean bien en cualquier resolución tenés que dividir la posicion y el tamaño del dx o gui por la resolucion actual(la resolucion en la que creaste el gui o dx) y multiplicarla por la resolucion en la que se va a visualisar. Ejemplo textual: En este caso como es dxDrawText no importa el tamaño, ya que eso depende del font-size que le pongan. Voy a poner en la posicion horizontal un valor de 15 y en la vertical un valor de 12.50, con esto ya tengo la posicion. Ahora estoy creando este elemento en una resolucion de 800x600, que sería la resolucion actual y por ultimo la resolucion en la que se va a ejecutar que no la podemos saber porque cada quien usa una resolucion diferente. hasta ahora tendriamos algo así: 15/800*resolucion en la que se va a ejecutar, 12.50/600*resolucion en la que se va a ejecutar. ¿Como saber en que resolución la van a ejecutar? La respuesta es con la funcion guiGetScreenSize, esta nos devuelve la resolucion en 2 valores int. Aca un ejemplo en lua: ancho, alto = guiGetScreenSize --Le asignamos las vasriables y ahora podemos saber cual es la resolucion a ejecutar. --Acá el dx con dichos calculos nos va a dar el posicionamiento y tamaño correcto en cualquier resolución dxDrawText("EJEMPLO", 15/800*ancho, 12.50/600*alto, 454/800*ancho, 41/600*alto, tocolor(255, 255, 255, 255), fuente, "default-bold", "left", "top", false, false, true, false, false) Espero haberte ayudado
  10. Ese es el problema, no me aparece la opcion de scale en ningun lado. Ni en F3..
  11. Donde esta esa opcion? hay algun programa o esta integrado al map editor?
  12. Tengo una duda, Como se setea el tamaño a un objeto en un mapa?
  13. Hola, estaba haciendo un gamemode desde 0 y me encontre con otro problema. Los objetos que cargo desde el mapa, van cargando lento a medida que me acerco o me alejo. aca esta el script que carga los objetos del mapa : function loadMap(startedMap) mapRoot = getResourceRootElement(startedMap) local obj = getElementsByType ( "object", mapRoot ) for key, value in pairs(obj) do local objeto,xa,ya,za,interior,dimension,xr,yr,zr dimension = getElementData(value, "dimension") interior = getElementData(value, "interior") objeto = getElementData(value, "model") xa = getElementData(value, "posX") ya = getElementData(value, "posY") za = getElementData(value, "posZ") xr = getElementData(value, "rotX") yr = getElementData(value, "rotY") zr = getElementData(value, "rotZ") elemento = createObject ( objeto, xa, ya, za, xr, yr, zr) setElementDimension(elemento, dimension) setElementInterior(elemento, interior) end end Desde ya gracias.
  14. El Problema es que el evento "onClientGUIClick" tiene que estar dentro de la funcion donde se crean los elementos GUI asi: addEventHandler( "onClientResourceStart", resourceRoot, function() Window = guiCreateWindow(346, 205, 369, 401, "Window prueba", false) guiWindowSetSizable(Window, false) close = guiCreateButton(74, 344, 221, 47, "Close", false, Window) addEventHandler( "onClientGUIClick", close, closeWindow, true) end ) function main( ) showCursor(true) end addEventHandler ( "onClientResourceStart", getRootElement(), main ) function closeWindow() showCursor(false) guiSetVisible(Window, false) guiSetVisible(close, false) end pero seria mejor hacer que lo elementos GUI no se inicien por ninguna funcion ni evento algo asi: --Elementos GUI.-------------- Window = guiCreateWindow(346, 205, 369, 401, "Window prueba", false) guiWindowSetSizable(Window, false) close = guiCreateButton(74, 344, 221, 47, "Close", false, Window) showCursor(true) ------------------------------ function closeWindow() showCursor(false) guiSetVisible(Window, false) guiSetVisible(close, false) end addEventHandler( "onClientGUIClick", close, closeWindow, true)
  15. Probá esto Serverside: addEventHandler("onVehicleStartEnter", root, function() x,y,z = getElementPosition(source) if isVehicleLocked (source) then triggerClientEvent ( "Alarm", getRootElement(), x, y, z ) triggerClientEvent ( "luces", root, source) end end ) Clientside function Alarm(x,y,z) local nv = playSound3D("alarm.mp3", x,y,z, false) setSoundVolume(nv, 0.5) setSoundMaxDistance(nv, 20) setTimer(stopSound, 6000, 1, nv, true) end addEvent("Alarm",true) addEventHandler( "Alarm", root, Alarm) function luces(source) setTimer(setVehicleOverrideLights, 500, 1, source, 1) setTimer(setVehicleOverrideLights, 1000, 1, source, 2) setTimer(setVehicleOverrideLights, 1500, 1, source, 1) setTimer(setVehicleOverrideLights, 2000, 1, source, 2) setTimer(setVehicleOverrideLights, 2500, 1, source, 1) setTimer(setVehicleOverrideLights, 3000, 1, source, 2) setTimer(setVehicleOverrideLights, 3500, 1, source, 1) setTimer(setVehicleOverrideLights, 4000, 1, source, 2) setTimer(setVehicleOverrideLights, 4500, 1, source, 1) setTimer(setVehicleOverrideLights, 5000, 1, source, 2) setTimer(setVehicleOverrideLights, 5500, 1, source, 1) end addEvent("luces",true) addEventHandler( "luces", root, luces)
  16. Espero que esto te ayude c: estado = 0 addEventHandler("onClientResourceStart", resourceRoot, function() bindKey("r", "down", function() if estado == 0 then radio = playSound("linkdelaradio") setSoundVolume(radio, 100) setRadioChannel(0) estado = 1 elseif estado == 1 then stopSound(radio) estado = 0 end
×
×
  • Create New...