Плагин позволяет заблокировать/разблокировать игроку доступ к выбранному оружию. Есть возможность выдавать блокировку оружия на время или навсегда, а также устанавливать блокировку исключительно на зум.
Настройка в конфиге: addons/sourcemod/configs/player_weapon_blocker/player_weapon_blocker.txt
Пример databases.cfg
Код:
"Databases"
{
"player_weapon_blocker"
{
"driver" "mysql"
"host" "host"
"database" "db_name"
"user" "user"
"pass" "pass"
}
}
Инклюд плагина
PHP:
// Автор плагина: KOROVKA
/**
* Проверяет наличие блокировки оружия у игрока.
* -
* @param client Индекс игрока.
* -
* @return - Возвращает true в случае если у игрока имеется блокировка оружия, иначе false.
*/
native bool:IsClientInWeaponBlock(client);
/**
* Получает время(unix) блокировки оружия игрока.
* -
* @param client Индекс игрока.
* -
* @return - Возвращает время(unix) блокировки оружия игрока. (1 - блокировки нет, 0 - навсегда)
*/
native GetClientTimeWeaponBlock(client);
/**
* Получает время(unix) когда была выдана блокировка оружия игрока.
* -
* @param client Индекс игрока.
* -
* @return - Возвращает время(unix) когда была выдана блокировка оружия игрока. (0 - блокировки нет)
*/
native GetClientBlockTimeWeapon(client);
/**
* Устанавливает блокировку оружия игроку.
* -
* @param client Индекс игрока.
* @param time Время блокировки unix. (1 - блокировки нет, 0 - навсегда)
* @param sWeapons Список блокируемого оружия.
* @param drop Выбросить ли оружие из рук игрока после блокировки.
* -
* @return - Возвращает время(unix) блокировки оружия игрока. (1 - блокировки нет, 0 - навсегда)
*/
native SetClientWeaponBlock(client, time, String:sWeapons[], drop);
/**
* Вызывается при выдаче/редактирование времени/редактирование списка/снятие блокировки оружия.
* -
* @param client Индекс игрока.
* @param admin Индекс администрартора выполнившего операцию.
* @param sWeapons Список заблокированного оружия.
* @param status Тип действия. (0 - Редактирование списка заблокированного оружия, 1 - Выдача блокировки оружия, 2 - Изменение время блокировки оружия, 3 - Снятие блокировки оружия)
* -
* @noreturn
*/
forward OnPlayerWeaponBlocker(client, admin, String:sWeapons[], status);
/**
* Вызывается при попытке подобрать заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются подобрать.
* @param weapon Индекс оружия.
* -
* @return Если вернуть false, то доступ к оружию будет разрешен.
*/
forward bool:OnPlayerWeaponBlockPreUse(client, String:sWeaponName[], weapon);
/**
* Вызывается при попытке купить заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются купить.
* -
* @return Если вернуть false, то покупка оружия будет разрешена.
*/
forward bool:OnPlayerWeaponBlockPreBuy(client, String:sWeaponName[]);
/**
* Вызывается при попытке использовать заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются использовать.
* @param weapon Индекс оружия.
* -
* @return Если вернуть false, то использовать оружие будет разрешено.
*/
forward bool:OnPlayerWeaponBlockPreAttack(client, String:sWeaponName[], weapon);
/**
* Вызывается при попытке выбросить заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются выбросить.
* @param weapon Индекс оружия.
* -
* @return Если вернуть false, то выбрасывать оружие будет разрешено.
*/
forward bool:OnPlayerWeaponBlockPreDrop(client, String:sWeaponName[], weapon);
/**
* Вызывается при попытке подобрать заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются подобрать.
* @param weapon Индекс оружия.
* -
* @noreturn
*/
forward OnPlayerWeaponBlockPostUse(client, String:sWeaponName[], weapon);
/**
* Вызывается при попытке купить заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются купить.
* -
* @noreturn
*/
forward OnPlayerWeaponBlockPostBuy(client, String:sWeaponName[]);
/**
* Вызывается при попытке использовать заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются использовать.
* @param weapon Индекс оружия.
* -
* @noreturn
*/
forward OnPlayerWeaponBlockPostAttack(client, String:sWeaponName[], weapon);
/**
* Вызывается при попытке выбросить заблокированное оружие.
* -
* @param client Индекс игрока.
* @param sWeaponName Название оружия которое пытаются выбросить.
* @param weapon Индекс оружия.
* -
* @noreturn
*/
forward OnPlayerWeaponBlockPostDrop(client, String:sWeaponName[], weapon);
/**
* Вызывается после подключения на сервер игрока имеющего блокировку оружия. Также вызывается при автоматической(Время истекло) разблокировке.
* -
* @param client Индекс игрока.
* @param sWeapons Список заблокированного оружия.
* -
* @noreturn
*/
forward OnPlayerLoadWeaponBlock(client, String:sWeapons[]);
Требования
- Sourcemod не ниже
1.6.0
Команды
pwb - Команда открывает меню управления. Для доступа требуются флаги из flags_access в конфиге.
pwb_reset - Команда очищает базу данных. Для доступа требуется флаг ROOT
Нет доступа к файлу
CS:GO