Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: Shevrole on August 11, 2016, 05:50:13 PM

Title: Условие по времени
Post by: Shevrole on August 11, 2016, 05:50:13 PM
День добрый
Проблема в следующем
Еще как говориться вчера у меня запускался скрипт по условию
IF(($_time_m = 03)&($_time_s = 50))
скрипт
END_IF
Одномоментно это условие перестало работать и сейчас запускается только в виде
IF($_time_m = 03))
скрипт
END_IF
не хочется лепить лишних костылей в виде задержек и тд
в чем может быть проблема?
и еще будет ли работать условие типа
IF(($_time_m = 0)&($_time_s = 0))
скрипт
END_IF
Title: Re: Условие по времени
Post by: Oraven on August 12, 2016, 07:48:09 AM
Не нужно писать лишних скобок и нулей
Code: (clickermann) [Select]
IF(($_time_m = 3)&($_time_s = 50))
// скрипт
END_IF
Code: (clickermann) [Select]
IF($_time_m = 3)
строка с условием должна выполниться в течении 50й секунды. Может там есть задержки и выполнение не попадает в это время.

Code: (clickermann) [Select]
IF(($_time_m = 0)&($_time_s = 0)) // условие будет срабатывать в 0 минут и 0 секунд каждого часа
//скрипт
END_IF




Title: Re: Условие по времени
Post by: Shevrole on August 12, 2016, 02:48:42 PM
Спасиб за примеры
Проблему решил
поставил где нужно HALT (точнее убрал)

Собственно другой вопрос
цикл должен срабатывать каждый час в 00 минут 00 секунд
т.е. скрипт будет гоняться целый час, не сильно ли это "вредно"
есть ли смысл в такой конструкции
    IF(($_time_m = 0)&($_time_s = 0)) // условие будет срабатывать в 0 минут и 0 секунд каждого часа
    //скрипт
wait(3590)   
END_IF

Работает ли условие
    IF(($_time_m = *1))
//скрипт
    END_IF
где * любой символ т.е. каждые 10 мин на 11-й, 21-й и т.д. минуте
Title: Re: Условие по времени
Post by: Oraven on August 12, 2016, 03:19:41 PM
если это весь скрипт то правильно так
Code: (clickermann) [Select]
IF($_time_m = 0) // условие будет срабатывать в 0 минут каждого часа
   //скрипт
   wait(3590)
END_IF
WAITMS(100) // задержка для разгрузки процессора

Работает ли условие
    IF(($_time_m = *1))
//скрипт
    END_IF
где * любой символ т.е. каждые 10 мин на 11-й, 21-й и т.д. минуте

Ну естественно нет. Опять у тебя лишние скобки, различай комбинированные и одиночные условия.
Вот рабочий вариант.
Code: (clickermann) [Select]
$m = $_time_m
IF(STRLEN($m) > 1) // если чисел 2а
   IF(STRCUT($m,2,1) = 1) // вырезаем второе число и сравниваем его с 1
      //скрипт
      WAIT(500)
   END_IF
END_IF
WAITMS(100) // задержка для разгрузки процессора
Title: Re: Условие по времени
Post by: Shevrole on August 12, 2016, 04:00:12 PM
если это весь скрипт то правильно так


    IF($_time_m = 0) // условие будет срабатывать в 0 минут каждого часа
       //скрипт
       wait(3590)
    END_IF
    WAITMS(100) // задержка для разгрузки процессора

если условие не выполняется (скрипт запустили в 01 мин или в 32 мин ) то скрипт уходит в бесконечный цикл до выполнения заданного условия.
как можно обыграть эту ситуацию, чтобы не грузить процессор
Title: Re: Условие по времени
Post by: Oraven on August 12, 2016, 05:10:32 PM
Я для кого это написал?
Code: (clickermann) [Select]
WAITMS(100) // задержка для разгрузки процессора
Открой диспетчер задач, запусти скрипт и посмотри на сколько кликер грузит процессор.
У меня показывает нагрузку 0%, но можно выставить и больше, например 500 мс