Ru custom admin menu (sourcemod) - alliedmodders wiki

вступ

Кастом меню (Custom menu) дозволяє серверним адміністраторам додавати нові пункти в меню адміністратора. Воно було розроблено, щоб дозволити плагинам додавати свої можливості в меню, без внесення змін до початкового коду, тому що більшість людей не володіють необхідними знаннями. Для більш детальної інформації дивіться Admin Menu (SourceMod Scripting).

Нижче перераховані всі парамерти, які можуть бути вказані при налаштуванні вашого меню. Багато з них опційні і мають значення за замовчуванням, якщо їх не вказали. Для більш детальної інформації дивіться Приклад і / або додаток (я) Файли з прикладами.

  • cmd - команда на виконання (# 1, # 2 і так далі - ліміту на кількість параметрів немає) Використовуйте @ номер щоб параметр не був узятий в "лапки"
  • admin - необхідний рівень адміністратора для доступу до цієї команди - дивіться Рівні адміністраторів для більш докладної інформації
  • execute - 'server' або 'player' - хто є "виполнителями" команди - сервер або той, хто використовує цю команду. За замовчуванням 'player'
  • 1 - Інформація про параметр 1 (# 1) - їх повинно бути рівно стільки, скільки параметрів в cmd
    • type - за замовчуванням 'list', якщо не було вказано.
      • 'Groupplayer' - Лист Груп + підключені гравці
      • 'Group' - Лист Груп
      • 'Player' - Лист гравців
      • 'List' - налаштовує список опцій
      • 'Mapcycle' - Автоматично заповнюються меню з карт вашого файлу циклу карт
      • 'Onoff' - "Увімкнути" або "Вимкнути", відсилає 1/0 (зручно для роботи з консольними змінними (квар, ConVars, cvars), і їм подібним)
    • path - Потрібно тільки при type = 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')

Увага! Якщо ви хочете використовувати російські букви в меню, то кодування файлу повинна бути UTF-8 (без BOOM), інакше замість букв ви побачите знаки питання!

Замітка: Ви можете використовувати \ як керуючий символ. Таким чином, "дозволить вам додати лапки в вашу рядок.

рівні адміністраторів

Все 'type' 'admin' тепер вимагають малу команду. Ця команда може вже існувати (наприклад, sm_ban) або бути повністю придуманою (наприклад, onlycrabscanusethis).

Якщо команда існує, то ця опція (або лист опцій) вимагатиме рівень доступу, рівний рівню доступу до цієї команди (включаючи будь-які перевизначення (оверрайди, overrides), які ви зробили).
Наприклад, якщо ви використовуєте sm_ban як рівень адміністратора для підміню, то таким чином кожен, хто має доступ до sm_ban, буде так само мати доступ і до цього підміню (за замовчуванням доступ до цієї команди є прапор бана). Однак якщо ви переопределили sm_ban для однієї з груп ( "override" "allow" - в файлі admin_groups.cfg), то ця група так само отримає доступ.

Якщо команда не існує, то вам потрібно буде додати перевизначення для цієї команди, як це робиться для простих команд. Це робиться в файлі admin_overrides.cfg (щоб призначити прапор доступу до цієї команди, і / або в файлі admin_groups.cfg (щоб дати доступ до команди певної групи або ж забрати, незважаючи на те, що вони мають прапор доступу)

Якщо рівень доступу не призначено, то тоді рівнем доступу буде призначений перший аргумент "cmd". Наприклад, для команди

рівнем доступу буде рівень доступу sm_ban, включаючи всі його перевизначення.

Group Підменю

Типи 'group' і 'groupplayer' автоматично додають заздалегідь налаштовані опції в меню. Ці опції настроюються у файлі sourcemod / configs / adminmenu_grouping.txt

Зазвичай вони використовуються, щоб додати такі команди як "@all ',' @t 'і інші, для ваших меню.

  • PlayerCommands (Управління гравцями)
  • ServerCommands (Управління сервером)
  • VotingCommands (Управління голосуваннями)

Сортування

Для того, щоб можна було сортувати доданий пункт, ви повинні дати вашій команді унікальне ім'я в вашому файлі конфігурації. Для наведеного прикладу:

Додаткові можливості

Приклад використання повного потенціалу меню: даємо адміністраторам доступ до квар, не даючи їм прапора доступу 'sm_cvars'

Додайте квар, до якого ви хочете дати доступ, і встановіть 'execute' 'server'

Таким чином, команда буде виконана через rcon, незважаючи на звичайну систему рівнів доступу, і перевірить доступ тільки до прапора, вказаною в поле 'admin'. Це так само працює для будь-яких інших команд, включаючи sm_rcon.

Файли з прикладами

Приклад файлу adminmenu_custom.txt налаштований для Super Commands:
adminmenu_custom.txt