Comandos SONIDO_FONDO

Este comando se utiliza para reproducir un fichero de audio de fondo durante el juego. Resulta muy útil para músicas de fondo ya que soporta la repetición indefinida de la música o sonido cuando finaliza.

Soporta ficheros de audio tipo: mp3, wav, mod, s3m, xm, it, mtm, mo3, mp1, mp2 y ogg.

Este comando también se usa para controlar un sonido mientras se está reproduciendo, como pausarlo o detenerlo.



Sintaxis 1 (cargar un sonido):

ACCI SONIDO_FONDO CARGAR número_canal fichero_audio.ext volumen


Sintaxis 2 (reproducir un sonido):

ACCI SONIDO_FONDO INICIAR número_canal repetir


Sintaxis 3 (cambiar el volumen de un sonido):

ACCI SONIDO_FONDO VOLUMEN número_canal volumen


Sintaxis 4 (pausar un sonido):

ACCI SONIDO_FONDO PAUSAR número_canal


Sintaxis 5 (reanudar un sonido pausado):

ACCI SONIDO_FONDO REANUDAR número_canal


Sintaxis 6 (detener por completo un sonido):

ACCI SONIDO_FONDO PARAR número_canal


Sintaxis 7 (Eliminar por completo un sonido):

ACCI SONIDO_FONDO ELIMINAR número_canal



  • número_canal:
  • Admite valores entre 1 y 8.

    Para la acción CARGAR sonido, es el número de canal que queremos asignarle a este sonido.

    Para el resto de acciones, es el número de canal al que pertenece el sonido que queremos iniciar, pausar, reanudar, parar, eliminar o cambiar su volumen.



  • fichero_audio.ext:
  • Es el nombre del fichero de audio (con su extensión) a cargar en memoria. Por ejemplo: musica5.mp3.

    Si no especificas la extensión del fichero, el sistema buscará el fichero con todas las extensiones disponibles.

    En cualquier caso, el fichero debe existir en la carpeta 'wav' de Entidad 3D, independientemente de la extensión que tenga.



  • volumen:
  • Nivel del volumen con el que se reproducirá el sonido del canal indicado. Admite valores entre 1 y 100.



  • repetir:
  • Con valor si cuando la música o sonido finalice se volverá a repetir indefinidamente.

    Con valor no la música o sonido no se volverá a repetir cuando finalice.





    Acerca de este comando:


    Este comando sirve principalmente para reproducir sonidos de ambientes, efectos continuos pero sólo en zonas concretas, alarmas continuas, músicas secundarias, etc..., pero sin que la música de fondo deje de sonar, por lo tanto podremos tener al mismo tiempo una música de fondo, un sonido de ambiente, alarmas de voz, etc.. todo al mismo tiempo y cada sonido controlado por separado.


    Este comando reproduce un sonido que el jugador no oirá como posicional, es decir, mientras el sonido esté activado el jugador lo oirá con el mismo volumen y sin variaciones en los canales de sonido derecho o izquierdo aunque se desplace por el nivel.

    Si quieres usar sonidos posicionales, dispones de la entidad 'ElectricBolt'.


    Atención: Si has incluido una música de fondo para que se reproduzca al dar comienzo el nivel, el canal número 1 será usado automáticamente para reproducir esa música de fondo. Por lo que si quieres realizar algún tipo de acción sobre esa música deberás usar el valor 1 en el parámetro 'número_canal' cuando uses el comando SONIDO_FONDO.

    Por ejemplo, para pausar la música deberás usar:

    ACCI SONIDO_FONDO PAUSAR 1



    Ejemplo 1:

    Reproducir el fichero de audio labofond.mp3 cuando el jugador entre en un laboratorio químico. El sonido produce efectos de burbujas y sonidos electrónicos mientras el jugador permanezca en el laboratorio.


    En la puerta del laboratorio, en el lado del interior del laboratorio, colocar una entidad Command con un fichero de comandos .INI asociado que contenga lo siguiente:

    En este caso usamos la variable 'CARGASON2' para controlar no cargar dos veces el mismo sonido en el mismo canal. Si no controlamos esto tampoco pasaría nada ni consumiría más memoria, pero sería una pérdida de tiempo volver a cargar el sonido si ya lo tenemos cargado en memoria.

    Para detener el sonido cuando el jugador salga del laboratorio, colocaremos otra entidad 'Command' en la puerta, pero esta vez en la parte exterior del laboratorio, con un fichero de comandos .INI asociado que contenga lo siguiente:

    ACCI SONIDO_FONDO PARAR 2



    Ejemplo 2:

    Quiero cargar en memoria dos músicas (musica_a.mp3 y musica_b.mp3) al iniciar mi juego, pero no quiero que suenen hasta que el jugador no alcance ciertas zonas del nivel.


    Incluye lo siguiente en el fichero de comandos .INI que has indicado en el parámetro 'FicheroComandos' de la entidad Configuracion de tu primer nivel:

    ACCI SONIDO_FONDO CARGAR 2 musica_a.mp3 90

    ACCI SONIDO_FONDO CARGAR 3 musica_b.mp3 90


    Posteriormente en los ficheros de comandos .INI asociados a los eventos que quieres detectar si el jugador alcanzó las zonas del nivel, debes usar la acción INICIAR del comando SONIDO_FONDO para iniciar la reproducción de cada música. En el caso de la 'musica_a.mp3' sería simplemente:

    ACCI SONIDO_FONDO INICIAR 2 si


    Como habrás podido observar, no debes cargar la música cada vez que la quieras reproducir, sólo la debes cargar una vez, a menos que hayas usado la acción ELIMINAR, ya que esta acción elimina por completo la música asociada al canal y deja totalmente disponible dicho canal.



    Ejemplo 3:

    Quiero cambiar la música principal de fondo por otra diferente.

    Con esas cuatro líneas sería la manera más correcta para cambiar de música, aunque de todas formas también funcionaría con sólo estas dos líneas:



    Funcionamiento del comando en el modo de juego online

    Ámbito de actuación por defecto del comando:


    El comando soporta cambio de ámbito:




    Si no necesitas tanto control sobre los sonidos y lo único que quieres es reproducir un efecto de sonido de poca duración, lo más adecuado es usar el comando SONIDO_FX.