 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
[Tutorial]Создание Диалогового окна
| |
| Dima-kun | Дата: Четверг, 29.10.2009, 22:47 | Сообщение # 1 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| Урок по созданию диалогового окна в sa-mp 0.3 Автор:BlackWolfA Перевод:DizeL[ZR] Функция: Code ShowPlayerDialog(playerid, dialogid, style, caption[], info[], button1[], button2[]); Параметры: Code playerid, dialogid, style, caption[], info[], button1[], button2[] dialogid: например 1-2-3-4-5... и т.д Стили: 3 стиля диалогового окна. Стиль 0=DIALOG_STYLE_MSGBOX Стиль 1=DIALOG_STYLE_INPUT Стиль 2=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 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). [pwn]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 } } }[/pwn] Вот Вам не большой пример скрипта.. Кстати да при использования диалогового окна в случае необходимости нужно пользоваться: \b - backspae - забой \f - Form feed - перевод страницы \n - new line - новая строка \r - возврат каретки \t - табуляция \v - вертикальная табуляция \' - одиночная кавычка \" - двойные кавычки \? - вопросительный знак
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
Сообщение отредактировал DizeL-ZR- - Пятница, 30.10.2009, 15:20 |
| |
|
|
| Dima-kun | Дата: Суббота, 12.12.2009, 12:19 | Сообщение # 16 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| Sane4ek, урок для кого? почитай. попробуй, постарайся
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| Alan_Wake | Дата: Воскресенье, 20.12.2009, 15:39 | Сообщение # 17 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 296
Награды: 2
Город: Санкт-Петербург
Репутация: 38
Замечания: 0%
Статус: 
| Так всётаки, как сделать с DIALOG_STYLE_LIST , мне помочь никто не хочет?
F.A.Q "Создание шлагбаумов"
likext.com -все самое интересное из мира спорта
|
| |
|
|
| Dima-kun | Дата: Воскресенье, 20.12.2009, 20:28 | Сообщение # 18 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| ты разделяй каждый пункт \n
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| Dima-kun | Дата: Воскресенье, 20.12.2009, 20:54 | Сообщение # 19 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| Quote (Alan_Wake) if(response) return 1; ты сделал чтобы при при нажатии на кнопку "Выбрать" у тебя ничего не срабатывало... if(!response) return 1;
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| Dima-kun | Дата: Воскресенье, 20.12.2009, 21:15 | Сообщение # 20 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| [offtop] Alan_Wake, незачто.[/offtop]
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| Antivirus | Дата: Понедельник, 21.12.2009, 01:00 | Сообщение # 21 |
|
Группа:
Продвинутые
Сообщений: 735
Награды: 13
Город: Мамбо
Репутация: 60
Замечания: 40%
Статус: 
| а что нужно вставить если треюуеться отмена ? например - тут я сам вставлю что надо//Здесь то что случится если игрок нажмет на кнопка1 } else { что вставить сюда , чтобы меню исчезло при выборе ?//А здесь если он нажмет кнопка2 } } }
|
| |
|
|
| Dima-kun | Дата: Понедельник, 21.12.2009, 15:04 | Сообщение # 22 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| Antivirus, if(response) { // } else if(!response) { // } [offtop]З.ы, ты мне с NPC не ответил[/offtop]
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| Dima-kun | Дата: Четверг, 31.12.2009, 15:20 | Сообщение # 23 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| во-первых у тебяскобки не все были закрыты, иды диалоговых не прально присвоены услвоие фс это или ГМ не закрыл. в общем не прально сделал.. вот те пральный вариант [pwn]// This is a comment // uncomment the line below if you want to write a filterscript //#define FILTERSCRIPT #include <a_samp> #define DIALOGID 5009 #pragma tabsize 0 #if defined FILTERSCRIPT public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Filterscript by WaRik"); print("--------------------------------------\n"); return 1; } public OnFilterScriptExit() { return 1; } #else public OnGameModeInit() { } #endif public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/stilefight", cmdtext, true, 10) == 0) { ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, " Меню стилей боя", " Стиль Бокса\n Стиль Кунгфу\n Стиль KNEEHEAD\n Стиль GRABKICK\n Стиль ELBOW\n Стиль NORMAL", "OK", " Отмена"); } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid ==1) { if(response) { if(listitem == 0) { SetPlayerSpecialAction (playerid, FIGHT_STYLE_BOXING ); SendClientMessage(playerid, 0xFFFFFFAA, "Ты выбрал стиль бокса "); } if(listitem == 1) { SetPlayerSpecialAction (playerid, FIGHT_STYLE_KUNGFU ); SendClientMessage(playerid, 0xFFFFFFAA, "Ты выбрал стиль кунгфу"); } if(listitem == 2) { SetPlayerSpecialAction (playerid, FIGHT_STYLE_KNEEHEAD ); SendClientMessage(playerid, 0xFFFFFFAA, "Ты выбрал стиль KNEEHEAD"); } if(listitem == 3) { SetPlayerSpecialAction (playerid, FIGHT_STYLE_GRABKICK ); SendClientMessage(playerid, 0xFFFFFFAA, "Ты выбрал стиль GRABKICK"); } if(listitem == 4) { SetPlayerSpecialAction (playerid, FIGHT_STYLE_ELBOW ); SendClientMessage(playerid, 0xFFFFFFAA, "Ты выбрал стиль ELBOW"); } if(listitem == 5) { SetPlayerSpecialAction (playerid, FIGHT_STYLE_NORMAL ); SendClientMessage(playerid, 0xFFFFFFAA, "Ты выбрал стиль NORMAL"); } } return 1; } return 0; } [/pwn]
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| W@R | Дата: Четверг, 31.12.2009, 15:36 | Сообщение # 24 |
|
Постоялец
Группа:
Пользователи
Сообщений: 335
Награды: 3
Город: а.k.a ЕкБ_ЮЗ
Репутация: 51
Замечания: 20%
Статус: 
| не можешь для PEN1 регу выложить , тож пытался сделать не получается
Translation from english to russian Ravens_Roleplay_v3 (RC5.2) - 0.3c--------15%
|
| |
|
|
| Dima-kun | Дата: Четверг, 31.12.2009, 15:44 | Сообщение # 25 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| W@R, почитай уроки для того чтобы сделать диалоги для гф ... тож самое для Пен..
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| W@R | Дата: Четверг, 31.12.2009, 15:56 | Сообщение # 26 |
|
Постоялец
Группа:
Пользователи
Сообщений: 335
Награды: 3
Город: а.k.a ЕкБ_ЮЗ
Репутация: 51
Замечания: 20%
Статус: 
| я именно от туда и пытался  Добавлено (31.12.2009, 15:56) --------------------------------------------- DizeL-ZR, в выборе стилей боя получилось почему то что чел начинает танцевать xDDD
Translation from english to russian Ravens_Roleplay_v3 (RC5.2) - 0.3c--------15%
|
| |
|
|
| W@R | Дата: Четверг, 31.12.2009, 16:07 | Сообщение # 27 |
|
Постоялец
Группа:
Пользователи
Сообщений: 335
Награды: 3
Город: а.k.a ЕкБ_ЮЗ
Репутация: 51
Замечания: 20%
Статус: 
| спасиб , а чё почему у меня танцевать чел то начинает а не стиль выбирается xD
Translation from english to russian Ravens_Roleplay_v3 (RC5.2) - 0.3c--------15%
|
| |
|
|
| Dima-kun | Дата: Четверг, 31.12.2009, 16:16 | Сообщение # 28 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| W@R, иды окон наверно совпали
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
| W@R | Дата: Четверг, 31.12.2009, 16:36 | Сообщение # 29 |
|
Постоялец
Группа:
Пользователи
Сообщений: 335
Награды: 3
Город: а.k.a ЕкБ_ЮЗ
Репутация: 51
Замечания: 20%
Статус: 
| у меня в мод вписан фс на анимации с танцами и всей лабудой через диалоговое окно , может чёт с ним путается
Translation from english to russian Ravens_Roleplay_v3 (RC5.2) - 0.3c--------15%
|
| |
|
|
| Dima-kun | Дата: Четверг, 31.12.2009, 16:42 | Сообщение # 30 |
|
Группа:
Разработчики
Сообщений: 6269
Награды: 72
Репутация: 3512
Замечания: 0%
Статус: 
| W@R, в полне возможно, так что вот что у тебя был косяк, дай другой ид.
Мои работы: [INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники, [FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos, [GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
|
| |
|
|
|
 |
|
 | |
| |
|