Аналог опкода 0B3B
sampShowDialog(int id, zstring caption, zstring text, zstring button1, zstring button2, int style)
Показывает игроку диалоговое окно
int id
id диалога
zstring caption
заголовок окна
zstring text
текст самого диалога. Можно использовать \n для перевода строки и \t для табуляции
zstring button1
название первой (левой) кнопки диалога
zstring button2
название второй (правой) кнопки диалога
int style
стиль диалогового окна (0-5)
Отсутствует.
lua_thread.create(function() -- Нужен для цикла (while на 3-й строке)
sampShowDialog(6405, "Список", "Россия\nУкраина\nБелоруссия", "Выбрать", "Отмена", 2) -- Показываем диалог
while sampIsDialogActive(6405) do wait(100) end -- Ожидание закрытия диалога
local _, button, list, _ = sampHasDialogRespond(6405) -- Получаем ответ на диалог
if button == 1 then -- Если нажата 1-я кнопка ("Выбрать"), тогда
if list == 0 then
sampAddChatMessage("Вы выбрали Россию",-1)
elseif list == 1 then
sampAddChatMessage("Вы выбрали Украину",-1)
elseif list == 2 then
sampAddChatMessage("Вы выбрали Белорусию",-1)
end
else -- Если нажата 2-я кнопка ("Отмена"), тогда
sampAddChatMessage('Вы нажали кнопку "Отмена"',-1)
end
end)
lua_thread.create(function() -- Нужен для цикла (while на 3-й строке)
sampShowDialog(6406, "Ввод текста", "Я еду в Сочи, поздравьте меня", "ОК", "Отмена", DIALOG_STYLE_INPUT) -- Пример с инпутом
while sampIsDialogActive(6406) do wait(100) end -- Ожидание закрытия диалога
local result, button, _, input = sampHasDialogRespond(6406)
sampAddChatMessage("Содержимое диалога - " .. input, -1)
end)