Создание менюшек :) - Форум - Клан RUSSS - Описание сайта



[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: РАдик  
Форум » Журнал » Counter Strike » Создание менюшек :)
Создание менюшек :)
DIMONДата: Воскресенье, 05.07.2009, 16:43 | Сообщение # 1

Сержант


Группа: Admin

Сообщений: 55
Награды: 2
« 3 »

Статус:
YAHOO:37
Процесс создания игровых меню не очень сложный, НО ВАМ НУЖНЫ ХОТЬ КАКИЕТО НАВЫКИ РАБОТЫ с павно (прочитайте как создать свой плагин)..

Итак... если навики у вас есть - приступим..
Сначала нада создать переменную, в которую поместим информацию об меню:
#include <amxmodx>
new menu // оглашаем новую переменную

public plugin_init()
{
register_plugin("Menu Test","1.0","Empower");
menu = menu_create("Крутая менюшка","func_menu"); // помещяем информацию

}

Мы зделали меню с названием крутая менюшка, и которая вызываеться в функции func_menu.

Теперь создадим пункты меню, от 1 до 3, например...
#include <amxmodx>
new menu

public plugin_init()
{
register_plugin("Menu Test","1.0","Empower");
menu = menu_create("Крутая менюшка","func_menu");
menu_additem( menu,"Сказать привет") // таким образом, можна добавить пункты
menu_additem( menu,"выйти с игры")
menu_additem( menu,"умереть")
}

Вот так наше меню будет выглядеть в игре:
Сказать привет
выйти с игры
умереть
Пунктов меню может быть до десясяти. Ето от 1 до 9 и в конце ноль..

А теперь попробуем зделать еще 1 станицу в меню:
#include <amxmodx>
new menu

public plugin_init()
{
register_plugin("Menu Test","1.0","Empower");
menu = menu_create("Крутая менюшка","func_menu");
menu_additem( menu,"Сказать привет")
menu_additem( menu,"выйти с игры")
menu_additem( menu,"умереть")

menu_setprop( menu,MPROP_PERPAGE, 3) // здесь писать скоко пукнтов на одной странице у нас ето 3

menu_additem( menu,"Остойденитса")
menu_additem( menu,"открыть amxmodx меню")
}

Мы поставили 3 пункта меню на страницу (MPROP_PERPAGE) , значит когда в коде будет 3 пункта меню - четвертый автоматом добавитса на след. страницу.
Далее, надо зделать чтоб меню работали... (покачто мы зделали только текст) и ничего происходить не будет при их использывании:
#include <amxmodx>
new menu

public plugin_init()
{
register_plugin("Menu Test","1.0","Empower");
menu = menu_create("Крутая менюшка","func_menu");
menu_additem( menu,"Сказать привет")
menu_additem( menu,"выйти с игры")
menu_additem( menu,"умереть")
menu_setprop( menu,MPROP_PERPAGE, 3)
menu_additem( menu,"Остойденитса")
menu_additem( menu,"открыть amxmodx меню")
}

public func_menu(id, menu, key) //функция меню всегда имеет ИД игрока(id) , инфо по меню(menu)
// и кнопку(key) которую вы нажали. (ВСЕГДА надо его туда писать если более про100)
{
key++ // просто перепуйте ету строчку всегда

if(key==1) client_cmd(id,"say hi") //если нажатая кнопка 1, то игрок скажет hi
if(key==2) client_cmd(id,"quit") //если 2 - игрок выйдет
if(key==3) client_cmd(id,"kill") // 3 - игрок зделает самоубийство
if(key==4) client_cmd(id,"disconnect") // 4 - ето уже будет 1ый пунт на 2ой странице
if(key==5) client_cmd(id,"amxmodx") // 5 - откроетса amxmodx меню
}

Вот и готова наше меню ! Осталось показать его игроку, например когда он бует писать в консоль amx_menu...
#include <amxmodx>
new menu

public plugin_init()
{
register_plugin("Menu Test","1.0","Empower");
menu = menu_create("Крутая менюшка","func_menu");
menu_additem( menu,"Сказать привет")
menu_additem( menu,"выйти с игры")
menu_additem( menu,"умереть")
menu_setprop( menu,MPROP_PERPAGE, 3)
menu_additem( menu,"Остойденитса")
menu_additem( menu,"открыть amxmodx меню")

register_clcmd("amx_menu","go_menu"); // командой amx_menu будет запускатса фунция go_menu
}

public func_menu(id, menu, key)
{
key++

if(key==1) client_cmd(id,"say hi")
if(key==2) client_cmd(id,"quit")
if(key==3) client_cmd(id,"kill")
if(key==4) client_cmd(id,"disconnect")
if(key==5) client_cmd(id,"amxmodx")
}

public go_menu(id) // когда вызываетса функция go_menu, то
{
menu_display(id,menu) //показуем меню просто указывая игрока и перемeнную менюхи

return PLUGIN_HANDLED
}

Вот cамые основные функции для работы с меню:
Цитата
peremennaya = menu_create("Название меню","funckciya") // СОЗДАТЬ МЕНЮ

menu_additem( peremennaya,"Название пункта меню") // ДОБАВИТЬ ПУНКТ МЕНЮ

menu_addblank( peremennya,-1) // Добавить ПРОПУСК после пункта меню (пустая строка)

menu_display(id, peremennya) // ПОКАЗАТЬ МЕНЮ игроку

menu_setprop( menu,MPROP_PERPAGE, ЧИСЛО) // ЧИСЛО пунктов на страницу
//( ставь 0 если работаеш с 1 страницей)





 
Форум » Журнал » Counter Strike » Создание менюшек :)
  • Страница 1 из 1
  • 1
Поиск: