Add mod documentation in seven languages
This commit is contained in:
1 parent
90ce5fad8c
commit
307da15a12
28 files changed
+540
-18
No files matched your search
+71
@@ -0,0 +1,71 @@
|
||||
# UI — общий интерфейс всех игр
|
||||
|
||||
UI — общий для всех игр слой интерфейса: панель инструментов в правом верхнем углу, игровое меню, индикатор сохранения, уведомления в левом верхнем углу, просмотр фона и единый вид панелей, кнопок и списков. Собственной истории и правил у него нет. Почти все остальные моды строятся поверх него — поэтому UI есть в каждой игре и значится в зависимостях у огромного числа модов.
|
||||
|
||||

|
||||
|
||||
## Панель инструментов
|
||||
|
||||
Каждая иконка открывает свою панель. Набор кнопок не фиксирован: свой добавляет каждый мод игры, поэтому в новелле без предметов не будет сумки, а в игре со Scenario Studio появится ещё одна иконка.
|
||||
|
||||

|
||||
|
||||
В Cthangover слева направо:
|
||||
|
||||
1. **Инструменты** — меню инструментов разработчика (только когда в игре есть редакторы).
|
||||
2. **Карта** — карта мира (Map Engine).
|
||||
3. **Сумка** — инвентарь (Items).
|
||||
4. **Персонажи** — отряд и персонажи (Characters).
|
||||
5. **Рекруты** — завербованные персонажи (Recruiting).
|
||||
6. **Навыки** — навыки (Skills).
|
||||
7. **Меню** — игровое меню, о нём ниже (этот мод).
|
||||
8. **Журнал** — задания (Quests).
|
||||
|
||||
В других играх набор другой: например, RPG Plus добавляет **лист персонажа**.
|
||||
|
||||
## Игровое меню
|
||||
|
||||
Иконка-шестерёнка открывает меню: **Вернуться**, **Сохранить**, **Загрузить**, **Настройки**, **Главное меню** и **Выход**. В сценах, где сохранение запрещено, пункт «Сохранить» неактивен — как на скриншоте. «Загрузить», «Сохранить» и «Настройки» открывают те же окна, что и в главном меню.
|
||||
|
||||

|
||||
|
||||
## Уведомления
|
||||
|
||||
В левом верхнем углу появляются короткие сообщения: новая запись в журнале, подсказка от сюжета. Одновременно показывается до четырёх, каждое держится на экране около десяти секунд, остальные ждут своей очереди.
|
||||
|
||||

|
||||
|
||||
## Авторам модов
|
||||
|
||||
**Добавить кнопку на панели инструментов и её панель** можно записью `ui` в манифесте. Так Items добавляет сумку:
|
||||
|
||||
```json
|
||||
"ui": [
|
||||
{
|
||||
"id": "inventory",
|
||||
"kind": "panel",
|
||||
"slot": "ModBeforeUIPanel",
|
||||
"scene_path": "scenes/ui/inventory_panel.tscn",
|
||||
"button": { "icon": "bag", "locale": "ui/inventory/title", "index": 20 },
|
||||
"priority": 10
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
- `button.index` задаёт порядок иконок (карта 10, сумка 20, персонажи 30, навыки 40, меню 50, журнал 60, студия 90);
|
||||
- `button.icon` — имя иконки, `button.locale` — ключ перевода подсказки;
|
||||
- запись без `button` — панель или оверлей, который игра открывает сама: Crafting добавляет верстак как `"kind": "overlay"` в слот `ModLastPanel` и открывает его из сценариев.
|
||||
|
||||
**Открыть панель из сценария** можно действием `ui.toggle_panel`, а **показать уведомление** — командой `notify`:
|
||||
|
||||
```scenario
|
||||
notify "Новая запись в журнале."
|
||||
```
|
||||
|
||||
**Придерживайтесь общего стиля.** Панели, собранные в коде, берут рамки, надписи, чипы и кнопки из набора виджетов (`UiKit`) и его токенов цвета и размера, поэтому новая панель сразу вписывается в игру и следует её теме.
|
||||
|
||||
## Если что-то пошло не так
|
||||
|
||||
1. **На панели инструментов нет кнопки.** Мод, который её добавляет, не входит в эту игру; проверьте состав игры в разделе **Моды и коллекции**.
|
||||
2. **«Сохранить» неактивно.** Текущая сцена не разрешает сохранение; перейдите в другое место и попробуйте снова. Авторы разрешают его строкой `save_allowed: true` в заголовке одного из сценариев сцены.
|
||||
3. **Панель открывается пустой.** Моду панели пока нечего показывать в этой игре — например, задания ещё не начались.
|
||||
Reference in new issue
Block a user