Edwin
Мастер
Инклуд позволяет использовать вызов диалогового окна в форме:
ShowPlayerDialog(playerid, DIALOG_NAME, response, listitem, inputtext[]);
и вызывать DIALOG_NAME напрямую, обходя перебор dialogid.
При этом, DIALOG_NAME не требует объявления.
Все названия диалогов пишутся цифрами, либо буквами без пробелов и кавычек.
В процессор встроена защита от SQL-инъекции через inputtext путём замены всех символов '%' на '#'
Проверка символов происходит только в диалогах типа DIALOG_STYLE_INPUT/PASSWORD
Использование инклуда:
DLG:DIALOG_NAME(playerid, response, listitem, inputtext[])
DIALOG:DIALOG_NAME(playerid, response, listitem, inputtext[])
E_DLG:DIALOG_NAME()
GetPlayerDialogUse (playerid); // Получает id диалога, используемый игроком (0 - если диалог не используется)
ShowInfoDialog (playerid, caption[], info[]); // Информационное окно
Примеры использования:
PHP:
else if (strcmp("/dlg", cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid, D_TEST1, DIALOG_STYLE_MSGBOX, "Тестовый диалог", "{ffffff}Диалог {00ff00}№1 {ffffff}вызвался!", "Второй", "Закрыть");
return 1;
}
PHP:
DLG:D_TEST1(playerid, response, listitem, inputtext[])
{
if(!response) return 1;
return ShowPlayerDialog(playerid, D_TEST2, DIALOG_STYLE_MSGBOX, "Тестовый диалог", "{ffffff}Диалог {0000ff}№2 {ffffff}вызвался!", "Первый", "Закрыть");
}
DLG:D_TEST2(playerid, response, listitem, inputtext[])
{
if(!response) return 1;
return ShowPlayerDialog(playerid, D_TEST1, DIALOG_STYLE_MSGBOX, "Тестовый диалог", "{ffffff}Диалог {00ff00}№1 {ffffff}вызвался!", "Второй", "Закрыть");
}
Скачать:
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Автор: Edwin, то есть я. Копирование на других сайтах без подписи автора - подсудное дело
Последнее редактирование:
