Page 2 sur 2
Re: Project Horror
Publié : 06 Déc 2017 17:07
par boubouk50
je crois que c'est parce que tu le lis a chaque frame.
Il te faut tester s'il joue avant de la lire:
Code : Tout sélectionner
{
//Play the audio
if (!audio.isPlaying) //Si le son n'est pas joué
{
AudioSource audio = GetComponent<AudioSource>();
audio.Play();
}
}
Re: Project Horror
Publié : 08 Déc 2017 15:50
par Scurreo
Super c'était bien ça, que veux dire précisément le !audio ?
Re: Project Horror
Publié : 08 Déc 2017 15:55
par boubouk50
audio.isPlaying est
booléen qui te signale si le son est joué ou non.
Un booléen prend deux états Vrai et Faux.
Ajouter ! devant un booléen renvoie l'état inverse.
donc si
audio.isPlaying est Faux (le son n'est pas joué),
!audio.isPlaying est Vrai, donc la condition est vérifiée.
Pour visualiser mieux:
!audio.isPlaying c'est le chemin rapide pour écrire
audio.isPlaying == false
Code : Tout sélectionner
if (!audio.isPlaying) { ... }
equivaut à
if (audio.isPlaying == false) { ... }
Re: Project Horror
Publié : 08 Déc 2017 15:58
par Scurreo
D'accord je viens de comprendre merci beaucoup
Re: Project Horror
Publié : 08 Déc 2017 16:14
par ZJP
boubouk50 a écrit : ↑08 Déc 2017 15:55
Ajouter ! devant un booléen renvoie l'état inverse.
Dans une affectation.
(
Boubouk le sait bien sur. Juste un complément d'informations, sinon, cela semblera une contradiction par rapport à la suite du commentaire)
Code : Tout sélectionner
toto = true;
toto = !toto; // toto est maintenant à false
toto = !toto; // toto est maintenant à true
C'est une bascule (
Flip-Flop) qui évite /
Code : Tout sélectionner
if (toto == true) /* OU SIMPLEMENT */ if (toto)
toto = false;
ou
if (toto == false)
toto = true;