Список форумов Из Лап Зла - CS 1.6 Server
ГлавнаяБаныРегистрацияПоискFAQПользователиГруппыВход
Меню
» Главная
» Сервера
» Админы
» Команда сайта
» Список банов
» Правила
» Форум
» Rss
» Награды
» Мониторинг серверов

» Статьи о CS
» Оглавление
» Наши сервера
» Софт
» Cs Info
» Amxx Plugins
» Интервью

 » [BanSubnets]
 » Список банов
 » Рег-я Ника

» Статистики:
» Public - Психостат
» Public Top15
» Predator Top15
» GunGame
» GunGame Top15
» Jump
» Jump Lj Stats
» Jump Duel top15
» Death Run
» New Hide And Seek

» Статистика карт:
» Public map's
» Predator map's
» GunGame map's
» Jump map's
» DeathRun map's
» HnS map's


Наш спонсор
Наш Провайдер

Реклама


Links

Из Лап Зла | CS Game server`s
Код нашей "кнопки"

Статистика серверов
Этот сайт защищен «Site Guard»
Рейтинг Counter-Strike сайтов. TOP.MY-CS.RU
Game's TOP-100 Counter
cs сервера
Монитор cs серверов
Cs.ozerki.net
Сервера CS 1.6
сервера cs 1.6
Статьи
Мониторинг серверов CS 1.6, сервера cs 1.6
Мониторинг игровых серверов

Мониторинг серверов CS 1.6
Серверы КС
Трассировка сервера CSТрассировка для CS 1.6
Яндекс цитирования




Попрошайка ;)
Мы это запомним ;)
ЯндексЯндекс. ДеньгиХочу такую же кнопку





Описание CommandMenu
Оглавление -> Общее о Counter Strike
Добавлено: Вт Дек 14, 2010 2:07 pm

Описание CommandMenu


    Приятного времени суток,

    Будем придерживаться плана, чтобы разложить все нюансы "по полочкам":
    I. Описание CommandMenu
    II. Необходимые программы и ограничения CommandMenu
    III. Алгоритм добавления пункта и пример меню
    IV. Некоторые стандартные консольные команды и их применение
    V. Заключение


I. CommandMenu (от англ. command - команда, menu - меню ) - командное меню, прописанное в файле commandmenu.txt, находящемся в папке cstrike. Вызывается клавишей 'H' (буква 'Р' на русской раскладке).
В этом меню могут быть записаны основные команды, необходимые во время игры, или специфические команды, присущие только нестандартным модам (Kreedz, DeathRun, Zombie Plague и т.д.)



На скриншоте видно, что CommandMenu имеет древовидное строение, то есть оно может быть многоуровневым.


II. Открыть, отредактировать или написать CommandMenu можно обыкновенным текстовым редактором.
Например, Notepad (для WinXP) и TextEdit (для MacOS).
Разумеется, что для проверки своего меню, вам понадобится Counter-Strike 1.6.

CommandMenu не обладает функцией прокрутки, а это значит, что существуют ограничения по количеству меню
и непосредственно пунктов в каждом из меню.
Эти ограничения приведены в самом commandmenu.txt:

1) Можно прописать 40 меню и в каждом из них может быть не больше 100 кнопок.

    // Limitations:
    // Maximum of 40 menus.
    // Maximum of 100 buttons per menu.

2) Пункты меню, отмеченные словом "CUSTOM" (основной), обрабатываются движком Half-Life по-особенному.
Их можно только переместить или удалить.

    // Buttons preceded with "CUSTOM" are handled on special ways. They can only be moved
    // around or deleted.

На этом ограничения CommandMenu заканчиваются.

Следует отметить, что все строчки, начинающиеся с // (slash), движком игры не обрабатываются вовсе.
Служат они по большей части пояснениями к командам или комментариями автора к меню (авторство, первоисточник, дата публикации и т.д.)


III. Переходим к самому интересному - добавлению пункта в меню и примеру из стандартного меню.

Пункт в меню добавляется по следующему алгоритму:

    // Basic Format:
    // "Bound Key" "Button Text" "Command sent to server"

1) Задаётся клавиша, которая будет активировать команду кнопки. ( Bound Key )
2) Задаётся название кнопки. ( Button Text )
3) Задаётся команда, посылаемая серверу клиентом (вами). ( Command sent to server )

Не будем сразу стараться составить наисложнейшие команды, выполняющие ряд действий.
Лучше сперва рассмотрим пример из стандартного commandmenu.txt:

    "1" "#Cstrike_HELP"
    {
    CUSTOM "1" "#Cstrike_Map_Desc" "!MAPBRIEFING"
    "2" "#Cstrike_Time_Left" "timeleft"
    "3" "#Cstrike_Adjust_Crosshair" "adjust_crosshair"
    "4" "#Cstrike_Use_Left_Hand" "cl_righthand 0"
    "5" "#Cstrike_Use_Right_Hand" "cl_righthand 1"
    }

1) Самая первая строка из примера создаёт пункт в меню, активируемый клавишой '1' с названием 'HELP' (помощь).
2) В примере хорошо видно, что все последующие команды заключены между двумя фигурными скобками { }.
Это было сделано для того, что бы пункт с названием 'HELP' открывал новое меню - новый уровень.
3) Вот мы и столкнулись с командой, обозначенной словом 'CUSTOM', значит этот пункт может быть либо перемещён, либо удалён. В данном случае эта команда имеет название 'Map Description' и при активации открывает пояснение к карте (Briefing).

Заметка: Удалять само слово 'CUSTOM' не следует, если вы, конечно, не хотите испортить меню, ну а если всё таки решились задать клавише '1' другую команду, то измените только название и команду пункта.

4) а) Клавише '2' присвоено имя 'Time Left'. Этот пункт посылает в консоль команду 'timeleft', которая в свою очередь показывает оставшееся до смены карты время.
б) Клавиша '3' носит название 'Adjust Crosshair' и выполняет задачу по изменению цвета прицела в игре.
в) Четвёртой клавише было присвоено имя 'Use Left Hand' и предписано изменять руку, в которой отображается оружие на левую.
г) Последней, пятой, клавише было присвоено имя 'Use Right Hand' и выполняет она команду, симметричную пункту 'в', то есть отображает оружие в правой руке.

Вы заметили, что названия пунктов в вышеприведённом меню начинаются с префикса #Cstrike и разделяются подчеркиванием? Зачем же это было сделано?
Дать общедоступный ответ на этот вопрос не просто.
Просто запомните: в ваших меню разделять названия подчёркиванием и ставить им префикс не нужно!


IV. Теперь мы знакомы с алгоритмом добавления пункта и знаем как создать многоуровневое меню (Пункт III).
Во втором пункте мы узнали, что все команды, прописанные в нашем меню, посылаются от нас к серверу.
Что это за команды?
По сути, это все консольные команды в Counter-Strike. Приводить список этих команд нет смысла, потому что данная статья посвящена CommandMenu, а не консольным командам Counter-Strike :)

Но стоит выделить список команд, используемых чаще всего:

    connect ip:port - подключиться к серверу (Пример: connect public.izlapzla.ru:27015)
    changeteam - сменить команду
    disconnect - отключиться от сервера
    drop - выкинуть оружие
    exec <filename> - загрузить конфиг (.cfg) (Пример: exec izLapzLa)
    reconnect / retry - переподключиться к серверу
    say - послать сообщение в общий чат (Пример: say Hello everybody, it's time to start the party!)
    say_team - послать сообщение в командный чат (Пример: say_team Up zz, please!)
    snapshot - сделать скриншот
    wait - задержка (Примерно равна 1/25 секунды)
    quit - выйти из игры

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




    "1" "#Cstrike_HELP"
    {
    CUSTOM "1" "#Cstrike_Map_Desc" "!MAPBRIEFING"
    "2" "#Cstrike_Time_Left" "timeleft"
    "3" "#Ctrike_Adjust_Crosshair" "adjust_crosshair"
    "4" "#Cstrike_Use_Left_Hand" "cl_righthand 0"
    "5" "#cstrike_Use_Right_Hand" "cl_righthand 1"
    }
    "2" "izLapzLa.ru Servers"
    {
    "1" "izLapzLa.ru >> Public" "connect public.izlapzla.ru:27015"
    "2" "izLapzLa.ru >> predator" "connect predator.izlapzla.ru:27016"
    "3" "izLapzLa.ru >> GunGame" "connect gungame.izlapzla.ru:27017"
    "4" "izLapzLa.ru >> Jump" "connect jump.izlapzla.ru:27019"
    "5" "izLapzLa.ru >> Zombie Plague" "connect zombie.izlapzla.ru:27020"
    "6" "izLapzLa.ru >> DeathRun" "connect run.izlapzla.ru:27021"
    "7" "izLapzLa.ru >> H'n'S" "connect hns.izlapzla.ru:27018"
    }
    "3" "Snapshot (HUD Off)" "hud_draw 0; wait; wait; wait; wait; wait; snapshot; wait; wait; wait; wait; wait; hud_draw 1"
    "4" "Quit Game" "quit"

Надеюсь, особенных сложностей в понимании команд не возникло.
Хочется только заострить ваше внимание на одном пункте в меню:

    "1" "Snapshot (HUD Off)" "hud_draw 0; wait; wait; wait; wait; wait; snapshot; wait; wait; wait; wait; wait; hud_draw 1"

Здесь я использовал последовательность команд, чтобы сделать скриншот без HUD-текста.
Сначала я создал пункт в меню, задав клавише '1' название 'Snapshot (HUD Off)'.
Затем я задал этому пункту команду.
Было использовано всего 3 консольные команды:

    hud_draw 1/0 - показывать/не показывать HUD-текст
    snapshot - сделать скриншот
    wait - задержка

Заметка: Необходимо разделять команды точкой с запятой, чтобы задавать последовательности.
Заметка: HUD-текст - это чат (Chat), показатель HP (Healt Pack), AP (Armor Pack), амуниции (Ammo), времени до конца раунда и радар (Radar). Когда HUD отключён, на экране остаются только руки игрока с оружием (когда оно есть, если его нет, то экран будет чистым)


V. Ну что же, вот мы и добрались до финального пункта в статье.
Надеюсь, она вам помогла и вы узнали что-то новое о CommandMenu.

Давайте обобщим всё прочитанное, составив небольшой список главных нюансов:

1) Задавать клавиши, которые активируют пункты, названия и команды самих пунктов нужно в кавычках!
2) Между тремя вышеупомянутыми пунктами отступы лучше делать клавишей "TAB".
3) Создавая последовательность, не забывайте о точках с запятой между каждой командой!
4) Помните, что новый уровень в меню должен быть заключён между двумя фигурными скобками { }.

На этом закончим. Возникшие вопросы можете задать на форуме или отослать мне в ЛС.
Статью для вас подготовил DeadMan
[/list]
Первоисточник: http://izlapzla.ru
При копирование любой части информации, Вы обязаны поставить Активную ссылку на данную статью, как источник материала, также вы обязаны указать автора.
Комментарии:
 
Добавление комментария:













Никогда не бойся делать то, что ты не умеешь.Помни, КОВЧЕГ был построен ЛЮБИТЕЛЕМ.ПРОФЕССИОНАЛЫ построили "ТИТАНИК".©
Copyright © 2008 - 2016 www.izlapzla.ru