Skip to content

Commands

Kaspersky edited this page Jan 10, 2025 · 3 revisions

🗒️ Создание команд

Базовая структура команды:

SB_AM = SB_AM or {}
SB_AM.Commands = SB_AM.Commands or {}

SB_AM.Commands.your_command = {
    Name = "your_command",
    Description = "Описание вашей команды",
    ShowPlayerList = true, -- Показывать ли список игроков
    Arguments = {
        {name = "Аргумент 1", required = true},
        {name = "Аргумент 2", required = false}
    },
    Callback = function(ply, args)
        -- Ваш код здесь
    end
}

return SB_AM.Commands.your_command

❗Важные моменты❗

  • required = true означает обязательный аргумент (отмечается звездочкой в GUI)
  • Используйте ShowPlayerList = true если команда работает с игроками
  • Символ @ в аргументах автоматически заменяется на ник игрока, на которого смотрит администратор (в чате так выглядит !kick @)

🧾 Система логирования

SB_AM.Log("Сообщение об ошибке", "error", ply) -- Сообщение об ошибке для конкретного игрока

SB_AM.Log("Информационное сообщение", "info", ply) -- Информационное сообщение для конкретного игрока

SB_AM.Log("Сообщение", "adminconsole") -- Сообщение в консоль администратора/сервера

SB_AM.Log("Сообщение", "info", nil, true) -- Сообщение только в консоль сервера

Если убрать ply то всем игрокам.

📂 Работа с аргументами

Arguments = {
    {name = "Время (например: 10m)", required = true},
    {name = "Причина", required = true},
    {name = "SteamID", required = false}
}

Чтоб аргументы работали, то вот такой код нужен.

if not args[1] then -- Например это время. То нужно время: 10 минут или что-то другое.
    -- Добавьте что-нибудь. Например, лог.
    return
end

if not args[2] then -- Например это причина. То нужна причина.
    -- Добавьте что-нибудь. Например, лог.
    return
end

Clone this wiki locally