Благими делами путь в Рай выстроен. Если надо будет, то напишу плагин, потому что я могу помочь человеку. И если тебя это как-то не устраивает, то молчи, ибо "Молчание - золото!".
BarD, ага погугли эту поговорку просветись, да пиши конечно зайди вон на известный сайт посомтри Запросы я думаю там будут рады))
Geny, в общем я не знаю что ты хочешь, вот я описал то что использовал сам и это все описывал WS видимо нужно еще раз написать чтобы понятн остало
Код
//Создаем главное меню MainMenu(client) { if(client > 0 && IsClientInGame(client) && IsPlayerAlive(client)) { new Handle:menu_main = CreateMenu(MainMenuHandle); AddMenuItem...//пункт1 AddMenuItem...//2 AddMenuItem...//3 .... DisplayMenu(menu_main, client, MENU_TIME_FOREVER);//показать меню без ограничение по времени на закрытие } } //исполняющая функция public MainMenuHandle(Handle:menu_main, MenuAction:action, client, slot) { if (action == MenuAction_End) { CloseHandle(menu_main); return; }
if (action != MenuAction_Select) return; if(client > 0 && IsClientInGame(client) && IsPlayerAlive(client)) { if (action == MenuAction_Select) { decl String:name[64]; if (GetMenuItem(menu_main, slot, name, sizeof(name))) //здесь получаем наименование того пункта который выбрали, т.е. если мы получили название пункта { }else//если иначе { if(menu_main != INVALID_HANDLE)//меню открыто { CloseHandle(menu_main);//Закрываем\убиваем menu_main = INVALID_HANDLE;//говорим Да действительно данное меню закрыто } } } //дальше можно поставит ьперключатель по пунктам switch(slot) { case 0: { //что делат ьесли выбрали первый пункт //допустим нам надо по нажатию этого пункта вывести меню //я этого не делал но наверное лучше перд этим убить главное меню CloseHandle(menu_main); SubMenuSlot1(client); } case 1: { //что делат ьесли выбрали второй пункт } .... } } }
//создаем второе меню SubMenuSlot1(client) { //тут все также как и при создании главного меню if(client > 0 && IsClientInGame(client) && IsPlayerAlive(client)) { new Handle:pMenu = CreateMenu(Sub_MenuSelect); SetMenuTitle(pMenu, "Название Второе меню"); //Добавлем пункты ..... //можно также добавить кнопку назад и описат ьчто будет если нжать на эту кнопку в меню SetMenuExitBackButton(pMenu, true); //false значит нет кнопки //показываем меню DisplayMenu(pMenu, client, MENU_TIME_FOREVER); } } //функции второго меню public Sub_MenuSelect(Handle:menu, MenuAction:action, client, option) { if (action == MenuAction_Cancel) { //если мы закрываем второе меню то возвращаемся в главное меню и прерываем выполение MainMenu(client); return; }else { if (action == MenuAction_End) { CloseHandle(menu); return; }else { if (action != MenuAction_Select) { return; }else { //если добавлена кнопка назад, то описываем что делат ьесли нажали на нее if (action == MenuEnd_ExitBack) { //выходим в главное меню MainMenu(client); return; } } }
} if (action == MenuAction_Select) { //тут также могут описаны действия при нажатии пунктов если они там есть } }
Благими намерениями вымощена дорога в ад — крылатое выражение в ряде языков, в частности, в русском и английском.
Фраза употребляется для обозначения случаев, когда попытки осуществления самых гуманных и благих задач приводят (по недальновидности, недосмотру, неумению и т.п.) к совершенно обратным и даже деструктивным последствиям.