Главная
Статьи
Форум
Баннерообмен
Файловый хост
Гостевая
Рег-ция доменов
Видео GTA
Страница 1 из 11
Модератор форума: Dav1d[B]lane 
Форум о GTA Multiplayers. GTA SA-MP, MTA, VC-MP, IV-MP » SA:MP » Wiki-Samp » Меню на основе диалогового окна (ака меню сампа 0,3)
Меню на основе диалогового окна
Offline
Dav1d[B]lane
Дата: Понедельник, 04.01.2010, 19:55 | Сообщение # 1
Группа: Админ
Сообщений:
314
Награды: 12
Репутация: 667
сразу приведу пример
допустим нам нужно чтобы по команде /dh
вызывалось меню с 6 пунктами
в public OnPlayerCommandText(playerid,cmdtext[])
пихаем
Code

if(strcmp(cmd, "/dh", true) == 0)
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST, "НАЗВАНИЕ МЕНЮ","ПУНКТ 1\nПУНКТ 2\nПУНКТ 3\nПУНКТ 4\nПУНКТ 5\nПУНКТ 6","Выбрать","Выход");
return 1;
}

так ми создали само меню теперь перейдём к шагу где выполняются функции при нажатии на один из пунктов
проверяем мод на наличие public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[]) если его нету то пихаем в самый низ следующий код
Code

public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])
{
if(dialogid == 1) // ИД созданного меню в нашем случае это 1
{
if(response)
{
if(listitem == 0)
{
//Тут то что происходит при нажатии на ПУНКТ 1
}
if(listitem == 1)
{
//Тут то что происходит при нажатии на ПУНКТ 2
}
if(listitem == 2)
{
//Тут то что происходит при нажатии на ПУНКТ 3
}
if(listitem == 3)
{
//Тут то что происходит при нажатии на ПУНКТ 4
}
if(listitem == 4)
{
//Тут то что происходит при нажатии на ПУНКТ 5
}
if(listitem == 5)
{
//Тут то что происходит при нажатии на ПУНКТ 6
}
}
else
{
// Тут то что происходит при нажатии на кнопку Выход
}
}
return 1;
}

ну вот вроде как то так
Ну а если в моде есть public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])
то вставляем в него
Code

if(dialogid == 1) // ИД созданного меню в нашем случае это 1
{
if(response)
{
if(listitem == 0)
{
//Тут то что происходит при нажатии на ПУНКТ 1
}
if(listitem == 1)
{
//Тут то что происходит при нажатии на ПУНКТ 2
}
if(listitem == 2)
{
//Тут то что происходит при нажатии на ПУНКТ 3
}
if(listitem == 3)
{
//Тут то что происходит при нажатии на ПУНКТ 4
}
if(listitem == 4)
{
//Тут то что происходит при нажатии на ПУНКТ 5
}
if(listitem == 5)
{
//Тут то что происходит при нажатии на ПУНКТ 6
}
}
else
{
// Тут то что происходит при нажатии на кнопку Выход
}
}


- [GM]SATDM -
Current Release: SATDM 1.0
Development: SATDM 1.1b
Offline
Dav1d[B]lane
Дата: Понедельник, 04.01.2010, 20:02 | Сообщение # 2
Группа: Админ
Сообщений:
314
Награды: 12
Репутация: 667
P.S если что забыл написать дополните

- [GM]SATDM -
Current Release: SATDM 1.0
Development: SATDM 1.1b
Offline
Pro::killer
Дата: Воскресенье, 21.02.2010, 16:02 | Сообщение # 3
Группа: [DH]
Сообщений:
221
Награды: 5
Репутация: 25
Я чё-то непонимаю нефига ничего непроисходит "Тут то что происходит при нажатии на ПУНКТ 1" Я написал там готовую команду /credits а по нажатию в меню по ней ничего непоявляется...
P.S сама эта команда /credits без меню работает а в меню нехочет.. :(











Offline
Abibas
Дата: Воскресенье, 21.02.2010, 20:32 | Сообщение # 4
Группа: Админ
Сообщений:
141
Награды: 5
Репутация: 13
Pro::killer, ты саму функцию засунь, без всяких комманд и условий. допустим те надо чтоб там был текст в окне типа разработчик мода и т.п. то пиши так за место //Тут то что происходит при нажатии на ПУНКТ 1
Code
{  
ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX, "название окна","'этот мод ниписал йа ","Ок","Выход");
}




Offline
Pro::killer
Дата: Понедельник, 22.02.2010, 16:23 | Сообщение # 5
Группа: [DH]
Сообщений:
221
Награды: 5
Репутация: 25
спс=)










Offline
NOOB
Дата: Среда, 02.06.2010, 15:01 | Сообщение # 6
Группа: Пользователи
Сообщений:
1
Награды: 0
Репутация: 0
а как зделать диалог в диалоге?
тоесть
хочу зделать команду /givelicense в диалоге ну например пишу /givelicense выскакивает диалог выбера лицуху нажимаю ок опять выскакивает диалог и пишу ид игрока кому хочу продать лицуху
можете зделать пример плз а то не могу зделать((
Форум о GTA Multiplayers. GTA SA-MP, MTA, VC-MP, IV-MP » SA:MP » Wiki-Samp » Меню на основе диалогового окна (ака меню сампа 0,3)
Страница 1 из 11
Поиск:
Статистика форума
Лучшие по кол-ву сообщений Лучшие по репутации Лучшие по рангу MP3 Плеер
Dav1d[B]lane 314
Pro::killer 221
IIIu3uK 203
Abibas 141
[DH]MAXIMKA 89
NoNothing 54
KNIAZ 53
MYRZblJlKO 47
qurdo 46
VampDoz 38
Dav1d[B]lane 667
IIIu3uK 40
Pro::killer 25
Abibas 13
KNIAZ 12
qurdo 8
NoNothing 8
VampDoz 7
MYRZblJlKO 6
seregaGT 5
Dav1d[B]lane Генералиссимус
IIIu3uK Генерал-полковник
Pro::killer Полковник
Abibas Полковник
[DH]MAXIMKA Майор
NoNothing Лейтенант
KNIAZ Лейтенант
MYRZblJlKO Лейтенант
qurdo Лейтенант
devil_racer Сержант

Хостинг от uCoz GTAProClan.ru