Итоги восьмого8️⃣ и девятого9️⃣ модуля курса по архитектуре
Восьмой модуль был про создание спавнеров для противников и их визуальное отображение на экране. А так же про создание полезных инструментов разработки в Editor🔧
Девятый модуль был про конфиги игры, про то какой способ их хранить лучше и как его использовать. Так был добавлен новый противник👾
За эти два модуля были созданы спавнеры умеющие сохранять и загружать состояние убитости противника (если убит, то при загрузке его не надо спавнить снова)
Визуальное отображение спавнера в редакторе было создано через расширение редактора Unity
(красные сферы на видео🔴)
Так же были созданы конфиги для хранения и удобного редактирования характеристик противников - TypeId, статы, моделька. Эти данные не меняются в игровой сессии. Поэтому они называются статическими данными🗳
Для хранения статических данных на выбор есть JSON и ScriptableObject от Unity.
В моём случае был выбран последний.
В итоге был реализован сервис статических данных. Позволяющий удобно обращается к ним по TypeId противника.
Полученные данные были использованы для создания врагов на справнее с заранее настроенными характеристиками. Четко контролируя порядок инициализации на уровне.
Благодаря этому добавление нового противника стало относительно легче. Нужно лишь добавить новый конфиг с данными, добавить модельку в prefab variant противника и настроить аниматор.
Таким образом был добавлен голем, по поведению такой же как лич, но с более сильными статами👾
Лучник был временно убран со сцены, потому что ему нужно дописывать логику поведения, а я хотел уже сделать пост⌛
Немного пересобрал сцену, добавил спавнеров и точек сохранения🤓
P.S. Постов не было так долго потому что я уже вторую неделю в Питере и у меня маловато времени что бы плотно сесть покодить
P.S.S. Текста вышло полотно конечно, я думал контента меньше будет, поэтому объединил два модуля.
Пишите что думаете, прожимайте реакции😜
Post #36
241