 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Создание меню
| |
| HunterSK | Дата: Среда, 07.01.2009, 23:11 | Сообщение # 1 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| Плз выложите или напишите полное описание создания меню, а то в туторах не всё понятно что и куда..... елс можно, то вконце код всего меню.......
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
|
| |
|
|
| Ghost-X | Дата: Среда, 07.01.2009, 23:32 | Сообщение # 2 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус: 
| Меню в Pawnо Процесс создания скрипта с меню кажется для многих сложным. Однако, это не так. Сейчас я покажу вам, как создать простое меню. И в конце, у нас получится меню телепортации. Первые шаги создания меню Сначала мы должны создать меню. new Menu:teleportmenu;Теперь, когда мы создали переменную для хранения меню, создадим его в ней. teleportmenu = CreateMenu("Teleportmenu", 2, 200.0, 100.0, 150.0, 150.0);Теперь немного о параметрах функции CreateMenu. CreateMenu(title, columns, Float:x, Float:y, Float:col1width, Float:col2width);title: Здесь необходимо указать какое название будет иметь меню. columns: Число здесь определяет, сколько колонок будет в меню. Float:x: Heigth позиция меню. Float:y: Width позиция меню. Float:col1width: Ширина первой колонки. Float:col2width: Ширина второй колонки Добавление пунктов меню Теперь когда у нас есть меню, создадим пункты меню которые будут выбираться в нем: AddMenuItem(teleportmenu, 0, "LS"); AddMenuItem(teleportmenu, 0, "LS"); AddMenuItem(teleportmenu, 0, "SF"); AddMenuItem(teleportmenu, 0, "SF"); AddMenuItem(teleportmenu, 0, "LV"); AddMenuItem(teleportmenu, 0, "LV"); AddMenuItem(teleportmenu, 1, "Grove Street"); AddMenuItem(teleportmenu, 1, "Starfish Tower"); AddMenuItem(teleportmenu, 1, "Wheel Arch Angels"); AddMenuItem(teleportmenu, 1, "Jizzys"); AddMenuItem(teleportmenu, 1, "4Dragons"); AddMenuItem(teleportmenu, 1, "Cum-a-Lot");Параметры AddMenuItem: AddMenuItem(menuid, column, text);menuid: Menuid меню в которое вы хотите добавить пункт. column: Колонка меню, в которой должен быть показан этот пункт меню. text: Название пункта.
Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит. Хочешь остаться при своем мнении - держи его при себе.
Сообщение отредактировал GhostTT - Среда, 07.01.2009, 23:33 |
| |
|
|
| HunterSK | Дата: Среда, 07.01.2009, 23:34 | Сообщение # 3 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| GhostTT, ентот тутор у мну есть. я говорю полностью бы, хоть одна команда в мею бы работала бы сделать и что и куда вписывать
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
|
| |
|
|
| Ghost-X | Дата: Среда, 07.01.2009, 23:37 | Сообщение # 4 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус: 
| [pwn]#include #define COLOR_LIGHTRED 0xFF99AADD new Menu:m; public OnGameModeInit() { m = CreateMenu("Helper",1,50.0, 200.0,200.0,200.0); if (IsValidMenu(m)) { SetMenuColumnHeader(m, 0, "Helper"); AddMenuItem(m, 0, "Information"); AddMenuItem(m, 0, "Commands"); AddMenuItem(m, 0, "Rules"); AddMenuItem(m, 0, "Administration"); } } public OnGameModeExit() { if(IsValidMenu(m)) DestroyMenu(m); } public OnPlayerSelectedMenuRow(playerid, row) { new Menu:tmpMenu = GetPlayerMenu(playerid); if(tmpMenu == m) { if(row == 0) { //Здесь пишем что будет происходить при выборе 1 пункта меню SendClientMessage(playerid,COLOR_LIGHTRED,"Вы нуб"); ShowMenuForPlayer(m, playerid); return 1; } if(row == 1) { //Здесь пишем что будет происходить при выборе 2 пункта меню SendClientMessage(playerid,COLOR_LIGHTRED,"Вы нуб"); ShowMenuForPlayer(m, playerid); return 1; } if(row == 2) { //Здесь пишем что будет происходить при выборе 3 пункта меню SendClientMessage(playerid,COLOR_LIGHTRED,"Вы нуб"); ShowMenuForPlayer(m, playerid); return 1; } if(row == 3) { //Здесь пишем что будет происходить при выборе 4 пункта меню SendClientMessage(playerid,COLOR_LIGHTRED,"Вы нуб"); ShowMenuForPlayer(m, playerid); return 1; } ShowMenuForPlayer(m, playerid); return 1; } return 0; } public OnPlayerExitedMenu(playerid) { new Menu:tmpMenu = GetPlayerMenu(playerid); HideMenuForPlayer(tmpMenu,playerid); return TogglePlayerControllable(playerid,true); } public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/helper", true) == 0) { TogglePlayerControllable(playerid, 0); ShowMenuForPlayer(m, playerid); return 1; } return 0; } [/pwn]
Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит. Хочешь остаться при своем мнении - держи его при себе.
|
| |
|
|
| HunterSK | Дата: Среда, 07.01.2009, 23:40 | Сообщение # 5 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| GhostTT, О_о, другое дело. спс огромное, ща буду разбираться)
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
|
| |
|
|
| Ghost-X | Дата: Среда, 07.01.2009, 23:43 | Сообщение # 6 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус: 
| в данном случае создаем меню с переменной m. в начале мы пишим [pwn]new Menu:m;[/pwn] тем самым указываем что переменная m это меню. Далее в public OnGameModeInit() прописываем [pwn]m = CreateMenu("Helper",1,50.0, 200.0,200.0,200.0);[/pwn] тут мы уже создаем само меню и присваеваем его переменной m. P.S. Вместо Helper пиши свое название Далее идет добавление пунктов используя команду [pwn]AddMenuItem(m, 0, "Administration"); [/pwn] Далее в паблике: public OnPlayerSelectedMenuRow(playerid, row) прописываем действия при выборе того или иного пункта. Что идет дальше ты уже сам понял
Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит. Хочешь остаться при своем мнении - держи его при себе.
|
| |
|
|
| HunterSK | Дата: Четверг, 08.01.2009, 00:00 | Сообщение # 7 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| GhostTT, усё, получилось, терь буду едитать. жаль не могу ещё +1 поставить.
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
|
| |
|
|
| Ghost-X | Дата: Четверг, 08.01.2009, 00:51 | Сообщение # 8 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус: 
| HunterSK, спасибo было достаточно
Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит. Хочешь остаться при своем мнении - держи его при себе.
|
| |
|
|
| HunterSK | Дата: Четверг, 08.01.2009, 00:57 | Сообщение # 9 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| GhostTT, а вот терь внутри чтоб какойнить сторки было тож меню, над сново вводить переменную, новое меню создавать?
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
|
| |
|
|
| Ghost-X | Дата: Четверг, 08.01.2009, 01:13 | Сообщение # 10 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус: 
| Quote (HunterSK) GhostTT, а вот терь внутри чтоб какойнить сторки было тож меню, над сново вводить переменную, новое меню создавать? ara типа new Menu:m2, и птом типа у тя внутри 1го пункта меню, и пишешь [pwn]if(row == 0) { ShowMenuForPlayer(m2,playerid) }[/pwn]
Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит. Хочешь остаться при своем мнении - держи его при себе.
|
| |
|
|
| HunterSK | Дата: Четверг, 08.01.2009, 01:43 | Сообщение # 11 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| GhostTT, слыщь у мну павно ругаеться на ето public OnGameModeExit() { if(IsValidMenu(m)) DestroyMenu(m); } if(IsValidMenu(m2)) : error 010: invalid function or declaration DestroyMenu(m2); }
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
Сообщение отредактировал HunterSK - Четверг, 08.01.2009, 01:59 |
| |
|
|
| Ghost-X | Дата: Четверг, 08.01.2009, 02:03 | Сообщение # 12 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус: 
| HunterSK, прально, над было сначало у меня спросить! вообщето можешь это не писать и без него можно, но если хочешь [pwn]public OnGameModeExit() { if(IsValidMenu(m)) DestroyMenu(m); if(IsValidMenu(m2)) DestroyMenu(m2); } [/pwn]
Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит. Хочешь остаться при своем мнении - держи его при себе.
|
| |
|
|
| HunterSK | Дата: Четверг, 08.01.2009, 02:08 | Сообщение # 13 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| а как мне сделать чтоб во 2-ом меню при выборе пункта происходило действие?
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
Сообщение отредактировал HunterSK - Четверг, 08.01.2009, 02:25 |
| |
|
|
| Ghost-X | Дата: Четверг, 08.01.2009, 02:25 | Сообщение # 14 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус: 
| HunterSK, скажи что тебе нужно, я те сделаю сам лучше) Как я понял будет меню, в 1 пункте меню2, во 2 пункте чето происходит, в 3 тоже. В меню 2: в 1 пункте чтото, во 2 чето и в 3 чето.
Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит. Хочешь остаться при своем мнении - держи его при себе.
|
| |
|
|
| HunterSK | Дата: Четверг, 08.01.2009, 02:27 | Сообщение # 15 |
|
Новенький
Группа:
Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус: 
| GhostTT, кароче допёр и в 10 сообщении исправь [pwn]if(row == 0) { ShowMenuForPlayer(m2,playerid) } на if(row == 0) { ShowMenuForPlayer(m2,playerid); return 1; }[/pwn]
QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
Сообщение отредактировал HunterSK - Четверг, 08.01.2009, 02:38 |
| |
|
|
|
 |
|
 | |
| |
|