КТ вышел, раунд кончился.

Тема в разделе "Программирование / Скриптинг", создана пользователем trial, 13 фев 2014.

  1. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    Ребят, как сделать, чтобы когда КТ вышел с сервера (либо кикнули), раунд автоматически заканчивался? КТ только один в раунде всегда.
     
  2. Primo

    Primo Где мои манеры

    Сообщения:
    1.192
    Симпатии:
    310
    PHP:
    public OnClientDisconnect(client)
    {
        if(
    GetClientTeam(client) == 3)
        {
            
    // 3 - Time (in seconds) to delay before new round starts
            // reason - Reason for the round ending
            // false - (blockhook)Set to true to stop the corresponding CS_OnTerminateRound forward from being called.
            
    CS_TermianteRound(3reasonfalse);
        }
    }
    мб так? Я не знаю, будет ли CS_TermianteRound работать
     
    trial нравится это.
  3. trial

    trial

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

    public OnPluginStart()
    {
            
    HookEvent("player_disconnect"event_PlayerDisconnectEventHookMode_Pre);
    }

    public 
    OnClientDisconnect(client

            if(
    GetClientTeam(client) == 3
            { 
                
    // 3 - Time (in seconds) to delay before new round starts 
                // reason - Reason for the round ending 
                // false - (blockhook)Set to true to stop the corresponding CS_OnTerminateRound forward from being called. 
                
    CS_TermianteRound(115false); 
            } 
    }  
    Так? Не компилируется.
     
  4. Primo

    Primo Где мои манеры

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

    public OnPluginStart()
    {
        
    HookEvent("player_disconnect"OnClientDisconnect);
    }

    public 
    OnClientDisconnect(Handle:event, const String:name[], bool:dontBroadcast
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));
        if(
    GetClientTeam(client) == 3
        { 
            
    // 3 - Time (in seconds) to delay before new round starts 
            // reason - Reason for the round ending 
            // false - (blockhook)Set to true to stop the corresponding CS_OnTerminateRound forward from being called. 
            
    CS_TermianteRound(115false); 
        } 
    }
    И какая ошибка то?
     
    trial нравится это.
  5. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
  6. ☆★☆БАТЯ☆★☆™

    ☆★☆БАТЯ☆★☆™

    Сообщения:
    2.585
    Симпатии:
    1.341
    trial, правой кнопкой сверху консоли - свойства - поставить галочку - выделения мышью... И убирай из пути русские буквы, пригодится...
     
    trial нравится это.
  7. Primo

    Primo Где мои манеры

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

    public OnPluginStart()
    {
        
    HookEvent("player_disconnect"PlayerDisconnect);
    }

    public 
    PlayerDisconnect(Handle:event, const String:name[], bool:dontBroadcast
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));
        if(
    GetClientTeam(client) == 3
        { 
            
    // 3 - Time (in seconds) to delay before new round starts 
            // reason - Reason for the round ending 
            // false - (blockhook)Set to true to stop the corresponding CS_OnTerminateRound forward from being called. 
            
    CS_TerminateRound(1.0CSRoundEnd_Drawfalse); 
        } 
    }
     
    trial нравится это.
  8. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    Primo --> премного благодарен, работает =)