Aliases

K

Kruzya

Guest
Aliases
Идея: разработать плагин, предоставляющий возможность сократить или создать замену команды.
Причины: отсутствие какой-либо реализации, позволяющей без открытия исходников создавать простые алиасы команд.
Текущий статус: WIP (Work In Progress)
Текущая версия: 0.8.1

В тестовом режиме плагин уже был опубликован на HLmod и Dev-CS.ru
 
Last edited by a moderator:
K

Kruzya

Guest
Образец конфига для плагина. Реализованы команды для RageQuit (самобан на 10 минут) и установки маяка на игрока, который введёт команду.
Конфиг плагина должен располагаться в директории /addons/sourcemod/data/
Имя файла должно быть aliases.cfg

Code:
/**
* Конфигурационный файл для плагина Aliases.
*/

"Aliases"
{
  "sm_banme"
  {
    /**
     * Способ выполнения команды.
     *
     * 0 - выполнить от имени сервера, результат выполнения скрыть (не показывать игроку).
     * 1 - выполнить от имени сервера, результат выполнения переслать в ответ.
     * 2 - выполнить от имени игрока с последующей отправкой команды по сети.
     * 3 - выполнить от имени игрока без отправки команды по сети.
     * 4 - выполнить от имени игрока без отправки команды по сети в следующем тике.
     */
    "ExecuteType"   "0"

    /**
     * Требуемые админфлаги для выполнения команды.
     * Пустота означает отсутствие такого требования.
     * Флаги указываются в виде строки, монолитно (abcde).
     * Если у игрока нет хотя бы одного флага из указанного - доступ блокируется.
     */
    "AdminFlags"    ""

    /**
     * Выполняемая команда.
     * Поддерживает токены.
     * Все токены, если не указано иначе, подставляются на значения игрока, который ввёл команду.
     *
     * {userid}         - UserID игрока.
     * {entid}          - EntityID/ClientID игрока.
     * {ip}             - IP-адрес игрока.
     *
     * {auth_engine}    - SteamID в том формате, в котором выводится в status.
     * {auth_v2}        - SteamID v2 (STEAM_X:Y:Z).
     * {auth_v3}        - SteamID v3 ([U:1:x])
     * {auth_community} - SteamID 64 (7656xxxxxxxxxxxxx)
     *
     * {arg_count}      - Кол-во переданных команде аргументов.
     * {arg_all}        - Все переданные аргументы в виде монолитной строки.
     * {arg_idX}        - Аргумент, переданный команде, под индексом X. Поддерживается вплоть до 99 аргументов. Если аргумент не был указан, заменяется на пустую строку.
     */
    "Command"       "sm_ban #{userid} 10 Self-ban"

    /**
     * Кол-во аргументов, которое нужно требовать от игрока.
     * 0 - не требовать ничего.
     */
    "ArgCount"      "0"

    /**
     * Справка по использованию команды.
     * Нужна только если указано кол-во аргументов. В противном случае оставляем пустым.
     */
    "Usage"         ""
  }

  "sm_beaconme"
  {
    "ExecuteType"   "0"
    "AdminFlags"    ""
    "Command"       "sm_beacon #{userid}"
    "ArgCount"      "0"
    "Usage"         ""
  }
}
 
K

Kruzya

Guest
Опубликована версия 0.8.
  • Первый публичный релиз.
Обратите внимание: исходный код в постах в данном разделе доступен только зарегистрированным. Если у Вас нет желания регистрироваться на моём форуме, Вы можете скачать плагин с любого другого форума, указанного в шапке темы.
View hidden content is available for registered users!
 
K

Kruzya

Guest
Опубликована версия 0.8.1.
  • Исправлена ошибка, когда длинные алиасы не регистрировались корректно.
Обратите внимание: исходный код в постах в данном разделе доступен только зарегистрированным. Если у Вас нет желания регистрироваться на моём форуме, Вы можете скачать плагин с любого другого форума, указанного в шапке темы.
View hidden content is available for registered users!
 

Top