vert | Дата: Четверг, 20.09.2012, 14:56 | Сообщение # 1 |
PAWN
Группа: Пользователь
Сообщений: 422
Статус: Offline
| Функция: Code ShowPlayerDialog(playerid, dialogid, style, caption[], info[], button1[], button2[]);
Параметры: Code playerid, dialogid, style, caption[], info[], button1[], button2[]
dialogid: например 1-2-3-4-5... и т.д
Стили: 3 стиля диалогового окна. Стиль 1=DIALOG_STYLE_MSGBOX Стиль 2=DIALOG_STYLE_INPUT Стиль 3=DIALOG_STYLE_LIST
Примеры использования стилей: DIALOG_STYLE_MSGBOX(0) можно использовать для вывода сообщений. DIALOG_STYLE_INPUT(1) система регистрации и т.п. DIALOG_STYLE_LIST(2) Лист возможных опций
caption: Название диалога info: Текст в диалоговом окне button1: Первая кнопка например: Ок, Login button2: вторая кнопка .Пример:Cancel
Вот вам пример кода: Code if(strcmp(cmdtext, "/login", true) == 0) { new s[128]; new loginname[MAX_PLAYER_NAME]; GetPlayerName(playerid,loginname,MAX_PLAYER_NAME); format(s,sizeof(s),"Welcome again, %s!\n\nContiune to login!",loginname); ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Login Plase!",s,"Login","Cancel"); return 1; }
Bот так то текст будет по-русски: Code if(strcmp(cmdtext, "/login", true) == 0) { new s[128]; new loginname[MAX_PLAYER_NAME]; GetPlayerName(playerid,loginname,MAX_PLAYER_NAME); format(s,sizeof(s)," Здарова еще раз, %s!\n\n Зайди под своим ником!",loginname); ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT," Форма Логина!",s," Логин"," Отмена"); return 1; }
Вот паблик функции работы с ней: Code public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
Параметры: Code playerid, dialogid, response, listitem, inputtext[]
Сейчас расскажу здесь что означает: playerid: ну я думаю вы поняли что это ид игрок. dialogid: ид диалогового окна response: проверка нажал ли игрок на первую кнопку или на вторую listitem: если выбрали стиль окна DIALOG_STYLE_LIST ,то это будет выбор опции находящего в списке inputtext[] это то что игрок ввел в поле, например, в системе регистрации.
Пример диалогового окна на примере стиля DIALOG_STYLE_MSGBOX(0). Code public OnPlayerCommandText(playerid,cmdtext[]) { if(strcmp(cmdtext,"/okno",true)==0) {ShowPlayerDialog(playerid,0,DIALOG_STYLE_MSGBOX,"Заголовок","Текст информации","Кнопка1"," Кнопка2"); return 1;}return 0; }
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 0) { if(response) { //Здесь то что случится если игрок нажмет на кнопка1 } else { //А здесь если он нажмет кнопка2 } } }
В случае создание диалогового окна необходимо пользоватся: \b - backspae - забой \f- Form feed - перевод страницы \n - new line - новая строка \r - возврат каретки \' - одиночная кавычка \"- двойные кавычки \? - вопросительный знак
Источник: pawn-wiki.ru
|
|
| |