Создание диалога - Уроки - Уроки скриптинга в samp - Помощь по скриптингу SAMP
Вторник, 06.12.2016, 08:50
Приветствую Вас Гость | RSS

Samp Helped

Меню сайта

Категории раздела

Мини-чат

200

Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Уроки скриптинга в samp

Главная » Статьи » Уроки

Создание диалога
Функция:

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;
}  

вот так то текст будет по-русски:

Code


Вот паблик функции работы с ней:

[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 - возврат каретки
\' - одиночная кавычка
\" - двойные кавычки
\? - вопросительный знак

Категория: Уроки | Добавил: Style (13.05.2011)
Просмотров: 5850 | Комментарии: 4 | Рейтинг: 0.0/0
Всего комментариев: 3
3  
Дорова ребята ! Я тут зашел на один чёткий сервер вообще понравился ! Заходите поиграем !!! 95.188.96.38:7777 !!! Там еще админы Админки раздают бесплатно!

2  
}
}
}

Скобки сами появляются или писать надо?

1  
Что зоначает вот это?public OnPlayerCommandText(playerid,cmdtext[])
как это сделать?

Имя *:
Email *:
Код *: