Custom Admin Menu (Делаем админское меню для SourceMod)
Делаем админское меню для SourceMod
[Ссылки могут видеть только зарегистрированные пользователи. ]
Введение
Функция пользовательских меню позволяет администраторам сервера добавлять новые элементы в SourceMod меню администратора. Оно предназначено для использования в качестве дополнения к плагинам команды которых нужно добавить в меню.
Администраторы могут настроить их меню с помощью конфигурационного файла sourcemod/configs/adminmenu_custom.txt, этот файл создает набор пунктов и категорий в меню администратора при запуске сервера.
Список параметров
Все эти параметры могут быть указаны для настройки меню. Большинство из них необязательны и имеют значения по умолчанию, если они не обнаружены. Смотрите 3ий пункт примеры команд и/или пункт файлы примеров для получения информации о том, как должен выглядеть и какую структуру иметь конфигурационный файл.
cmd - команда которая будет выполнена (#1,#2 и т.д. для параметров - никаких лимитов для них) Используйте @num чтобы послать параметр не окруженный "кавычками"
admin - уровень администратора требующийся для доступа к выполнению команды - смотрите [Ссылки могут видеть только зарегистрированные пользователи. ]
execute - 'server' или 'player' - выбор выполнить команду на клиенте или как команду сервера - значение по умолчанию 'player'
1 - Информация о параметре 1 (#1) - Вы должны указать большинство из следующих параметров
type - значение по умолчанию 'list' если другое не указано
'groupplayer' - Список в виде групп + присоединенные игроки
'onoff' - On или Off меню которое посылает числа 1/0 (хорошо для cvars(консольных переменных имеющих значения вкл./выкл.))
path - Требуется только для типа mapcycle. Путь (включая имя файла и его расширение) содержащий список карт (или другой текстовый отформатированный как mapcycle.txt) - по умолчанию имеет значение 'mapcycle.txt'
method - 'name', 'steamid', 'userid', 'userid2' (обратите внимание что символ '#' не указывается), 'clientid', 'ip' - необходимы только для меню groupplayer/player - по умолчанию name
title - Заголовок меню выбора (опционально)
1-x - Список параметров - нужен только для параметров типа 'list'
1.-x. - Текст описывающий параметр - нужен только для параметров типа 'list' (опционально, можно использовать в качестве текста или не использовать вообще)
1* - x* - Уровень администратора требующийся чтобы видеть эту опцию (также как и остальные типы admin)
}
"2"
{
"type" "list"
"title" "Speed Multiplier"
"1" "1.0"
"1." "Normal"
"2" "0.8"
"2." "80%"
"3" "0.5"
"3." "Half"
"4" "1.5"
"4." "50% Boost"
"5" "2.0"
"5." "Double"
"5*" "sm_ban"
//restrict the double option to admins who have access to the 'sm_ban' override
}
}
}
}
Выше написан пример содержимого конфигурационного файла adminmenu_custom.txt мы создали новую категорию в админском меню называемую 'Fun Commands'.
Эта категория содержит опцию под названием : "Set Player Speed". (установить скорость игрока)
Выбрав это мы бы вызвали следующее меню под названием: "Player/Team to Edit" содержащее список групп и имена игроков.
Далее выбрав что либо в списке мы переходим в следующее меню называющееся "Speed Multiplier".
Видим список опций такие как "Normal", "80%" например.
Пример команды отправляемой если пользователь выбран "Double" (выполняется команда на игроке FakeClientCommand) - 'sm_speed "@CT" 2.0'
Примечание: Вы можете использовать \ в качестве символа перехода. Использование \" позволит вам добавить кавычки в вашу строку.
Админские уровни
Все типы 'admin' сейчас требуют имя командной строки. Эта команда может быть уже существующей (sm_ban) или полностью воображаемой (onlycrabscanusethis).
Если команда существует в этой секции (или списке опций) потребуется точно такой же уровень доступа как и команда (включая любые перекрывающие указатели).
Пример. Вы используете sm_ban в качестве уровня администратора для под меню, поэтому все кто может получить доступ sm_ban также будут иметь доступ к этой опции меню (По умолчанию это администраторы с флагом 'ban' ). Однако если у вас есть перекрывающая sm_ban группа, то эта группа также будет иметь доступ.
Если команда не существует, вы будете должны добавить её в свои перекрывающие разделы, как если бы это была нормальная команда. Это может быть сделано в файле admin_overrides.cfg (чтобы присвоить флаг к этой команде), и/или в admin_groups.cfg (предоставить доступ к команде определенной группе или удалить её из группы, хотя они имеют флаг к использованию её)
Если не уровень администратора указан для базовой команду он по умолчанию будет первым аргументом в "cmd" строке. Например, имея
будет иметь значение по умолчанию admin override строка 'sm_ban'
Для более подробной информации смотрите [Ссылки могут видеть только зарегистрированные пользователи. ]
Группы подменю
Типы 'group' и 'groupplayer' добавляют предварительно настроенные параметры в меню.
Эти параметры настраиваются с помощью файла sourcemod/configs/adminmenu_grouping.txt
Они, как правило, используется для обеспечения действий над командами или всеми игроками, например как '@all' , '@t' в вашем меню.
Категории
Если вы хотите добавить элементы в уже существующую категорию, вам необходимо указать внутреннее имя этой категории. Названия для трех категорий, предусмотренных по умолчанию в SourceMod:
PlayerCommands
ServerCommands
VotingCommands
Сортировка
Категории и пункты добавленые с помощью динамического меню могут быть отсортированы таким же образом, как обычные элементы. Для получения дополнительной информации смотрите [Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
Re: Custom Admin Menu (Делаем админское меню для SourceMod)
Цитата:
как сделать свое голосование, которое не из файла в папке какого та, а просто, из консоли.
Рекомендую, Команды администратора Source Mod
По вопросу, команда sm_vote "вопрос" "ответ" "ответ", можно и больше вариантов ответов, ставьте все в ".."
Re: Custom Admin Menu (Делаем админское меню для SourceMod)
ладно, последний вопрос, тема все-таки касается соурсмода, у меня сам сервер полностью стоит на соурс моде, есть проблема разбана игроков, из папки кфг удалил файлы баннед_ип.кфг и баннедд_юзер.кфг, убрал их точнее из файла автозагрузки, т.е. вырубил, сейчас они не активные, пользуюсь для бана плагинок бейсбанс.smx и все мои баны хранятся в локах сурсмода в файле банс.лог. как разбанвать игроков через админское меню? можно вшить в админку сурсмода в файл админменю_кастум.txt ?
Re: Custom Admin Menu (Делаем админское меню для SourceMod)
stuffplaycraft, преустанавливай сам плагин сурс мода, активируй все файлы и бань только по самому плагину, через внетреннию игру разумеется, не надо заморочки искать