22- les sons


Une variable SIOC peut très bien déclencher un son, qu'il s'agisse d'une variable liée à un interrupteur ("Fasten Seat Belts") ou d'une variable déclenchée par une autre ou un calcul (par exemple un son d'alarme quand l'altitude de l'avion arrive à + ou - 1000 pieds de l'altitude demandée au sélecteur d'altitude).

 

Les fichiers sons peuvent être n'importe quel fichier .wav, ils n'ont rien à voir avec FSUIPC, ni même avec les fichiers sons de l'avion. Il suffit que les fichiers en question soient placés dans le même dossier que les fichiers SIOC. Le plus simple est de tout mettre dans Program Files \ IOCards.

 

On aura par exemple dans le dossier SIOC:

Ensuite, il faut s'occuper du fichier sioc.ini, et modifier le paragraphe [SOUND MODULE] en indiquant des numéros d'ordre, commençant par #1, pour chaque fichier son qui sera utilisé dans le programme .ssi de chaque avion. Cela donnera dans notre exemple:

 

[SOUND MODULE]

Sound_disable=No

Volume=100

 

[ #1 ]

Sound=PAX_SIGN.wav,-1,-1,0

 

[ #2 ]

Sound=*FIRE_BELL.wav,-1,-1,0

 

[ #3 ]

Sound=STALL.wav,-1,-1,0

 

[ #4 ]

Sound=CLICK.wav,-1,-1,0

 

[ #5 ]

Sound=GEAR_ALARM.wav,-1,-1,0

 

[ #6 ]

Sound=flaps20.wav,-1,-1,0

 

Les paramètres -1, -1, 0 correspondent à :

- la fréquence du son : -1 signifie fichier actuellement utilisé, ou 0 signifie fréquence de l'original.

- le volume du fichier son utilisé (en tête du paragraphe on a Volume=100, qui correspond au volume général de tous les sons).

- la balance: de -100 pour un son tout à gauche à +100 pour tout à droite, en passant par 0 pour un son centré.

 

Sauf cas particulier, on ne retouchera que rarement ces paramètres.

 

A noter également que notre son #2 est précédé d'un *, qui signifie que ce son devra être joué en boucle.

 

Ensuite, plusieurs méthodes sont possibles,mais un bonne solution est de créer deux variables, l'une pour lancer tous les sons , ceux qui sont joués une fois et ceux qui sont joués en boucle, et une autre pour arrêter les sons en boucle uniquement. Ces variables seront liées au module SOUND. A noter que la variable d'arrêt comporte le paramètre "Type S" , indispensable dans ce cas.

Il ne restera plus qu'à indiquer dans la variable qui commandera le son, un interrupteur par exemple, quel numéro de fichier son la variable PLAY_SOUND devra lancer, et de reprendre le même numéro dans la variable STOP_SOUND.

 

Mais attention, quand une variable a pris une valeur quelconque, il n'y a aucune raison qu'elle en change, à moins qu'on ne l'y force. Quand votre interrupteur qui commande les signaux passagers, par exemple, a pris la valeur 1 pour appeler le son n°1, si vous voulez de nouveau actionner cet interrupteur, il faudra au préalable que la variable PLAY_SOUND ait repris la valeur 0, sinon il ne se passera rien. La remise de l'interrupteur en position OFF pourrait s'en charger, mais c'est une bonne habitude que de remettre la variable PLAY_SOUND à zéro immédiatement après qu'elle ait lancé un son.

 

Exemple:

Sur cet exemple, on voit aussi qu'il est inutile d'utiliser la variable STOP_SOUND, puisqu'il s'agit d'un son joué une fois, qui s'arrête de lui même.

 

Si par contre on lance un son en boucle, comme l'alarme incendie appelant le son FIRE_BELL.wav, il est indispensable non seulement de remettre à zéro la variable PLAY_SOUND, mais également la variable STOP_SOUND, sinon votre avion pourra brûler une fois, mais pas deux ...