Player Weapon Blocker

Ядро плагина Player Weapon Blocker 3.1.0

Нет прав для скачивания
Поддерживаемые игры
CS: Source, CS: GO
Автор: KOROVKA




Плагин позволяет заблокировать/разблокировать игроку доступ к выбранному оружию. Есть возможность выдавать блокировку оружия на время или навсегда, а также устанавливать блокировку исключительно на зум.

Настройка в конфиге: addons/sourcemod/configs/player_weapon_blocker/player_weapon_blocker.txt

Код:
(Версия: 1.0.0) - Релиз.
(Версия: 1.1.0) - Оптимизация кода.
- Добавлен вывод сообщения администрации о блокировке оружия игроку.
- Добавлена версия с цветами для cs:go.
- И прочие улучшения.
(Версия: 1.2.0) - Добавлены нативы IsClientInWeaponBlock, GetClientTimeWeaponBlock, SetClientTimeWeaponBlock
- Добавлена авто подмена цветов для всех игр.
- И прочие улучшения.
(Версия: 2.0.0) - Добавлена возможность блокировать оружие выборочно.
- Добавлен конфиг файл.
- Добавлен натив GetClientBlockTimeWeapon
- Добавлен новый пункт меню "Управление игроками с блокировкой".
  1. Позволяет редактировать и просматривать блокировки игроков которые не на сервере.
  2. Позволяет просматривать информацию о блокировке. (Когда был выдан блок, когда будет снят, SteamID64 игрока, и список заблокированного оружия).
  3. Позволяет редактировать блокированное оружие.
  4. Позволяет менять время блокировки.
  5. Позволяет снимать блокировку.
- Добавлена возможность скинуть заблокированное оружие с игрока после выдачи блокировки.
- Теперь при возвращение кнопкой "Назад" попадаешь в предыдущую директорию меню.
- Меню плагина переехало в root директорию админки.
- Теперь при продление блокировки игрок и администрация получит соответствующее сообщение в чат с общим кол-вом минут.
- Добавлено много различных информирующих уведомлений в чат.
- Оптимизация кода и прочие улучшения.
(Версия: 2.1.0) - Добавлена возможность ставить флаг(и)
доступа к меню, и уведомлений в чате. (Настройка в конфиге)
- Поправлен вывод сообщений администрации в чат.
- Поправлен список оружия для cs:go в конфиге.
- Обновлен натив SetClientWeaponBlock (Теперь можно выбросить заблокированное оружие у игрока из рук)
- Оптимизация кода и прочие улучшения.
(Версия: 2.1.1) - Добавлен форвард OnPlayerWeaponBlocker
- Оптимизация кода и прочие улучшения.
(Версия: 2.1.2) - Исправлена выдача ножа при разблокировке оружия.
(Версия: 2.1.3) - Исправления работы меню. И незначительные улучшения.
(Версия: 2.1.4) - Выбрать всё убрано из конфига в плагин.
- Исправлена ошибка в коде.
(Версия: 2.1.5) - Форвард OnPlayerWeaponBlocker теперь передает индекс администратора который совершил операцию, а также список заблокированного оружия у игрока.
- Ускорено получение информации при подключение на сервер.
- Конфиг файл переехал в папку player_weapon_blocker
(Версия: 2.2.0) - Добавлен форвард OnPlayerWeaponUse
- Теперь заблокированное оружие нельзя купить.
- Обновлен список оружия для cs:go в конфиге.
(Версия: 2.2.1) - Добавлена команда которая открывает меню.
- Оптимизация кода.
(Версия: 2.3.0) - Добавлена возможность блокировать зум.
- Добавлен форвард OnPlayerLoadWeaponBlock
- Дополнен функционал кнопки "Выбрать всё"
- Исправлены ошибки в коде.
(Версия: 2.3.1) - Обновлен форвард OnPlayerWeaponBlocker
- Улучшения в меню связанные с зумом.
- Исправлено отображение игроков с блокировкой.
- Оптимизация кода.
(Версия: 3.0.0) - Добавлен файл с переводами.
- Добавлена поддержка MySQL
- Добавлена команда для очистки базы данных.
(Версия: 3.0.1) - Форвард OnPlayerWeaponUse теперь работает корректно с гранатами.
- Теперь выбрасываются все заблокированные гранаты.
- Оптимизация кода.
(Версия: 3.0.2) - Изменено количество выбрасываемых гранат для cs go.
- Обновлен натив SetClientWeaponBlock
- Оптимизация кода.
(Версия: 3.0.3) - Исправлено удаление блокировок оружия по истечению времени.
- Добавлен форвард OnPlayerWeaponBlockUse и OnPlayerWeaponBlockBuy
(Версия: 3.1.0) - Исправлено что локализация устанавливалась не правильно.
- Добавлены форварды OnPlayerWeaponBlockPreUse, OnPlayerWeaponBlockPreBuy, OnPlayerWeaponBlockPreAttack, OnPlayerWeaponBlockPreDrop, OnPlayerWeaponBlockPostUse, OnPlayerWeaponBlockPostBuy, OnPlayerWeaponBlockPostAttack, OnPlayerWeaponBlockPostDrop
- Удалены форварды OnPlayerWeaponBlockUse и OnPlayerWeaponBlockBuy

Пример 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[]);

- Weapons Control - Модуль позволяет заблокировать/разблокировать доступ к выбранному оружию для всех игроков на сервере. (Не рекомендуется использовать)
- Sound Weapon Block - Модуль добавляет звуковые и чат оповещения при попытке использовать заблокированное оружие.
- Logger PWB - Модуль записывает в логи все действия администраторов.

Применения плагину можно найти разные, одни из основных это глумиться над читаками и непослушными игроками. :biggrin:
Требования
- Sourcemod не ниже
1.6.0
Команды
pwb - Команда открывает меню управления. Для доступа требуются флаги из flags_access в конфиге.
pwb_reset - Команда очищает базу данных. Для доступа требуется флаг ROOT
Автор
san911
Скачивания
551
Просмотры
551
Первый выпуск
Обновление
Оценка
5.00 звёзд 4 оценок

Другие ресурсы пользователя san911

Последние обновления

  1. Обновление форвардов, и мелкие исправления.

    Версия: 3.1.0
  2. Исправлено удаление блокировок оружия по истечению времени.

    Модули тоже обновлены. Версия: 3.0.3
  3. Финальная версия плагина.

    Версия: 3.0.2 /** * Проверяет наличие блокировки оружия у игрока. * - * @param...

Последние рецензии

Отлично все блочит!
круто
всё норм работает!
Идеально, плагин очень подходит под повседневное использование.
Отличны и нужный плагин!!!
Сверху