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

Плагин позволяет заблокировать игроку доступ к выбранному оружию (На время или навсегда).

  1. san911
    Поддерживаемые игры:
    • CS: Source
    • CS: GO
    Автор: KOROVKA

    [​IMG] [​IMG]
    [​IMG] [​IMG]

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

    Настройка в конфиге: 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
    - Оптимизация кода.

    Пример databases.cfg
    Код:
    "Databases"
    {
        "player_weapon_blocker"
        {
            "driver"    "mysql"
            "host"    "host"
            "database"    "db_name"
            "user"    "user"
            "pass"    "pass"
        }
    }
    
    PHP:
    /**
     *    Проверяет наличие блокировки оружия у игрока.
     *    -
     * @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(clienttimeString:sWeapons[], drop);

    /**
     *  Вызывается при выдаче/редактирование времени/редактирование списка/снятие блокировки оружия.
     *    -
     * @param client            Индекс игрока.
     * @param admin             Индекс администрартора выполнившего операцию.
     * @param sWeapons            Список заблокированного оружия.
     * @param status            Тип действия. (0 - Редактирование списка заблокированного оружия, 1 - Выдача блокировки оружия, 2 - Изменение время блокировки оружия, 3 - Снятие блокировки оружия)
     *    -
     * @noreturn
    */
    forward OnPlayerWeaponBlocker(clientadminString:sWeapons[], status);

    /**
     *  Вызывается при попытке подобрать или купить заблокированное оружие.
     *    -
     * @param client            Индекс игрока.
     * @param sWeaponName        Название оружия которое пытаются подобрать или купить.
     *    -
     * @noreturn
    */                                                                                                                                   
    forward OnPlayerWeaponUse(clientString:sWeaponName[]);

    /**
     *  Вызывается после подключения на сервер игрока имеющего блокировку оружия. Также вызывается при автоматической(Время истекло) разблокировке.
     *    -
     * @param client            Индекс игрока.
     * @param sWeapons           Список заблокированного оружия.
     *    -
     * @noreturn
    */
    forward OnPlayerLoadWeaponBlock(clientString:sWeapons[]);

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

    Применения плагину можно найти разные, одни из основных это глумиться над читаками и непослушными игроками. :biggrin:
    Требования:
    - Sourcemod не ниже
    1.6.0
    Команды:
    pwb - Команда открывает меню управления. Для доступа требуются флаги из flags_access в конфиге.
    pwb_reset - Команда очищает базу данных. Для доступа требуется флаг ROOT
    GANZ, Dmitry Ahipov, Vladimir Serebrennikov и ещё 1-му нравится это.

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

  1. Vladimir Serebrennikov
    Vladimir Serebrennikov
    5/5,
    Версия: 2.1.5
    Идеально, плагин очень подходит под повседневное использование.
  2. Mafia
    Mafia
    5/5,
    Версия: 2.1.2
    Отличны и нужный плагин!!!