THRASH CAT
Obstáculos
En la función OnTriggerEnter del Game Object del Jugador se lanzan los eventos de FMOD relacionados con los objetos que este recoge o con los que se choca.
Dependiendo del tipo de objeto que recoge el player se lanza el sonido básico (SFX_FISHBONE) o el sonido Premium (SFX_PREMIUM)

Además, en esta función también se encuentran las llamadas a FMOD para que ejecute el sonido de los obstáculos con los que choca. Para ello, se pregunta si el objeto con el que se ha colisionado, se encuentra dentro de la capa de obstáculos. Si es así, se llama a la función PlayObstacleSound que se encuentra dentro del mismo script del GameObject. Esta función la creo para reproducir el sonido específico dependiendo del objeto que ha colisionado. Recibe, por tanto, como parámetro este objeto colisionado.

La función PlayObstacleSound recibe una cadena de caracteres con el nombre del objeto y se reproduce el sonido en cuestión. Se utiliza para comparar el método Contains propio de la clase string.

Siguiendo en la función OnTriggerEnter, también se encuentran los sonidos en los que el jugador recibe un daño (SFX_CATHIT) o muere (SFX_CATDEATH). Esto se controla con la variable currentlife que almacena un valor numérico para la vida del jugador.

Movimiento del jugador
Los sonidos del movimiento del jugador se encuentran dentro del script llamado CharacterInputController.
Son dos los movimientos: Saltar y Deslizarse. Cada uno de ellos tiene su propio método, desde donde se llama al evento en FMOD.


LOOPS
Dentro del juego hay dos momentos en los que dos sonidos suenan en loop. Cuando se recoge un imán que atrae todos los ítems y cuando se recoge una estrella que convierte al jugador en invencible. Para ello se utilizo la creación de instancias de FMOD dentro de la corrutina que maneja el tiempo en que estos ítems están activos.
El proceso consiste en crear las instancias, previamente declaradas al inicio de la clase.
Comienzan con el método start() y se liberan y se paran con los métodos stop() y release().


Música
Para la integración de la música se han seguido los mismos pasos que en el apartado de los Loops.
Partiendo de tres músicas compuestas cada una de ellas por una serie de stems (BASS, DRUMS, KEYS y LEAD).

Se lanzan lanzan como instancias utilizando start(), stop() y release(). Además, dependiendo de la pantalla en la que se encuentre el juego (Menú, Gameplay y GameOver) se deben parar todas las músicas anteriores para que no suenen a la vez.
Además de crear la instancia se toma acceso al bus de FMOD que controla la música para parar todos los eventos que por él circulen.

Por ejemplo, en la pantalla Game Over, se toma acceso al bus de FX de FMOD y se paran todos los eventos para que no se quede nada sonando. Además, hay que parar y liberar la instancia de la música del Gameplay y comenzar a ejecutar la música de Game Over.
