extazy | Дата: Суббота, 17.03.2012, 16:44 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 18
Статус: 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 }
Смотри, не получи бан!)
|
|
| |