Это интересно

Go-My

TeamSpeak Server

/ TeamSpeak Server TeamSpeak Viewer

Архивы

Август 2017 (1)
Май 2017 (1)
Апрель 2017 (1)
Март 2017 (56)
Июнь 2016 (1)
Декабрь 2015 (44)

Популярные

Наши Группы

Голосование

Чего не хватает на сайте?

Наша кнопка

Казахстанский Игровой Портал!

Друзья сайта

Реклама

Казахстанский Игровой Портал!

Создаём меню сервера своими руками

Добавил: Jonta|11 мар 2011|Просмотров: 2 700|Комментариев: 4
  • Не нравится
  • +16
  • Нравится
Создаём меню сервера своими руками

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

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



//Подгружаем модуль 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 {
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" И вставляем в него



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


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


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


bind "m" "servermenu"

Далее компилируем полученный плангин, можно онлайн компилятором:

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


Файл "exec_file.txt" Закидываем в "/cstrike/addons/amxmodx/configs"
Файл: "servermenu.txt" Закидываем в "/cstrike/addons/amxmodx/data/lang"

Категория: Статьи Cs 1.6
  • Нажмите на для того чтобы отправить Жалобу или уведомить Администратора о ошибке в новости.
№ 1 Написал: Kr1ezZ
11 марта 2011 14:08
  • комментариев
  • публикации
  • Статус: Пользователь offline
  • Должность: Юзер
  • |
  • На сайте с: 9.11.2010
    • Не нравится
    • 0
    • Нравится
5
  • E-mail:
№ 2 Написал: kill_7
24 марта 2011 19:15
  • комментария
  • публикации
  • Статус: Пользователь offline
  • Должность: Юзер
  • |
  • На сайте с: 16.09.2010
    • Не нравится
    • 0
    • Нравится
спс кульная статья полезная

пишет что ошибка и не компилирует
  • E-mail:
№ 3 Написал: Raim
3 апреля 2011 15:31
  • комментарий
  • публикации
  • Статус: Пользователь offline
  • Должность: Юзер
  • |
  • На сайте с: 3.11.2010
    • Не нравится
    • 0
    • Нравится
az

да тоже самое
  • E-mail:
№ 4 Написал: rzr
1 июля 2011 14:58
  • комментариев
  • публикации
  • Статус: Пользователь offline
  • Должность: Юзер
  • |
  • На сайте с: 2.06.2011
    • Не нравится
    • 0
    • Нравится
5 wink .
sps
  • E-mail:
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Казахстанский Игровой Портал!