| API для разработчиков |
| [PluginReference] private Plugin PowerfulBans; private bool BansReady() => PowerfulBans != null && PowerfulBans.Call("API_IsReady") is true; |
| object API_IsReady() | Возвращает true, когда база данных подключена и схема готова. Операции чтения и записи отклоняются, пока схема не готова. |
| object API_Ban(string steamId, string name, string duration, string reason, string by, string comment = "") | Выполняется асинхронно. Неверные идентификаторы возвращают false; существующие баны никогда не перезаписываются без предупреждения; онлайн-цель блокируется немедленно. Комментарий является внутренним и никогда не показывается заблокированному игроку. |
| объект API_Unban (строка SteamID, строка by) | Асинхронный. by по умолчанию используется значение "Сервер", и вызов не выполняется, если игрок не забанен. |
| объект API_IsBanned(строка SteamID, действие <bool> обратного вызова) | Результат приходит через обратный вызов, а не через возвращаемое значение. Запрос также отложенно отменяет временные баны, срок действия которых истек. |
| void OnPowerfulBanAdded(...) void OnPowerfulBanRemoved(...) | Added срабатывает при появлении новых банов. Removed срабатывает только при явном разблокировании с помощью команды, пользовательского интерфейса или API_Unban, а не при истечении срока действия временного бана. |
| PowerfulBans?.Call("API_Ban", steamId.ToString(), "Cheater", "perm", "Aimbot detected", "AntiCheat"); PowerfulBans?.Call("API_Ban", steamId.ToString(), "Player", "7d", "Toxic in chat", "ChatGuard", "3rd warning"); |