1.2 KiB
1.2 KiB
Модули движка
Движок Magic Scrolls строится на основе модульной архитектуры. По-умолчанию, без модулей, движок предоставляет:
- Событийную шину
- Реестр модулей
- Публичный API для модулей
Вся остальная логика, включая REST API, realtime коммуникации и игровые фичи реализуются через модули, которые могут общаться между собой посредством событийной шины.
Игровой модуль реализуется через свой основной класс, который наследуется от MscEngineModule. Сам модуль хранит о себе основную информацию в виде:
- Имени модуля, для записи в реестр и обращении;
- Ревизии модуля, для проверки зависимостей;
- Список зависимостей, описываемых как карта "название требуемого модуля" <-> "диапазон допустимых ревизий" (
MscRevisionRange)