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

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

  • Страница 1 из 1
  • 1
Модератор форума: Cooller^_^, Tiger_  
Создаем меню сервера своими руками.
proffiДата: Воскресенье, 2011-07-17, 09:46 | Сообщение # 1
Сообщений: 766
Награды: 78
В этой статье будет рассказано как создать свое меню.

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


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

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

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

//Функция цвета в чате
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Купить админку", "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

}

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

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

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

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

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

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


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

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

На этом все. Автор не я.
 Российская Федерация
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Последние темы Читаемые темы Лучшие пользователи Новые пользователи

Общение :3

(1745)

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

(12)

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

(0)

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

(23)

Обучения криптотрейдингу

(0)

Общение ^-^

(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)

Популярные