Javier Posted November 13, 2012 Share Posted November 13, 2012 Hola, tengo un problema con el resource ambience_sound de Yakuza. El problema es que se reproducen diferentes sonidos a los players. Es decir Yo escucho una de metal , mientras que otro player escucha otra. Yo quiero que todos escuchen la misma musica al mismo tiempo. Me yudan? Gracias local sounds = {"--aca los links en este caso"} function playsound() playSound(sounds[math.random(1, #sounds)]) setSoundVolume(sound, 300.0) end addEventHandler("onClientResourceStart",getResourceRootElement(getThisResource()),playsound) setTimer(playsound, 410000,0) Link to comment
Castillo Posted November 13, 2012 Share Posted November 13, 2012 Lo que podes hacer es cambiar para que envie las URL desde el server side a todos los jugadores, asi todos escucharian la misma cosa. Link to comment
Javier Posted November 13, 2012 Author Share Posted November 13, 2012 Lo que podes hacer es cambiar para que envie las URL desde el server side a todos los jugadores, asi todos escucharian la misma cosa. Y como hago eso? Link to comment
Castillo Posted November 13, 2012 Share Posted November 13, 2012 Cambias parte del script que tenes, el que genera la cancion aleatoria, luego la envias a todos los jugadores con: triggerClientEvent y ahi agregas ese evento en el client side con: addEvent addEventHandler Link to comment
Javier Posted November 13, 2012 Author Share Posted November 13, 2012 Y entonces como queda esta parte. La verdad no nose playSound(sounds[math.random(1, #sounds)]) Link to comment
Castillo Posted November 13, 2012 Share Posted November 13, 2012 Pones ahi la URL que enviaste desde el servidor. Link to comment
Javier Posted November 13, 2012 Author Share Posted November 13, 2012 Pones ahi la URL que enviaste desde el servidor. Lo hice asi client local sounds = {"las urls"} function playsound() playSound(sounds[math.random(1, #sounds)]) setSoundVolume(sound, 300.0) end addEvent("musica", true ) addEventHandler("musica",getResourceRootElement(getThisResource()),playsound) setTimer(playsound, 410000,0) server function inicio () triggerClientEvent("musica", getRootElement(), playSound) end addEventHandler("onResourceStart",getResourceRootElement(getThisResource()), inicio) Esta bien? Link to comment
Castillo Posted November 13, 2012 Share Posted November 13, 2012 Eso no tiene sentido. Link to comment
Javier Posted November 13, 2012 Author Share Posted November 13, 2012 Eso no tiene sentido. Cual es problema en el script? Link to comment
Castillo Posted November 13, 2012 Share Posted November 13, 2012 Esta vez lo hice yo, pero la proxima no. -- client side: addEvent ( "musica", true ) addEventHandler ( "musica", root, function ( url ) if ( isElement ( sound ) ) then destroyElement ( sound ) end sound = playSound ( url ) setSoundVolume ( sound, 300 ) end ) -- server side: local sounds = { "las urls" } function inicio ( ) triggerClientEvent ( "musica", getRootElement(), sounds [ math.random ( #sounds ) ] ) end addEventHandler ( "onResourceStart", resourceRoot, inicio ) setTimer ( inicio, 410000, 0 ) Link to comment
Javier Posted November 13, 2012 Author Share Posted November 13, 2012 Esta vez lo hice yo, pero la proxima no.-- client side: addEvent ( "musica", true ) addEventHandler ( "musica", root, function ( url ) if ( isElement ( sound ) ) then destroyElement ( sound ) end sound = playSound ( url ) setSoundVolume ( sound, 300 ) end ) -- server side: local sounds = { "las urls" } function inicio ( ) triggerClientEvent ( "musica", getRootElement(), sounds [ math.random ( #sounds ) ] ) end addEventHandler ( "onResourceStart", resourceRoot, inicio ) setTimer ( inicio, 410000, 0 ) Ah Gracias. Link to comment
Recommended Posts