Save/Load system | Task, UniTask
Сделать систему загрузки и сохранения состояния игры в файл по нажатию на кнопки “Загрузить файл” и “Сохранить в файл”
- Реализуйте систему загрузки и сохранения с помощью шаблона Indirection.
- Ресурсы на сцене статические: меняется только оставшееся их кол-во.
- Юниты на сцене динамические: могут менять положение на карте, здоровье, также могут спауниться и удаляться со сцены.
- Формат сохранения данных: сериализованный и зашифрованный файл (можно использовать шифрование AES)
Критерии оценки:
- Независимость системы сохранения от игровой логики
- Применение шаблона Indirection для сохранения данных
- Соблюдение принципов SOLID, KISS, отсутствие монобехов
- Применение архитектуры Zenject/VContainer/Custom
- Реализация AES шифрования
- Разделение архитектурных слоев на DataLayer & GameLayer
- Возможность добавлять новые фичи в игру, которые можно сохранять/загружать
- Сериализация и шифрование данных перед сохранением в файл