@stasersmailov

Почему не меняется сцена после билда?

В редакторе всё работает так как нужно, но в билде хоть под виндовс, хоть под андроид сцена не меняется, но не зависает, а продолжает играть

Код функции которая меняет сцену
[SerializeField] private Object[] _nextScenes;

private void OnOutOfProjectile()
    {
        PlayerPrefs.SetInt(ScorePref, _scoreView.Score);
        int rand = Random.Range(0, _nextScenes.Length);
        SceneManager.LoadScene(_nextScenes[rand].name);
    }


6100232ddb902582479603.png
6100233642ab2314360596.png
610023420e209893471153.png
  • Вопрос задан
  • 34 просмотра
Пригласить эксперта
Ответы на вопрос 1
Скорее всего в билде объекты сцены обнуляются (смотрите логи или поставьте Debug.Log(_nextScenes[rand]))

Не нашел как прикрепить сцену к скрипту.
Вот другие варианты:

1) Uрузить последовательно, как ты выбрал в BuildSettings:
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex + 1);


2) Вбивать имена сцен в список:
[SerializeField] private string[] _nextScenes;
SceneManager.LoadScene(_nextScenes[rand]);


3) Использовать кастомный PropertyDrawer:
answers.unity3d.com/questions/242794/inspector-fie...
Ответ написан
Ваш ответ на вопрос

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

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