Показать сообщение отдельно
Старый 13.10.2020, 22:39   #10
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Ответ: Очередные вопросы от меня по игровой логике и скриптингу

Сообщение от ABTOMAT Посмотреть сообщение
Всё верно, именно так и можно делать.

Если GameObject'у сделать SetActive(false) то он выключается из иерархии. Перестаёт рендериться, привязанные к нему скрипты перестают работать (возобновляются после SetActive(true)).

Можно сделать в корне сцены родительские объекты, к которым будут крепиться те, что относятся к соответствующей части игры (меню, мир, битва), это и будут "слои".

Чтобы не загружать заново ассеты, можно загрузить один раз и держать их образцы для клонирования.

Про вычищение я имел в виду, что если у тебя, например, битва завершилась, и ты вернулся в мир, то тебе надо уничтожить всех монстров, которые были в битве и т.д., чтобы в следующей их там не было. При этом основные объекты (игровое поле, например) можно оставить. Про это я и имел в виду, что "надо париться", если просто грузить сцену, то там само всё обнуляется в начальное состояние (вариант для ленивых и нубов).
У меня на сетактиве весь юзер интерфейс и хелсбары.
На счет выпила объектов на поле боя, это легко. Делаем глобальный статический скрипт, вешаем в него переменную отвечающую за зачистку. В каждом объекте зашиваем условие с проверкой значения этой переменной, в результат условия пишем дестрой зыс, всё. При завершении боя меняем эту переменную, и все объекты самовыпиливаются.
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием