[CS:S/CS:GO] Запретить выкинуть AWP на кнопку G

Тема в разделе "Требуется", создана пользователем console1988, 20 окт 2017.

  1. console1988

    console1988

    Сообщения:
    99
    Симпатии:
    7
    Ребят помогите сделать маленький плагинчик чтобы как и нож и гранаты
    AWP нельзя было скинуть вообще?

    тоесть будет показывать
    Вы не можете скинуть это оружие.

    ---------------------------------

    Если можно:
    За символическую плату (200р)
    В этом же плагине чтобы можно было удалить первичное оружие (автомат) из инвентаря прописав в чат
    !del
    или в консоли del

    Смысл в том чтобы оно никак не оказалось на полу и его никто не мог подобрать другой.
     
  2. Lisoh

    Lisoh

    Сообщения:
    116
    Симпатии:
    51
    PHP:
    #include <sdktools_functions>

    public void OnPluginStart()
    {
        
    RegConsoleCmd("sm_del"DelWeapon);
        
    AddCommandListener(DropWeapon"drop");
    }

    public 
    Action DelWeapon(int iClientint iArgs)
    {
        if(
    iClient)
        {
            
    int weapon GetPlayerWeaponSlot(iClient0)
            if(
    IsValidEntity(weapon))
            {
                
    RemovePlayerItem(iClientweapon);
                
    FakeClientCommand(iClient"use weapon_knife");
            }
        }
     
        return 
    Plugin_Handled;
    }

    /*public Action CS_OnCSWeaponDrop(int iClient, int iWeapon)
    {
        //if(iClient && GetClientHealth(iClient) < 1 && IsValidEntity(iWeapon))
        if(iClient && IsValidEntity(iWeapon))
        {
            char Weapon[32]; GetEdictClassname(iWeapon, Weapon, sizeof(Weapon));
            if(StrContains(Weapon, "awp", false) != -1)
            {
                //CreateTimer(1.0, InfoMessageTimer, iClient, TIMER_FLAG_NO_MAPCHANGE); // иначе сообщение не перебьешь.
                return Plugin_Handled;
            }
        }
     
        return Plugin_Continue;
    }*/

    /*public Action InfoMessageTimer(Handle timer, int iClient)
    {
        PrintCenterText(iClient, "Нельзя выкинуть: <font color='#00FF1E'>awp</font>");
        return Plugin_Stop;
    }*/

    public Action DropWeapon(int iClient, const char[] commandint iArgs)
    {
        
    int iWeapon GetEntPropEnt(iClientProp_Data"m_hActiveWeapon");
        if(
    IsValidEntity(iWeapon))
        {
            
    char Weapon[32]; GetEdictClassname(iWeaponWeaponsizeof(Weapon));
            if(
    StrContains(Weapon"awp"false) != -1)
            {
                
    PrintCenterText(iClient"Нельзя выкинуть: <font color='#00FF1E'>awp</font>");
                return 
    Plugin_Handled
            }
        }
     
        return 
    Plugin_Continue;
    }
     
  3. Someone

    Someone Голос из армии

    Сообщения:
    1.259
    Симпатии:
    750
    Если я не ошибаюсь, то через Command Listener или CS_OnCSWeaponDrop оружие будет дропаться после смерти.
     
  4. Lisoh

    Lisoh

    Сообщения:
    116
    Симпатии:
    51
    Конечно будет, но запрос автора темы не совсем корректный и решил сделать так как понял.

    Для меня это одно целое:
     
  5. console1988

    console1988

    Сообщения:
    99
    Симпатии:
    7
    а можно продолжить тему и сделать так чтобы оно выбросилось и исчезло абсалютно моментально?
    чтобы в режиме ноблок игрок стоящий друг в друге не успел его передать?
    потому что есть косяк что они могут обменяться через кнопку E
     
    artushonok нравится это.
  6. Felton

    Felton

    Сообщения:
    535
    Симпатии:
    31
    Код:
    public OnPluginStart() AddCommandListener(DropWeapon, "drop");
    
    public Action:DropWeapon(client, String:command[], args)
    {
        decl String:weapon[11];
        GetClientWeapon(client, weapon, sizeof(weapon));
        return strcmp(weapon, "weapon_c4") ? Plugin_Handled:Plugin_Continue;
    }
    Запрет выбрасывать оружие на клавишу G
    Бомбу можно сбросить