Большинство игроков абсолютно не знают о том, что можно пользоваться специальным(вспомогательным) меню игры и тем более его изменять. Это меню специально предложено разработчиками игры для изменения. Вызывается консольной командой "+commandmenu", по умолчанию эта команда присвоена клавише "H". Структура меню храниться в файле, "commandmenu.txt", также в этом файле можно найти и правила описания меню, но тем не менее рассмотрим основные аспекты его создания/изменения.
Допустимые структуры документа могут выглядеть следующим образом:
"KEY" "KEY_TEXT" "COMMAND"
Например:
Код:
"1" "Move Forvard" "+forward"
Здесь "KEY" - клавиша активизации, "KEY_TEXT" - название пункта меню(если название пункта заключить в апострофы ('), то все буквы будут преобразованы в большие), "COMMAND" - команда консоли.
Такая структура меню может быть изменена замещением части "COMMAND" фигурные скобки. В этом случае будет создано подменю, содержание которого надо описать в фигурных скобках. Например:
Код:
"S" "Say Team"
{
"1" "Go go go!" "say_team Go go go!"
"2" "Need Backup" "say_team Need backup"
}
Каждый пункт подменю может содержать в себе другие подменю и т.д. Вполне естественно, что на создаваемое меню наложены ограничения, правда взглянув на них, можно сказать, что их нет.
Максимальное количество подменю - 40.
Максимальное количество пунктов в меню - 100.
Условия отображения
Каждому пункту меню, будь то простой пункт или содержащий в себе другие подменю, можно задать условие для отображения. Естественно, что он будет отображаться в меню только в том случае, если условие верно. Такое условие задается непосредственно перед определением меню.
"Условие" "KEY" "KEY_TEXT" "COMMAND"
Пример:
Код:
MAP de_dust "S" "Say Team"
{
"1" "Drop bomb" "say_team Drop bomb"
"2" "I have bomb" "say_team I have bomb"
}
MAP cs_italy "S" "Say Team"
{
"1" "Kill all hostage" "say_team Kill all hostage"
"2" "Turn off radio" "say_team Turn off radio"
}
На de_dust меню будет выглядеть так:
На cs_italy:
а на других картах меню не будет видно
Вот что у меня получилось:
Код:
"1" "Game"
{
"1" "Timeleft" "timeleft"
"2" "Reconnect" "reconnect"
"3" "config"
{
"1" "Emka.cfg" "exec emka.cfg"
}
}
"2" "Adminko"
{
"1" "Restart" "amx_rr 1"
"2" "Slapmenu" "amx_slapmenu"
"3" "Kickmenu" "amx_kickmenu"
"4" "Banmenu" "amx_banmenu"
"5" "teleportmenu" "amx_teleportmenu"
"6" "Votemap"
{
"1" "de_dust2 de_inferno de_nuke" "amx_votemap de_dust2 de_inferno de_nuke"
"2" "de_dust2" "amx_votemap de_dust2"
"3" "de_inferno" "amx_votemap de_inferno"
"4" "de_nuke" "amx_votemap de_nuke"
"5" "Change map?" "amx_vote Change_map? da net"
}
"3" "Message"
{
"1" "Spectators" "amx_csay Spectators go play or kick"
"2" "Mat" "amx_csay Mat i oskarblenuya zapresheni!"
"3" "Go" "amx_csay GO!GO!GO!"
}
}
"3" "EXIT" "slot10"
Полезная вещичка для админов