Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 1 из 2 1 2 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: KillTimer

  1. #1
    Аватар для Айболит
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.05.2014
    Сообщений
    133
    Репутация:
    1 ±

    KillTimer

    Добрый вечер, ув. форумчане п-п-р, простите что я задаю часто вопросы, я еще новичок, и многого не знаю... Дело в том что, таймер не выключается а срабатывает обратно через 10 секунд.. Как это можно исправить?

    //Вызвал..
    Код:
    SetTimerEx("bolhp",1000*10,true,"i",playerid);
    //Действие.
    PHP код:
    forward bolhp(playerid);
    public 
    bolhp(playerid)
    {
        new
        
    Floatp_heal;
        
    GetPlayerHealth(playeridp_heal);
        
    //SetPlayerHealth(playerid, p_heal - 10.0);
        
    SetPlayerHealth(playeridp_heal 1.0);
        new 
    Float:health;
        
    GetPlayerHealth(playerid,health);
        if(
    health 100.0)
        {
         new 
    timerbolhp SetTimerEx("bolhp",1000*10,true,"i",playerid);
        
    KillTimer(timerbolhp); // Выключить таймер.
        
    SM(playerid,0xFF9600FF,"Курс лечение пройдет");
        }
        return 
    1;


  2. #2
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    • funcname[] Название вызываемой функции.
    • interval Время, через которая функция будет выполнена в миллисекундах.
    • repeating Будет ли функция повторятся.(true/false)
    • format[] Формат используемых параметров.
    • {Float,_}:... Список параметров.

    Стоит true

  3. #3
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    true на false замените...

  4. #4
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    Цитата Сообщение от Пельмень
    KillTimer дорогостоящая функция
    (Типа того)
    ага.

  5. #5
    Аватар для Айболит
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.05.2014
    Сообщений
    133
    Репутация:
    1 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    true на false замените...
    Я хочу сделать так, повторяет, а если больше > 100 HP, то таймер убивается как бы.

    а если я сделаю false то повторят не будет..

  6. #6
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    PHP код:
        new 
        
    Floatp_heal
        
    GetPlayerHealth(playeridp_heal); 
    PHP код:
    new Float:health
        
    GetPlayerHealth(playerid,health); 
    Смысла не понял.

  7. #7
    Аватар для Айболит
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.05.2014
    Сообщений
    133
    Репутация:
    1 ±
    Цитата Сообщение от Salvador Посмотреть сообщение
    PHP код:
        new 
        
    Floatp_heal
        
    GetPlayerHealth(playeridp_heal); 
    PHP код:
    new Float:health
        
    GetPlayerHealth(playerid,health); 
    Смысла не понял.
    SetPlayerHealth(playerid, p_heal + 1.0); // На эту строчку посмотрите...

  8. #8
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Вызов таймера:
    PHP код:
    SetPVarInt(playerid"bolhp_timer"SetTimerEx("bolhp"1000 10true"i"playerid)); 
    Паблик:
    PHP код:
    forward bolhp(playerid);
    public 
    bolhp(playerid)
    {
        new
            
    Floatp_heal;


        
    GetPlayerHealth(playeridp_heal);

        
    //SetPlayerHealth(playerid, p_heal - 10.0);
        
    SetPlayerHealth(playeridp_heal 1.0);

        if(
    p_heal 99.0)
        {
            
    KillTimer(GetPVarInt(playerid"bolhp_timer"));
            
    SendClientMessage(playerid0xFF9600FF"Курс лечения пройден.");
        }


  9. 2 пользователя(ей) сказали cпасибо:
    Salvacore (10.08.2014) Айболит (10.08.2014)
  10. #9
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    Цитата Сообщение от Айболит Посмотреть сообщение
    SetPlayerHealth(playerid, p_heal + 1.0); // На эту строчку посмотрите...
    Это тебе надо было приглянуться.
    Легче можно было сделать, и Londlem сделал.

  11. Пользователь сказал cпасибо:
    Айболит (10.08.2014)
  12. #10
    Аватар для Айболит
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.05.2014
    Сообщений
    133
    Репутация:
    1 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    Вызов таймера:
    PHP код:
    SetPVarInt(playerid"bolhp_timer"SetTimerEx("bolhp"1000 10true"i"playerid)); 
    Паблик:
    PHP код:
    forward bolhp(playerid);
    public 
    bolhp(playerid)
    {
        new
            
    Floatp_heal;


        
    GetPlayerHealth(playeridp_heal);

        
    //SetPlayerHealth(playerid, p_heal - 10.0);
        
    SetPlayerHealth(playeridp_heal 1.0);

        if(
    p_heal 99.0)
        {
            
    KillTimer(GetPVarInt(playerid"bolhp_timer"));
            
    SendClientMessage(playerid0xFF9600FF"Курс лечения пройден.");
        }


    Londlem. Спасибо вам, помогли мне очень, спасибо еще раз.

 

 
Страница 1 из 2 1 2 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •