Jump to content

#Dv^

Members
  • Posts

    459
  • Joined

  • Last visited

Everything posted by #Dv^

  1. addCommandHandler("hideblip", function (p) el = getAttachedElements(p) for idx,value in ipairs(el) do if getElementType(value) == "blip" then destroyElement(value, 0) end end end )
  2. Simple, solo cambia esta línea, si el archivo de sonido que tienes se llama "stop.mp3", ejemplo: local name = "stop" --Nombre del archivo que tienes Quedaría algo así addEventHandler("onClientGUIClick", reproducir1, function () local name = "SonidoA" triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir2, function () local name = "SonidoB" triggerServerEvent("playSound", localPlayer, name) end )
  3. Toma, no sé si es lo que tratas de hacer, pero al presionar F7 aparecerán los botones de sonidos, te recuerdo que este script los sonidos se deben llamar de la misma manera que se llaman los botones de audios, es decir "Audio1.mp3", "Audio2.mp3", etc. Cliente reproducir2 = guiCreateButton(136, 333, 234, 37, "Audio2", false) guiSetProperty(reproducir2, "NormalTextColour", "FFAAAAAA") reproducir1 = guiCreateButton(282, 235, 234, 37, "Audio1", false) guiSetProperty(reproducir1, "NormalTextColour", "FFAAAAAA") reproducir3 = guiCreateButton(199, 430, 234, 37, "Audio3", false) guiSetProperty(reproducir3, "NormalTextColour", "FFAAAAAA") reproducir4 = guiCreateButton(867, 445, 234, 37, "Audio4", false) guiSetProperty(reproducir4, "NormalTextColour", "FFAAAAAA") reproducir5 = guiCreateButton(924, 356, 234, 37, "Audio5", false) guiSetProperty(reproducir5, "NormalTextColour", "FFAAAAAA") reproducir6 = guiCreateButton(952, 260, 234, 37, "Audio6", false) guiSetProperty(reproducir6, "NormalTextColour", "FFAAAAAA") reproducir7 = guiCreateButton(788, 176, 234, 37, "Audio7", false) guiSetProperty(reproducir7, "NormalTextColour", "FFAAAAAA") reproducir8 = guiCreateButton(475, 176, 234, 37, "Audio8", false) guiSetProperty(reproducir8, "NormalTextColour", "FFAAAAAA") guiSetVisible(reproducir1, false) guiSetVisible(reproducir2, false) guiSetVisible(reproducir3, false) guiSetVisible(reproducir4, false) guiSetVisible(reproducir5, false) guiSetVisible(reproducir6, false) guiSetVisible(reproducir7, false) guiSetVisible(reproducir8, false) viewPanel = false function openPanel() if ( viewPanel == false ) then guiSetVisible(reproducir1, true) guiSetVisible(reproducir2, true) guiSetVisible(reproducir3, true) guiSetVisible(reproducir4, true) guiSetVisible(reproducir5, true) guiSetVisible(reproducir6, true) guiSetVisible(reproducir7, true) guiSetVisible(reproducir8, true) showCursor(true) viewPanel = true else guiSetVisible(reproducir1, false) guiSetVisible(reproducir2, false) guiSetVisible(reproducir3, false) guiSetVisible(reproducir4, false) guiSetVisible(reproducir5, false) guiSetVisible(reproducir6, false) guiSetVisible(reproducir7, false) guiSetVisible(reproducir8, false) showCursor(false) viewPanel = false end end bindKey("F7", "down", openPanel) addEventHandler("onClientGUIClick", reproducir1, function () local name = guiGetText(reproducir1) triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir2, function () local name = guiGetText(reproducir2) triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir3, function () local name = guiGetText(reproducir3) triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir4, function () local name = guiGetText(reproducir4) triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir5, function () local name = guiGetText(reproducir5) triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir6, function () local name = guiGetText(reproducir6) triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir7, function () local name = guiGetText(reproducir7) triggerServerEvent("playSound", localPlayer, name) end ) addEventHandler("onClientGUIClick", reproducir8, function () local name = guiGetText(reproducir8) triggerServerEvent("playSound", localPlayer, name) end ) addEvent("startPlaySound", true) addEventHandler("startPlaySound", root, function(nameSound) local x, y, z = getElementPosition( localPlayer ) local sound = playSound3D( "sonidos/"..nameSound..".mp3", x, y, z ) setSoundVolume( sound, 1 ) setSoundMinDistance( sound, 1 ) setSoundMaxDistance( sound, 100 ) attachElements( sound, localPlayer, 0, 0, 0 ) end ) Servidor addEvent("playSound", true) addEventHandler("playSound", root, function(name) local nameSound = tostring(name) outputChatBox(nameSound) triggerClientEvent(source,"startPlaySound", source, nameSound ) end ) Si tienes algún problema o otra duda avísame
  4. ¿Quieres que el sonido lo escuchen todos o sólo tú al presionar el botón?
  5. Pues a mi me funciona bien el código, lo probé y todo bien ¿Compruebas que el script se haya iniciado? No sé, prueba de esta manera para que te avise que hayas iniciado el sonido correctamente y que los archivos de sonidos se llamen "prueba1.mp3" y "prueba2.mp3" y solo esos dos estén dentro de la carpeta "sonidos" Server local tick = getTickCount() addCommandHandler( "sound", function( player, _, name ) if getTickCount() - tick > 1000 then -- solo podrá usar el comando cada 1 segundo local name = name if (name) == "prueba1" or (name) == "prueba2" then --sólo si el comando es /sound prueba1 o /sound prueba2 se iniciará triggerClientEvent( player, "sound:startSound9", player, player, name) else outputChatBox("Este archivo "..name.." no se puede iniciar") end tick = getTickCount() end end ) Client addEvent( "sound:startSound9", true ) addEventHandler( "sound:startSound9", getRootElement( ), function( player, name) outputChatBox("Se inició el sonido "..name.."")-- El nombre del sonido que se inició local x, y, z = getElementPosition( player ) local sound = playSound3D( "sonidos/"..name..".mp3", x, y, z ) setSoundVolume( sound, 1 ) setSoundMinDistance( sound, 1 ) setSoundMaxDistance( sound, 100 ) attachElements( sound, player, 0, 0, 0 ) end )
  6. Postea el código sonidos.lua y sonidos_client.lua
  7. Postea tu meta.xml Te sale algún error en Debug?
  8. En el settings del recurso "votemanager" tiene las opciones que tú quieras activar o desactivar, si quieres solo activar el votemap y lo demás fuera solo desde el Panel de Administración(P) en "Resources" busca el recurso "votemanager" y dale a "settings", edita lo que tu quieres dejar y lo que quieres desactivar
  9. 60000 = 1 minuto Multiplica 60000 x (Minutos) 1 hora sería 60000 x 60 = 3600000 Si quieres que no tenga timer sólo borra está línea If getTickCount () > 5000 then Entonces podrás ejecutar el comando sin necesidad de esperar Para que el botón de una GUI ejecute algo debes usa el evento "OnClientGUIClick", Un ejemplo local x, y = guiGetScreenSize boton = guiCreateButton(x, y, x, y "Test", false) addEventHandler("OnClientGUIClick", boton, function() outputChatBox("Test") end ) Y es local x, y = guiGetScreenSize(), un error mí Y me faltó una "," en guiCreateButton(x, y, x, y, "Test", false)
  10. Gracias a ambos por la ayuda, lo tendré en cuenta
  11. Client addEvent( "sound:startSound", true ) addEventHandler( "sound:startSound", getRootElement( ), function( player, name) local x, y, z = getElementPosition( player ) local sound = playSound3D( name..".mp3", x, y, z ) setSoundVolume( sound, 1 ) setSoundMinDistance( sound, 1 ) setSoundMaxDistance( sound, 100 ) attachElements( sound, player, 0, 0, 0 ) end ) Server local tick = getTickCount() addCommandHandler( "sound", function( player, _, name ) if getTickCount() - tick > 5000 then -- solo podrá usar el comando cada 5 segundos local name = name if (name) then triggerClientEvent( player, "sound:startSound", player, player, name) end tick = getTickCount() end end ) Solo escribe el nombre del sonido, osea si el archivo se llama "play.mp3" entonces pon /sound play
  12. ¿Y qué problema tienes ahora? Saqué los toggleControl, podrás disparar pero si tiene el "dm" activado, no podrá hacer daño y tampoco a los demás, lo mismo desde la greenzone, sí está dentro de la greenzone no podrá hacer daño y tampoco a los que están afuera
  13. Toma, hice tú código más corto posible por que tenías cosas muy innecesarias demás, y parecía muy raro, espero te sea de ayuda Si hay algún bug, avísame, lo arreglaré lo antes posible Servidor addEventHandler ("onResourceStart",getResourceRootElement(getThisResource()), function() local greenzones = getElementsByType ("radararea") for i,v in ipairs (greenzones) do local r,g,b,a = getRadarAreaColor (v) if (r == 0) and (g == 255) and (b == 0) and (a == 127) then local x,y = getElementPosition (v) local sx,sy = getRadarAreaSize (v) local col = createColCuboid (x,y, -50, sx,sy, 7500) setElementID (col, "radarColShape") setElementDimension(col,0) setElementInterior(col,0) end end end) addEventHandler ("onColShapeHit", getRootElement(), function(player, matchingDimension) if getElementType (player) == "player" and getElementID (source) == "radarColShape" then setElementData(player,"greenzone",true) outputChatBox("Entraste a una zona segura.", player, 0, 255, 0, true) end end ) addEventHandler ("onColShapeLeave", getRootElement(), function(player, matchingDimension) if getElementType (player) == "player" and getElementID (source) == "radarColShape" then setElementData(player,"greenzone",false) outputChatBox("Saliste de la zona segura.", player, 255, 0, 0, true) end end ) command = { } timer = 300000 function setDm(playerSource) if (command[playerSource]) then return outputChatBox ( "Espera 5 minutos para volver a usar el comando DM", source, 225, 0, 0 ,true) end if getElementData(playerSource, "greenzone") == false then if getElementData(playerSource,"DM") == true then triggerClientEvent (playerSource,"dmOff",playerSource) setElementData(playerSource, "DM", false) outputChatBox("Modo DM desactivado, ahora podrás hacer daño y serás vulnerable.", playerSource, 255, 0, 0, true) else setElementData(playerSource, "DM", true) triggerClientEvent (playerSource,"dmOn",playerSource) outputChatBox("Modo DM activado, no podrás hacer daño y los demás a ti tampoco.", playerSource, 0, 255, 0, true) end else outputChatBox("No puedes activar o desactivar el DM dentro de una zona segura.",playerSource, 255, 0, 0, true) end command[playerSource] = true setTimer( function() command[playerSource] = false end, timer, 1) end addCommandHandler ("dm",setDm) Cliente function cancelDamageDm (attacker) if getElementData(attacker, "DM") == true or getElementData(source, "DM") == true then cancelEvent() end end addEventHandler ("onClientPlayerDamage", root, cancelDamageDm) addEventHandler ("onClientPlayerStealthKill", root, cancelDamageDm) function cancelDamageGreenzone (attacker) if getElementData(attacker, "greenzone") == true or getElementData(source, "greenzone") == true then cancelEvent() end end addEventHandler ("onClientPlayerDamage", root, cancelDamageGreenzone) addEventHandler ("onClientPlayerStealthKill", root, cancelDamageGreenzone) hud ={ "radar", "weapon", "crosshair" } addEvent("dmOn", true) addEventHandler("dmOn",root, function() for k, v in ipairs(hud) do showPlayerHudComponent(v,false) end end ) addEvent("dmOff", true) addEventHandler("dmOff",root, function() for k, v in ipairs(hud) do showPlayerHudComponent(v,true) end end )
  14. Postea el código del deathmath o añadime a Skype y te ayudaré: Raik#(kasdasa)
  15. Servidor function sendToHim( ) triggerClientEvent( source, "playSound", source ) end addCommandHandler("sound", sendToHim) Cliente addEvent("playSound", true) addEventHandler("playSound",root, function () local x, y, z = getElementPosition(localPlayer) local sound = playSound3D("track.mp3", x, y, z) setSoundVolume( sound, 1 ) setSoundMinDistance(sound, 1) setSoundMaxDistance(sound, 100) attachElements (sound,localPlayer, 0, 0, 0 ) end )
  16. Eso es por seguro estás usando toggleControl en ambos scripts Un ejemplo: Al entrar a la greenzone toggleControl (hitElement,"aim_weapon", false) Al salir de la greezone toggleControl (hitElement,"aim_weapon", true) Y con el script de deathmath si estás usando toggleControl sería lo mismo que greenzone Al activar el dm toggleControl (hitElement,"aim_weapon", false) Al desactivar el dm toggleControl (hitElement,"aim_weapon", true) Entonces, si tienes dm activado y estás dentro de la greenzone, el jugador al salir de la greenzone con el dm ya activado pasaría esto toggleControl (hitElement,"aim_weapon", true) El jugador podrá apuntar con su arma, pero no le podrán hacer daño por que tiene el "dm" aún activado y ese sería el bug, no le podrán hacer daño por que seguro estás cancelando el evento onClientPlayerDamage para que el jugador local no reciba daño En un post anterior tuyo tienes el mismo problema parecido a este, por eso pensé que estás usando toggleControl en ambos scripts: https://forum.multitheftauto.com/topic/67918-ayuda-script-dm/
  17. Hola, verán estoy haciendo un script que simula barras de sonido, el problema no puedo saber cuál es, en sí el script funciona sin problemas, pero me llena de errores el Debug, ocaciona que el servidor se me laguee Este es el error que me sale bad argument #1 to "ipairs" (table expected, got boolean) La función es esta function draw () if ( isElement ( speakerSound [localPlayer] ) )then local soundSpeak = getSoundFFTData(speakerSound[localPlayer], 8192, 30) for i,v in ipairs( soundSpeak ) do size = math.round((v*320),0)>100 and 100 or math.round((v*320),0) large = 13 dxDrawRectangle(wx*520+(i*wx*large), wy*600, wx*large-1, wy*2*size*-1, tocolor(0, 255, 0, 255), false) end end end Y el error me dá en esto for i,v in ipairs( soundSpeak ) do ¿Me pueden explicar por qué me sale este error?
  18. Se, por ejemplo escalar una pared para saltar hacia el otro lado, eso no me deja, sólo si estoy en una Int sucede, si el mapeo no está en una Int si puedo escalar una pared
  19. Gracias, pude solucionarlo con el tip de Ciber, tengo otro problema El problema es que hice un mapeo pero en una int, en este caso la int 23, y el problema está que cuando quiero trepar un objecto este no me deja, pero si está en la int 0 si puedo trepar, ¿No se puede solucionar eso o solo es así?
  20. Es la primera vez que me pasó, ayer actualicé Windows 10 y hoy probé el editor y empezó a fallar así, incluso otros users si pueden usar el editor pero yo no puedo seleccionar ninguna función
  21. Hola El map editor me funciona lento, ni siquiera puedo guardar el mapa, en sí no puedo usar ninguna función para crear o editar, ¿Alguna solución? No sé si será por el Sistema Operativo que uso, que es Windows 10, por que antes no me pasaba eso
  22. Muchas gracias, no conocía esa función
  23. Hola, tengo una duda y es si se puede hacer que el player al estar en una cierta dimensión no pueda usar ninguna otra arma a excepción de una, por ejemplo solo quiero que se use la Deagle, que si se la cambia mediante el panel F1 o por el Scroll este le devuelva el arma Deagle, que no le permita cambiar ni usar ¿Se puede hacer eso?
×
×
  • Create New...