Unity / C # проигрывает аудиоклип при загрузке сцены, которую я не хочу - PullRequest
0 голосов
/ 23 января 2019

Теперь у меня есть что-то вроде этого

Мой скрипт SoundManager

Мой звуковой скрипт

Если это он

Скрипт на C #

Итак, у меня есть два аудиоклипа, которые я хочу сыграть в игру. звук "boing2", когда игрок сталкивается с препятствием - это отлично работает.

Когда игрок достигает цели, JinglDingl должен сыграть. Это тоже отлично работает.

Проблема в том, что когда игрок поражает цель в игре, "boing2" также играет. И я понятия не имею, почему.

Я попытался проверить это, отключив обе строки FindObjectOfType (). Play (...) - и игра по-прежнему воспроизводит звук "boing2" при попадании в цель.

Если я отключу строку «NextLevel», «boing2» не будет таким, каким он должен быть.

Итак, мой вывод: единство играет звук всякий раз, когда он загружает новую сцену. Я искал редактор, если я отмечал что-то неправильно, но мой поиск не был успешным.

Есть идеи?

1 Ответ

0 голосов
/ 23 января 2019

Снимите флажок «Воспроизвести при пробуждении» в источнике звука.

Play on Awake

Или вы можете установить значение false на AudioSource в коде, если создаете его вкод

void Awake(){

...


    foreach(sound s in sounds) {

        s.source = gameObject.AddComponent<AudioSource>();
        s.source.clip = s.clip;
        s.source.playOnAwake = false;
    }


}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...