Обнуление оружия в начале каждого раунда

Тема в разделе "Counter-Strike: Global Offensive", создана пользователем D1ones, 30 июн 2016.

  1. D1ones

    D1ones

    Сообщения:
    1
    Симпатии:
    0
    Приветствую c:
    Прошу помощи, так как ещё новичок, как можно реализовать обнуление оружия в начале каждого раунда (у всех игроков)?
    Заранее благодарю за любую помощь :ab:
     
  2. teran

    teran

    Сообщения:
    95
    Симпатии:
    8
    Нашел это:
    В конфиге:
    wpn_enabled 1|0 вкл/выкл плагин
    sm_cleanwpn_knives 1 - оставить ножи, 0 - убрать
     

    Вложения:

    • cleanwpn.sp
      Размер файла:
      2,1 КБ
      Просмотров:
      16
    Yooki и D1ones нравится это.
  3. Yooki

    Yooki

    Сообщения:
    108
    Симпатии:
    5
    дай пожалуйста скомпилированную версию ,выдает ошибку ( при компиляции ) и не работает сам плагин
    --- Добавлено позже ---
    а все понял, спасибо!
    --- Добавлено позже ---
    Извини, а ты не можешь изменить так, чтобы гранаты тоже оставались?
     
    Последнее редактирование: 11 сен 2016
  4. ilya007good

    ilya007good

    Сообщения:
    34
    Симпатии:
    1
    Что то у меня не работает... (Скомпилировалось, но с 2 предупреждениями в компиляторе)
     
  5. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.506
    Симпатии:
    1.961
    PHP:
    #include <sourcemod>
    #include <sdktools>
    #include <cstrike>

    // Force 1.7 syntax
    #pragma newdecls required

    ConVar g_CvarEnabledg_CvarKnives;

    int g_iGrenadeOffsets[] = {151716141817};

    public 
    Plugin myinfo 
    {
        
    name "Player Cleaner",
        
    description "Clear player weapons on round start",
        
    author "White Wolf (HLModders LLC)",
        
    version "1.0.1",
        
    url "http://steamcommunity.com/id/doctor_white http://tibari.ru http://hlmod.ru"
    };

    public 
    void OnPluginStart()
    {
        
    g_CvarEnabled CreateConVar("sm_cleanwpn_enabled""0""Enable or disable plugin"0true0.0true1.0);
        
    g_CvarKnives CreateConVar("sm_cleanwpn_knives""0""Cleanup all wepaons but knives"0true0.0true1.0);

        
    g_CvarEnabled.AddChangeHook(OnCvarChange);
        
    g_CvarKnives.AddChangeHook(OnCvarChange);

        
    HookEvent("player_spawn"Event_OnPlayerSpawn);

        
    AutoExecConfig(true"cleanwpn");
    }

    public 
    void OnCvarChange(ConVar cvar, const char[] oldValue, const char[] newValue)
    {
        if (
    cvar == g_CvarEnabledg_CvarEnabled.SetInt(StringToInt(newValue));
        else if (
    cvar == g_CvarKnivesg_CvarKnives.SetInt(StringToInt(newValue));
    }

    public 
    void Event_OnPlayerSpawn(Event event, const char[] namebool dontBroadcast)
    {
        if (
    g_CvarEnabled.BoolValue)
        {
            
    int client GetClientOfUserId(event.GetInt("userid"));

            for (
    int i 05; ++i)
            {
                if (
    != 3)
                    
    RemoveWeaponBySlot(clienti);
            }
            
    RemoveNades(client);
            if (
    g_CvarKnives.BoolValue)
                
    GivePlayerItem(client"weapon_knife");
        }
    }

    stock void RemoveNades(int client)
    {
        while (
    RemoveWeaponBySlot(client3))
        {
            for (
    int i 06; ++i)
                
    SetEntProp(clientProp_Send"m_iAmmo"0_g_iGrenadeOffsets[i]);
        }
    }

    stock bool RemoveWeaponBySlot(int clientint slot)
    {
        
    int entity GetPlayerWeaponSlot(clientslot);
        if (
    entity != -1)
        {
            
    RemovePlayerItem(cliententity);
            
    AcceptEntityInput(entity"Kill");
            return 
    true;
        }

        return 
    false;
    }
     
  6. yand3xmail

    yand3xmail Read Only

    Сообщения:
    16
    Симпатии:
    1
    @AlmazON, еще проще нельзя?
    Код:
    #pragma semicolon 1
    #pragma newdecls required
    
    public void OnPluginStart() {
        HookEventEx("player_spawn", Event_PlayerSpawn, EventHookMode_Pre);
    }
    
    public void Event_PlayerSpawn(Event event, const char[] name, bool dontBroadcast){
        int client = GetClientOfUserId(event.GetInt("userid"));
        DisarmPlayer(client);
    }
    
    stock bool DisarmPlayer(int client){
        if (IsClientInGame(client) && IsPlayerAlive(client)){
            int entity = CreateEntityByName("player_weaponstrip");
            if (AcceptEntityInput(entity, "strip", client) && AcceptEntityInput(entity, "kill")){
                return true;
            }
            return false;
        }
        return false;
    }
     
  7. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.506
    Симпатии:
    1.961
    Оффтоп