Снятие HP со временем до события

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

  1. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    Всем привет.

    Можно ли как-то сделать, чтобы после определенного времени с начала раунда у игрока уходило HP (скажем 1 HP в 4 секунды) до определенного действия?

    Уйти должно до нуля, то есть человек может и умереть.

    Пробовал переделать плагин регенерации на снятие ХП, но не вышло почему-то.
     
  2. ☆★☆БАТЯ☆★☆™

    ☆★☆БАТЯ☆★☆™

    Сообщения:
    2.585
    Симпатии:
    1.341
    trial, попробовать переделать anticamper?
     
    trial нравится это.
  3. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    А как вырезать эффект ослепления флешки?
     
  4. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.975
    Симпатии:
    2.982
    trial, Backspace
     
    trial нравится это.
  5. trial

    trial

    Сообщения:
    38
    Симпатии:
    3
    R1KO -> спасибо.

    Сабж с минус ХП остался...

    Добавлено через 22 минуты
    Все, разобрался, спасибо.
     
    Последнее редактирование: 19 фев 2014
  6. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.975
    Симпатии:
    2.982
    trial, не понимаю, что сложного?

    PHP:
    new Handle:g_hTimers[MAXPLAYERS+1];
    При определенном дейстивии делаешь:
    PHP:
    g_hTimers[client] = CreateTimer(4.0Timer_CallclientTIMER_REPEAT);
    когда нужно узнать запущен или нет

    PHP:
    if(g_hTimers[client] == INVALID_HANDLE)
    {
        
    // таймер не запущен
    }
    Чтобы остановить

    PHP:
    if(g_hTimers[client] != INVALID_HANDLE)
    {
        
    KillTimer(g_hTimers[client]);
        
    g_hTimers[client] == INVALID_HANDLE;
    }
    или return Plugin_Stop;
    в каллбеке таймера.

    сам каллбек
    PHP:
    public Action:Timer_Call(Handle:hTimerany:client)
    {
        if(
    IsClientInGame(client))
        {
            
    SetEntityHealth(clientGetClientHealth(client)-1);
            return 
    Plugin_Continue
        }
        return 
    Plugin_Stop
    }