Gossip menu option
Таблица gossip_menu_option
Таблица gossip_menu_option из базы данных world хранит пункты (опции) меню госсипа. Связывает gossip_menu.MenuID с наборами кнопок/действий: текст опции, флаги, переход на другое меню, POI, заклинание и параметры подтверждения. Используется подсистемой Gossip; поведение отдельных полей зависит от реализации ядра.
| Field | Type | Attributes | Key | Null | Default | Extra |
|---|---|---|---|---|---|---|
| MenuID | int | UNSIGNED | PRIMARY | NO | 0 | |
| GossipOptionID | int | NO | 0 | |||
| OptionID | int | UNSIGNED | PRIMARY | NO | 0 | |
| OptionNpc | tinyint | UNSIGNED | NO | 0 | ||
| OptionText | mediumtext | CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci | YES | |||
| OptionBroadcastTextID | int | UNSIGNED | NO | 0 | ||
| Language | int | UNSIGNED | NO | 0 | ||
| Flags | int | NO | 0 | |||
| ActionMenuID | int | UNSIGNED | NO | 0 | ||
| ActionPoiID | int | UNSIGNED | NO | 0 | ||
| GossipNpcOptionID | int | YES | NULL | |||
| BoxCoded | tinyint | UNSIGNED | NO | 0 | ||
| BoxMoney | bigint | UNSIGNED | NO | 0 | ||
| BoxText | mediumtext | CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci | YES | |||
| BoxBroadcastTextID | int | UNSIGNED | NO | 0 | ||
| SpellID | int | YES | NULL | |||
| OverrideIconID | int | YES | NULL | |||
| VerifiedBuild | int | NO | 0 |
MenuID
ID меню, к которому относится опция. Ссылается на gossip_menu.MenuID и задаёт группу опций.
Пример: 10000
GossipOptionID
Дополнительный идентификатор опции госсипа. Используется ядром как служебный ID опции (например, для привязки к данным клиента/логике), конкретное назначение зависит от реализации.
Пример: 1
OptionID
ID опции внутри меню. Используется как ключ (в паре с MenuID) для уникальной идентификации пункта и для ссылок из локализаций/условий (зависит от реализации).
Пример: 0
OptionNpc
Параметр, связанный с типом/обработчиком опции для NPC. Используется ядром при обработке выбора пункта; конкретные значения зависят от реализации.
Пример: 1
OptionText
Текст, отображаемый на кнопке опции. Может быть NULL, если текст берётся из OptionBroadcastTextID или формируется ядром.
Пример: "Покажи товары"
OptionBroadcastTextID
ID BroadcastText для текста опции. Используется как альтернативный источник текста для OptionText; конкретная таблица/источник BroadcastText зависит от реализации ядра.
Пример: 12345
Language
ID языка/локали для опции. Используется ядром для требований/отображения, когда опция зависит от языка; конкретные значения зависят от реализации.
Пример: 0
Flags
Флаги опции. По назначению поля это набор флагов (обычно битовая маска); какие биты используются и как — зависит от реализации ядра.
Пример: 5
ActionMenuID
ID меню, которое нужно открыть при выборе этой опции. Обычно ссылается на gossip_menu.MenuID; если 0 — перехода может не быть (зависит от реализации).
Пример: 10001
ActionPoiID
ID точки интереса (POI), связанной с опцией. Ядро может использовать это значение для показа маркера/указателя на карте; конкретная связь зависит от реализации.
Пример: 77
GossipNpcOptionID
Дополнительный ID опции, связанный с NPC. Поле допускает NULL; назначение и источник значения зависят от реализации ядра.
Пример: 12
BoxCoded
Флаг использования окна подтверждения/ввода для опции. Конкретное поведение (тип ввода, проверка, шифрование/маскировка) зависит от реализации ядра.
Пример: 1
BoxMoney
Стоимость (деньги) для подтверждаемого действия. Используется вместе с BoxText/BoxBroadcastTextID, если опция требует оплаты; единицы и логика зависят от реализации.
Пример: 10000
BoxText
Текст окна подтверждения/подсказки для опции. Может быть NULL, если текст берётся из BoxBroadcastTextID или формируется ядром.
Пример: "Заплатить за услугу?"
BoxBroadcastTextID
ID BroadcastText для текста окна подтверждения. Используется как альтернативный источник текста для BoxText; конкретная таблица/источник BroadcastText зависит от реализации ядра.
Пример: 54321
SpellID
ID заклинания, связанного с опцией. Поле допускает NULL; как именно используется (каст/проверка/триггер) зависит от реализации ядра.
Пример: 20577
OverrideIconID
ID переопределения иконки для опции. Поле допускает NULL; источник иконок и применение зависят от реализации ядра/клиента.
Пример: 123
VerifiedBuild
Номер билда, в котором запись была проверена/подтверждена. Служебное поле качества данных; влияние на логику зависит от реализации ядра.
Пример: 0