Команда доступная 1 раз

Тема в разделе "Программирование / Скриптинг", создана пользователем White Wolf, 12 июл 2013.

  1. White Wolf

    White Wolf [] (int _n) -> double { return (_n % 2) == 0;}); Супер-модератор

    Сообщения:
    1.186
    Симпатии:
    411
    Здравствуйте, изучаю язык SourcePawn и наткнулся на одну проблему. Как сделать команду sm_test доступной только 1 раз за раунд независимо от команды Т или КТ. То есть если Т написал эту команду и умер, остальные игроки тоже не могли написать эту команду. Кто знает что нужно сделать напишите.
     
  2. The End Is Near...

    The End Is Near... Russian Roulette

    Сообщения:
    893
    Симпатии:
    659
    White Wolf
    PHP:
    #include <sourcemod>

    new CountUse 0;

    public 
    OnPluginStart()
    {
        
    HookEvent("round_start"Event_OnRoundStart);

        
    RegConsoleCmd("test"CallBack);
    }

    public 
    Event_OnRoundStart(Handle:event, const String:name[], bool:silent)
    {
        if (
    CountUse != 0)
        {
            
    CountUse 0;
        }

    }

    public 
    Action:CallBack(clientargs)
    {
        if (
    client 0)
        {
            
    PrintToChat(client"%s"CountUse "Вы не успели ввести команду!" "Вы ввели команду!");

            
    CountUse++;
        }

        return 
    Plugin_Handled;
    }
     
    White Wolf нравится это.
  3. FrozDark

    FrozDark Команда сайта HLMod Модератор

    Сообщения:
    1.761
    Симпатии:
    1.915
    PHP:
    new bool:bRoundUsed;

    public 
    OnPluginStart()
    {
        
    HookEvent("round_start"OnRoundStartEventHookMode_PostNoCopy);

        
    RegConsoleCmd("sm_test"Command_Test);
    }

    public 
    OnMapStart()
    {
        
    bRoundUsed false;
    }

    public 
    OnRoundStart(Handle:event const String:name[], bool:dontBroadcast)
    {
        
    bRoundUsed false;
    }

    public 
    Action:Command_Test(clientargc)
    {
        if (
    bRoundUsed)
        {
             return 
    Plugin_Handled;
        }
        
        
    bRoundUsed true;

        
    PrintToChatAll("Test");
        
        return 
    Plugin_Handled;
    }
     
    White Wolf нравится это.