[CS: GO] активация действия по установленному времени

Тема в разделе "Требуется", создана пользователем Dima Gavrilov, 14 авг 2015.

  1. Dima Gavrilov

    Dima Gavrilov

    Сообщения:
    23
    Симпатии:
    0
    Здравствуйте, хотелось бы спросить:
    Возможно-ли дописать к данному плагину(будет прикреплен ниже) активацию через определенное время(например каждую минуту)?
    Дело в том, что данный ниже плагин, удаляет лежащее на земле оружие(вообще все) и запустить это самое удаление, можно из меню sourcemod-а, а хотелось-бы, чтобы данный плагин автоматически отчищал карту.
    Возможно-ли это сделать?
    Заранее спасибо)
     

    Вложения:

  2. AlmazON

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

    Сообщения:
    4.528
    Симпатии:
    1.974
    Не проще тогда использовать специализированные плагины, например, Weapon Cleanup?
     
  3. Hejter

    Hejter Mapper Source Engine

    Сообщения:
    1.771
    Симпатии:
    259
    Без админки, но суть проста. Удаляет все оружие на карте (выброшенное, созданные через карты и т.д), каждые 10 секунд.

    PHP:
    #pragma semicolon 1

    #include <sourcemod>
    #include <sdktools>
    #include <sdkhooks>
    #include <cstrike>

    // Оффсеты
    new ownerOffset;

    public 
    OnPluginStart()
    {
        
    CreateTimer(10.0RemoveGroundWeaponsINVALID_HANDLETIMER_REPEAT);
        
    ownerOffset FindSendPropOffs("CBaseCombatWeapon""m_hOwnerEntity");
    }

    public 
    Action:Event_RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
    {
        
    RemoveGroundWeapons(INVALID_HANDLE);
    }

    public 
    Action:RemoveGroundWeapons(Handle:timer)
    {
            new 
    maxEntities GetMaxEntities();
            
    decl String:class[24];
            
            for (new 
    MaxClients 1maxEntitiesi++)
            {
                if (
    IsValidEdict(i) && (GetEntDataEnt2(iownerOffset) == -1))
                {
                    
    GetEdictClassname(i, class, sizeof(class));
                    if ((
    StrContains(class, "weapon_") != -1) || (StrContains(class, "item_") != -1))
                    {
                        if (
    StrEqual(class, "weapon_c4"))
                        {
                            
    //if (!removeObjectives)
                                
    continue;
                        }
                        
    AcceptEntityInput(i"Kill");
                    }
                }
            }
        
    //return Plugin_Handled;
    }
     
  4. Dima Gavrilov

    Dima Gavrilov

    Сообщения:
    23
    Симпатии:
    0
    Hejter, Огромное спасибо
     
  5. AlmazON

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

    Сообщения:
    4.528
    Симпатии:
    1.974
    Смысл? Новый раунд сам по себе удалит всё, что валяется. И не захукал ты его - убери.
     
  6. Dima Gavrilov

    Dima Gavrilov

    Сообщения:
    23
    Симпатии:
    0
    Проблема в том, что на сервере установлен zr плагин, и там постоянно появляется куча оружия. Я конечно попробовал из плагина вырезать рандомную закупку у ботов, но проблема с респавном гранат осталась, а этот скрипт чистит карту от них)