Задать вопрос
@Gregory256

Как удалить дубликаты, если объект зарезервирован DontDestroyOnLoad?

Доброго времени суток. Помогите решить задачу: На каждом уровне(новой сцене) хочу оставлять кнопку паузы и меню проигрыша. На первом уровне кинул скрипт DontDestroyOnLoad на канвас. При выходе из уровня и возвращении на уровень канвас дублируется. Каким образом можно удалить дубликаты? Или же есть другой способ осуществления данной операции?
  • Вопрос задан
  • 231 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Решения вопроса 2
freeExec
@freeExec
Участник OpenStreetMap
Так не надо держать меню в сцене уровня. Создавай его из префаба, если он отсутствует.
Ответ написан
LittleBob
@LittleBob
Возможно это костыль, но можно добавить DontDestroyOnLoad в if, который будет зависеть от bool переменной. Когда экземпляр DontDestroyonLoad создан, просто изменять bool переменную на false и сохранять в PlayerPrefs. А при выходе из игры опять изменять значение переменной на true и сохранять, чтобы в следующем запуске меню появилось. (playerPrefs не принимает bool, поэтому можно использовать 0 и 1).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы