Aller au contenu

whenever

  • par

Dans le langage Antescofo le processus « whenever » peut se représenter ainsi :

whenever (condition)
{
action
}

Il s’agit d’un déclencheur qui va exécuter une action à chaque fois qu’une condition est remplie. Par exemple

whenever (do_mi_sol)
{
ajouter si bémol
}

Ce qui se traduit par : toutes les fois où apparaitra la succession do – mi – sol : on ajoute un si bémol.

Ce processus, une fois lancé, sera tout le temps actif, jusqu’à ce qu’on le « tue » (abort do_mi_sol).

Dans l’exemple de ce premier événement la syntaxe est la suivante :

que je peux traduire par :

À chaque fois que 2eme voix de smerdiakov produit un pitch)

le spatialisateur n°2 reçoit un nombre aléatoire entre 0 et 360 qui détermine la position du son à 1m de distance

la variable « $alea_toupie2 » reçoit un nombre aléatoire entre 0 et 99

si ce nombre est plus petit que 25 (dans 25% des cas), alors le niveau de sortie du Leslie = 75 et la vistesse de rotation du Leslie est un nombre aléatoire compris entre 0 et 4 secondes auquel on ajoute 2 secondes.

sinon le niveau de sortie du Leslie = 0

Ou, pour le dire avec une syntaxe plus humaine : à chaque fois que la deuxième voix de smerdiakov produira une note on effectuera les opérations suivantes :

  1. calcul aléatoire de sa position spatiale (sur une sphère de 360°)
  2. calcul de la condition pour que le Leslie se déclenche (ici 25%)
  3. calcul aléatoire de la vitesse de rotation du Leslie (si la conditions 2 est remplie) entre 2 et 6 secondes.