Форум HeroesWorld-а - Показать сообщение отдельно - Скрипты
Тема: Скрипты
Показать сообщение отдельно
#2599
Старый 11.03.2018, 12:03
  #2599
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 551
Выставка наград
Регистрация: 08.09.2013
Сообщения: 551
Выставка наград
По умолчанию
Re: Скрипты

Как сделать такие диалоговые сообщения, как на карте "Путь героя", к примеру.
Вот цитата с одного из форумов, где один из сотрудников Нивала рассказывал об изменениях в патче 3.1:
TalkBoxForPlayers( playersFilter, iconRef, iconTooltipRef, textRef, addTextRef, callback, mode, titleTextRef, selectTextRef, defaultOption, optionTextRef [, optionTextRef, ...] )
- открывает для выбранных игроков (playersFilter) диалог с несколькими вариантами ответа (от 1 до 5)
- функция не выдаёт сообщений об ошибке т.к. если параметры не верны, то используются значения по-умолчанию
- iconRef - ссылка на текстуру иконки
- iconTooltipRef - путь к тексту тултипа иконки
- textRef - путь к тексту диалога
- addTextRef - путь к тексту диалога (дополнительному)
- сallback - строка с именем lua-функции, через первый параметр которой сообщается ответ игрока (число: 0 - отмена, -1 - закрыт игрой, 1.. - номер выбранного игроком ответа)
- mode - режим: 0 - с кнопкой ОК, 1 - ОК/Закрыть
- titleTextRef - путь к тексту заголовка окна
- selectTextRef - путь к тексту заголовка перед опциями выбора
- defaultOption - номер ответа, подсвеченного по-умолчанию (число: 0 - нет, 1.. - номер ответа)
- optionTextRef - путь к тексту ответа № 1
- ... - путь к тексту ответа № ...

Пример:
s = 'Text/Chest/Choose.txt'
TalkBoxForPlayers( PLAYERFLT_1, nil,s, s,s, 'test1', 0, s,s, 0, s,s,s )

Внимание! В локализованных версиях патча отсутствует один необходимый текстовый файл, требуемый для корректной работы TalkBoxForPlayers. Его можно просто создать:

Файл: UI/CommonBoxes/TalkBox/Text.txt
Содержание: (h5)(color_bright)(value=text) (вместо обычных скобок угловые)
Формат файла: plain Unicode text (в NOTEPAD сохранить как Unicode)

Данный файл рекомендуется распространять в составе архивов карт, которые используют TalkBoxForPlayers.

Второй вариант — сделать специальный мод, который содержал бы данный файл и требовать присутствие мода для работы карты (распространять вместе).
Jack_of_shadows вне форума
Ответить с цитированием