extazy | Дата: Суббота, 17.03.2012, 16:43 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 18
Статус: Offline
| #include <amxmodx> #include <fun>
public plugin_init() { // Клиентская команда для вызова меню register_clcmd("my_menu", "My_Menu") }
public My_Menu(id) { // Сперва необходимо создать переменную для меню, с которой мы будем взаимодействовать в дальнейшем new i_Menu = menu_create("\rPlayer menu:", "menu_handler")
// Необходимые переменные, которые понадобятся нам при выводе меню из игроков new s_Players[32], i_Num, i_Player
// Переменные для хранения информации об игроках new s_Name[32], s_Player[10]
// Получаем массив игроков get_players(s_Players, i_Num)
// Цикл по всем игрокам for (new i; i < i_Num; i++) { // Сохраняем текущего игрока в i_Player i_Player = s_Players[i]
// Получаем имя и ID игрока get_user_name(i_Player, s_Name, charsmax(s_Name)) num_to_str(i_Player, s_Player, charsmax(s_Player))
// Добавляем опцию по данному игроку menu_additem(i_Menu, s_Name, s_Player, 0)
}
// Мы сформировали меню из игроков, присутствующих на сервере, теперь выводим его 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)
// Получаем ID игрока, который был выбран в меню new i_Player = str_to_num(s_Data)
// Проверяем, если игрок живой if (is_user_alive(i_Player)) // Устанавливаем его здоровье в 100 HP set_user_health(i_Player, 100)
menu_destroy(menu) return PLUGIN_HANDLED }
Смотри, не получи бан!)
|
|
| |