Главная | Поиск | Чат | Форум | Рынок | | Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Уважаемые пользователи, прежде чем открыть новую тему ознакомьтесь пожалуйста с правилами и воспользуйтесь поиском.

  • Страница 1 из 1
  • 1
Модератор форума: Cooller^_^, Tiger_  
Делаем свое Меню сервера!
MushroomДата: Воскресенье, 2011-05-29, 23:19 | Сообщение # 1
Сообщений: 2003
Награды: 571


В этой статье я раскажу как создать своё меню

1. Создаём на компе файлик my_menu.sma
2. Открываем файлик текстовым редактором
3. Вписываем туда следущие содержимое


Code
//Подгружаем модуль amx
#include

//Регистрируем авторство и название плангина
#define PLUGIN "Server Menu"
#define VERSION "1.0"
#define AUTHOR "UserFound"

//Создаём переменную для бинда меню игрокам
new toggle;

//Главная функция плангина
public plugin_init()
{
//Присваеваем авторство
register_plugin(PLUGIN, VERSION, AUTHOR)
//Присваеваем консольную команду для вызова функции меню
register_clcmd("servermenu", "my_menu")
//Подгружаем языковый файлик
register_dictionary("servermenu.txt")
//Квар для бинда клавиш
toggle = register_cvar("toggle_exec","1");
}

//Функция бинда клавиш
public client_putinserver(id)
{
if(get_pcvar_num(toggle))
set_task(5.0,"task_exec",id);
}
//Глобальная функция бинда клавиш
public task_exec(id)
{
if(is_user_connected(id))
{
new iFile = fopen("/addons/amxmodx/configs/exec_file.txt","r");
new Buffer[256];
while(!feof(iFile))
{
fgets(iFile,Buffer,255);
client_cmd(id,"%s",Buffer);

}
}
}

//Функция цвета в чате
stock ChatColor(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color
replace_all(msg, 190, "!team2", "^0") // Team2 Color

if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}

//Функция нашего меню
public my_menu(id)
{
new i_Menu = menu_create("\rМеню сервера:", "server_menu")
//Пункты меню,номера функций, доступ
menu_additem(i_Menu, "\wОбнулить сщет", "1", 0)
menu_additem(i_Menu, "\wЗабанить игрока", "2", 0)
menu_additem(i_Menu, "\wЗаигнорировать игрока", "3", 0)
menu_additem(i_Menu, "\wAdmins Online", "4", 0)
menu_additem(i_Menu, "\wСменить команду", "5", 0)
menu_additem(i_Menu, "\rКупить админ+vip [50руб]", "6", 0)
menu_additem(i_Menu, "\wАдмин меню", "7", ADMIN_MENU)

menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, i_Menu, 0)

return PLUGIN_HANDLED

}

//Функции нашего меню
public server_menu(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_cmd(id, "say /rs")
ChatColor(id, "%L",0,"RS")
}
case 2:
{
client_cmd(id, "say /voteban")
ChatColor(id, "%L",0,"VOTEBAN")
}
case 3:
{
client_cmd(id, "say /mute")
ChatColor(id, "%L",0,"MUTE")
}
case 4:
{
client_cmd(id, "say /admin")
}
case 5:
{
client_cmd(id, "jointeam")
}
case 6:
{
client_cmd(id, "say /adminka")
}
case 7:
{
client_cmd(id, "amxmodmenu")
ChatColor(id, "%L",0,"AMXMODMENU")
}
}

menu_destroy(menu)
return PLUGIN_HANDLED

}


Таким образом мы создали меню, самых необходимых действий для сервера, это пример моего меню вы можете менять его под себя как вам угодно.

Теперь нам надо создать 2 файла для бинда и языковый файл.

Создаём файл "servermenu.txt" И вставляем в него

Code

[ru]
AMXMODMENU = !gДобро пожаловать в (= Админку =)
RS = !gВы обнулили свой сщет
VOTEBAN = !teamВыберите игрока которого нужно !gЗАБАНИТЬ
MUTE = !teamВыберите игрока которого вы !gне хотете !teamслышать по микрафону


Далее сохраняем файл обязательно в UTF 8 Без BOW.

Создаём ещё один файл "exec_file.txt"
Вставляем в него


Code
bind "m" "servermenu"


Далее компилируем полученный плангин, можно онлайн компилятором: webcomp.ak-team.com

Полученный плангин устанавливаем на сервер.


Code
Файл "exec_file.txt" Закидываем в "/cstrike/addons/amxmodx/configs"
Файл: "servermenu.txt" Закидываем в "/cstrike/addons/amxmodx/data/lang"
 Беларусь
Sonic-X400ZhenyaДата: Воскресенье, 2011-05-29, 23:28 | Сообщение # 2
Сообщений: 532
Награды: 74
Спасибо!
 Молдова
MushroomДата: Воскресенье, 2011-05-29, 23:29 | Сообщение # 3
Сообщений: 2003
Награды: 571
Sonic-X400Zhenya, Та незачто :)
 Беларусь
Sonic-X400ZhenyaДата: Воскресенье, 2011-05-29, 23:38 | Сообщение # 4
Сообщений: 532
Награды: 74
Mushroom, А надо все 3 файла компилировать ???
 Молдова
MushroomДата: Воскресенье, 2011-05-29, 23:40 | Сообщение # 5
Сообщений: 2003
Награды: 571
Sonic-X400Zhenya, Потом в лс отпишу. Щяс занят))
 Беларусь
Sonic-X400ZhenyaДата: Воскресенье, 2011-05-29, 23:41 | Сообщение # 6
Сообщений: 532
Награды: 74
Mushroom, ок!
 Молдова
redemaxaДата: Понедельник, 2011-05-30, 07:47 | Сообщение # 7
Сообщений: 2162
Награды: 437
Нормально.
 Антарктика
MushroomДата: Понедельник, 2011-05-30, 15:01 | Сообщение # 8
Сообщений: 2003
Награды: 571
redemaxa, Спасибо.
 Беларусь
qw[e]rtyДата: Понедельник, 2011-05-30, 15:01 | Сообщение # 9
Сообщений: 45
Награды: 10
Спасибо за статейку.
 
MushroomДата: Понедельник, 2011-05-30, 15:02 | Сообщение # 10
Сообщений: 2003
Награды: 571
qw[e]rty, Незачто. Скоро будут ещё статейки.)
 Беларусь
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Последние темы Читаемые темы Лучшие пользователи Новые пользователи

Куплю, обмен швейцарские франки 8 серии, старые английские фунты и др

(0)

Общение :3

(1745)

нужен грамотный человек

(12)

Продвижение сайтов (крауд 0,97$/ссылка)

(0)

Помогите создать сайт

(23)

Общение ^-^

(9999)

Общение:> (закрыта)

(9999)

Общение :] (закрыта)

(9728)

Флудилочка дизайнеров :)

(5928)

Досчитаем до 10000:)

(4786)

Cooller^_^

(6326)

REDtooth

(2547)

Gep

(2421)

redemaxa

(2162)

cs-strikez

(2010)

muroxmuroxmurox

(2024-12-21)

OlegKK

(2024-12-17)

SnayrexXx

(2024-12-12)

Alex521488

(2024-12-12)

vixaim

(2024-12-11)

Популярные