@Em4ik

Как сделать одну и ту же музыку на разных сценах Unity?

Мне нужно, чтобы одна и та же музыка, продолжаясь, играла на сцене меню и сцене настроек. Для этого я в скрипте кнопки перехода между сценами добавил DontDestroyOnLoad. Музыка продолжала играть в другой сцене, но при переходе обратно на первую добавлялась еще одна музыка, которая играла с начала. Я пробовал добавить проверку на наличие игрового объекта и его удаление при обнаружении, но удалялась та музыка, которая уже играла, поэтому она опять проигрывалась с начала. Помогите разобраться, я новичок и пока что плохо владею c#.
public class SettingsGameScript : MonoBehaviour
{
    public GameObject MenuMusic;
    public void SettingsOpen()
    {
        SceneManager.LoadScene("Settings");
        DontDestroyOnLoad(MenuMusic);
    }
}
  • Вопрос задан
  • 264 просмотра
Решения вопроса 1
@xcv0
Добавьте там где Вы впервые запускаете трек, переменную bool, и если она не равна True(Музыка не запущена), то запускайте музыку, если нет то не запускайите
Пример:
private bool _musicIsLoad = false;

private void Start()
{
    if (!_musicIsLoad)
    {
        //тут код по которому Вы запускаете музыку
        _musicIsLoad = true;
    }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы