Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » AMX Mod X » Статьи / фрагменты кода » Создание меню с использованием под-меню
Создание меню с использованием под-меню
extazyДата: Суббота, 17.03.2012, 16:44 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 18
Репутация: 10000
Статус: Offline
#include <amxmodx>

public plugin_init()
{
register_clcmd( "my_menu","My_Menu")
}

public My_Menu(id)
{
new i_Menu = menu_create("\rMy menu:", "menu_handler")

menu_additem(i_Menu, "\wFirst option #1", "1", 0)
menu_additem(i_Menu, "\wSub-Menu #2", "2", 0)

menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, i_Menu, 0)
}

public menu_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)

new i_Key = str_to_num(s_Data)

switch(i_Key)
{
case 1:
{
client_print(id, print_chat, "You selected first option")
}
case 2:
{
// Открыть под-меню
Sub_Menu(id)
}
}

menu_destroy(menu)
return PLUGIN_HANDLED
}

public Sub_Menu(id)
{
// Создаем новое меню, но функция обработки действий будет другая
new i_Menu = menu_create("\rSub-Menu:", "submenu_handler")

menu_additem(i_Menu, "\wSub-option #1", "1", 0)
menu_additem(i_Menu, "\wSub-option #2", "2", 0)

menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, i_Menu, 0)
}

public submenu_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)

// Если игрок на сервере, то показываем главное меню
if (is_user_connected(id))
My_Menu(id)

return PLUGIN_HANDLED
}

new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)

new i_Key = str_to_num(s_Data)

switch(i_Key)
{
case 1:
{
client_print(id, print_chat, "You selected first sub-option")
}
case 2:
{
client_print(id, print_chat, "You selected second sub-option")
}
}

menu_destroy(menu)

// Если вы хотите показать главное меню потом
My_Menu(id)

return PLUGIN_HANDLED
}


Смотри, не получи бан!)
 
Форум » AMX Mod X » Статьи / фрагменты кода » Создание меню с использованием под-меню
  • Страница 1 из 1
  • 1
Поиск: