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

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

  1. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    PHP:
    #include <sdktools>
    #include <player_weapon_blocker>

    public Plugin:myinfo 
    {
        
    name "(Module: Player Weapon Blocker) Sound Weapon Block",
        
    author "KOROVKA"// Plugin by KOROVKA
        
    description "Sound Weapon Block",
        
    version "1.0.1",
        
    url ""
    };

    #define SOUND_PWB "sound_block.mp3"
    #define MODE 1
    #define PRINT 1

    #if MODE
    static String:sBuyWeaponName[MAXPLAYERS+1][16];
    #endif

    public OnMapStart()
    {
        
    decl String:buffer_s[70];
        
    FormatEx(buffer_s70"sound/%s"SOUND_PWB);

        
    PrecacheSound(SOUND_PWBtrue);
        
    AddFileToDownloadsTable(buffer_s);
    }

    #if MODE
    public Action:CS_OnBuyCommand(client, const String:sWeaponName[]) strcopy(sBuyWeaponName[client], 16sWeaponName);
    #endif

    public OnPlayerWeaponUse(clientString:sWeaponName[])
    {
        
    #if MODE
            
    if(GetEntProp(clientProp_Send"m_bInBuyZone") != 0
            {
                new 
    Handle:Pack CreateDataPack();
                
    WritePackString(PacksWeaponName);
                
    WritePackCell(Packclient);
               
                
    CreateTimer(0.0TimerBuyWeaponBlockPackTIMER_DATA_HNDL_CLOSE);
            }
        
    #else
            
    EmitSoundToClient(clientSOUND_PWB);
        
    #endif
       
        #if PRINT
            
    PrintToChat(client"\x04[Player Weapon Blocker] \x01Доступ к оружию \x04%s \x01заблокирован!"sWeaponName);
        
    #endif
    }

    #if MODE
    public Action:TimerBuyWeaponBlock(Handle:timeany:Pack)
    {
        
    ResetPack(Pack);
        
    decl String:sWeaponName[16];
        
    ReadPackString(PacksWeaponName16);
        new 
    client ReadPackCell(Pack);
       
        if(
    StrEqual(sBuyWeaponName[client], sWeaponName)) EmitSoundToClient(clientSOUND_PWB);
    }
    #endif
    SOUND_PWB - Путь к звуку.
    MODE - Режим работы. (1 - воспроизводить звук при попытке купить заблокированное оружие, 0 - воспроизводить звук при попытке подобрать или купить заблокированное оружие)
    PRINT - Сообщение игроку что у него заблокирован доступ к оружию. (1 - Вкл, 0 - Выкл)
     
    Последнее редактирование: 1 апр 2017
    (А)ндRю✘а и -->KENT<-- нравится это.
  2. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Пользователь san911 обновил ресурс Player Weapon Blocker новой записью:

    Оптимизация, и прочие улучшения.

    Узнать больше об этом обновлении...
     
    Последнее редактирование: 1 апр 2017
  3. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
  4. Yura7181

    Yura7181

    Сообщения:
    462
    Симпатии:
    490
    Привет.
    Как узнать кто из админов дал блокировку? Возможно добавить логирование действий (вкл./откл. через конфиг логирование т.к. понимаю кому то это не надо будет) чтобы быть вкурсе кто что делает и тех кто будет злоупотреблять плагином (чтобы было видно кто изменил время бана и кто разбанил/забанил и т.п.)? Заранее спасибо, очень полезный плагин.

    Доп. вопрос: в каком файле редактируется время бана?
     
    Последнее редактирование: 9 апр 2017
    SamVl нравится это.
  5. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Логироваться будут только те операции которые были совершены над игроками/админами в онлайне.
    PHP:
    #include <player_weapon_blocker>

    public Plugin:myinfo 
    {
        
    name "(Module: Player Weapon Blocker) Logger PWB",
        
    author "KOROVKA"// Plugin by KOROVKA
        
    description "Logger PWB",
        
    version "1.0.1",
        
    url ""
    };

    public 
    OnPlayerWeaponBlocker(clientadminString:sWeapons[], status)
    {
        if(
    admin == 0) return;
       
        if(
    status == 0LogToFile("addons/sourcemod/logs/pwb.log""Администратор %L отредактировал блокировку оружия %s %L (%s)"adminGetUserAdmin(client) == INVALID_ADMIN_ID "игрока":"администратора"clientsWeapons);
        else if(
    status == 1
        {
            if((
    status GetClientTimeWeaponBlock(client)) == 0LogToFile("addons/sourcemod/logs/pwb.log""Администратор %L выдал блокировку оружия %s %L (Навсегда)(%s)"adminGetUserAdmin(client) == INVALID_ADMIN_ID "игроку":"администратору"clientsWeapons);
            else 
    LogToFile("addons/sourcemod/logs/pwb.log""Администратор %L выдал блокировку оружия %s %L (На %d минут)(%s)"adminGetUserAdmin(client) == INVALID_ADMIN_ID "игроку":"администратору"client, (status-GetTime())/60sWeapons);
        }
        else if(
    status == 2
        {
            if((
    status GetClientTimeWeaponBlock(client)) == 0LogToFile("addons/sourcemod/logs/pwb.log""Администратор %L изменил время блокировки оружия %s %L (Навсегда)"adminGetUserAdmin(client) == INVALID_ADMIN_ID "игрока":"администратора"client);
            else 
    LogToFile("addons/sourcemod/logs/pwb.log""Администратор %L изменил время блокировки оружия %s %L (На %d минут)"adminGetUserAdmin(client) == INVALID_ADMIN_ID "игрока":"администратора"client, (status-GetTime())/60);
        }
        else if(
    status == 3LogToFile("addons/sourcemod/logs/pwb.log""Администратор %L снял блокировку оружия %s %L"adminGetUserAdmin(client) == INVALID_ADMIN_ID "игрока":"администратора"client);
    }
    Обязательно нужно сохранить в UTF без BOM

    Сам список из меню в игре? Если речь о нем, то в исходнике.
     
    Последнее редактирование: 9 апр 2017
    (А)ндRю✘а и Yura7181 нравится это.
  6. Igor78p

    Igor78p

    Сообщения:
    1
    Симпатии:
    0
    У меня в меню админа/управление игроками не появился выбор запретить оружие, может можно командой какой нибудь вызвать? Возможно из-за того что много других пунктов.
     
  7. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Игра какая? Для открытия меню можно использовать команду !pwb
     
  8. nuPAT

    nuPAT

    Сообщения:
    115
    Симпатии:
    3
    Плагин можно использовать с sqlite ? Не хочется делать веб сервер с мусклом и переносить...
     
  9. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Да можно
     
  10. -->KENT<--

    -->KENT<-- На квартале

    Сообщения:
    211
    Симпатии:
    24
    Ядро крашит сервер после обновы, либо это модуль крашит pwb_weapons_control.smx
     
  11. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Какая игра? Когда крашит? Точно причина в нем? Логи?
     
  12. -->KENT<--

    -->KENT<-- На квартале

    Сообщения:
    211
    Симпатии:
    24
    csgo, там обнова была с изменением оружия вроде. Weapon Restict тоже ща крашит вроде как.
     
  13. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Возможно с плагином CS Fake Alias(От inklesspen) будет работать. (cs:go)
     

    Вложения:

  14. MOROZOV

    MOROZOV Read Only

    Сообщения:
    15
    Симпатии:
    0
    После недавней обновы от валве) плагин работает неадекватно)
    Всё оружие запрещает
     
  15. -->KENT<--

    -->KENT<-- На квартале

    Сообщения:
    211
    Симпатии:
    24
    Не помогло.
     
  16. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Такой проблемы не замечено.
    Оффтоп
     
  17. -->KENT<--

    -->KENT<-- На квартале

    Сообщения:
    211
    Симпатии:
    24
    Исправите?
     
  18. will_rock

    will_rock

    Сообщения:
    124
    Симпатии:
    14
    Большое спасибо за плагин. Не подскажите почему при разблокировке оружия игрок всё равно остается в списке заблокированных? Хоть и блокировка была снята успешно, игрок может брать оружие. css v34, sourcemod 1.7.3-stable+5265
    --- Добавлено позже ---
    А сейчас вообще вижу, что сервер ушел в краш) На 90% уверен что из-за этого плагина, так как день сервер работал стабильно. Никаких еррорс нет
     
  19. san911

    san911 Вообще короче нечего

    Сообщения:
    233
    Симпатии:
    72
    Weapons Control стоит?
     
  20. Николай

    Николай

    Сообщения:
    1
    Симпатии:
    0
    Доброго время суток. Не работает плагин.:help: Сервер на МайАрене В34 В cfg файл не появляется плагин pwb_weapons_control 3.0.2