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