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

Основной раздел => Общие вопросы => Topic started by: 3333333333 on November 08, 2016, 11:03:51 PM

Title: [РЕШЕНО]таймер обратного отсчёта
Post by: 3333333333 on November 08, 2016, 11:03:51 PM
Привет. Уважаемые знатоки как сделать таймер обратного отсчёта времени или чтобы таймер задержки выполнялся 1 раз, а на следующий цикл, без задержки
, пример из шаблона
Code: (clickermann) [Select]
$T_Z=60
IF($time < $_time_t)
   // условие сработает снова через 60 сек

   $time = $_time_t + $T_Z
END_IF
как задать может быть сброс переменной, чтобы на следующем цикле не было задержки или обратный отсчёт.
Title: Re: таймер обратного отсчёта
Post by: Золотой on November 08, 2016, 11:15:43 PM
Code: (clickermann) [Select]
$T_Z=60  // указать время задержки в секундах

IF($var = 0)// выполнялся 1 раз, а на следующие циклы, без задержки
   WAIT($T_Z) // задержка выполнения
   $var = 1
END_IF

Title: Re: таймер обратного отсчёта
Post by: Золотой on November 08, 2016, 11:21:33 PM
Code: (clickermann) [Select]
//  как сделать таймер обратного отсчёта времени 

DEFINE($T_Z,60) // указать время задержки в секундах

IF($var = 0)// выполнялся 1 раз, а на следующие циклы, без задержки
  $T_Z=INPUTBOX("таймер с задержкой скрипта и обратный отсчёт", $T_Z, $T_Z)// задержка выполнения,  можно снять нажав кнопку
   $var = 1
END_IF
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 08, 2016, 11:29:02 PM
в первом варианте скрипт выполнился 1 раз и всё, молчание до бесконечности, смотрю 2й, может "тело" не там?
Code: (clickermann) [Select]
$T_Z=60  // указать время задержки в секундах
 
IF($var = 0)// выполнялся 1 раз, а на следующие циклы, без задержки
   WAIT($T_Z) // задержка выполнения
   $var = 1
HINTPOPUP("Сообщение", "Заголовок")
   
END_IF
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 08, 2016, 11:36:17 PM
2 вариант работает также как и первый 1 раз и всё молчание
Code: (clickermann) [Select]
DEFINE($T_Z,60) // указать время задержки в секундах
 
IF($var = 0)// выполнялся 1 раз, а на следующие циклы, без задержки
  $T_Z=INPUTBOX("таймер с задержкой скрипта и обратный отсчёт", $T_Z, $T_Z)// задержка выполнения,  можно снять нажав кнопку
   $var = 1
HINTPOPUP("Сообщение", "Заголовок") //тело
   
END_IF
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 08, 2016, 11:44:36 PM
таким образом задержка выполняется по формуле 60секунд->выполнение команды+бесконечная задержка, задача совсем другая
Title: Re: таймер обратного отсчёта
Post by: Золотой on November 08, 2016, 11:46:05 PM
опишите задачу, что вы собрались задерживать, как вас правильно понять?
Title: Re: таймер обратного отсчёта
Post by: Золотой on November 08, 2016, 11:50:38 PM
В данном случае , вы смеётесь только над своими собственными глупостью и косноязычием.

Code: (clickermann) [Select]
 
DEFINE($T_Z,60)  // указать время задержки в секундах

IF($var = 0)// выполнялся 1 раз, а на следующие циклы, без задержки
  $T_Z=INPUTBOX("таймер с задержкой скрипта и обратный отсчёт", $T_Z, $T_Z)// задержка выполнения,  можно снять нажав кнопку
   $var = 1
END_IF

HINTPOPUP("Сообщение", "Заголовок") //тело
WAIT(3)

Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 12:00:04 AM
да, спасибо 3 вариант в тему, не ошибается тот, кто ничего не делает...извиняюсь
...Некий золотых дел мастер, работая в мастерской, непрестанно употреблял имя Божие всуе: или как клятву, или как присказку. Паломник, проходивший через то селение, услышал эти слова и был крайне возмущен. Он громко позвал мастера по имени, чтобы тот вышел на улицу, а сам спрятался. Мастер вышел, но никого не увидел. Удивившись, вернулся в мастерскую и продолжил работу. Через некоторое время странник вновь зовет его, а когда тот выходит, делает вид, что не звал. Сильно разгневавшись, крикнул он страннику: «Искушаешь меня или шутишь, когда столько работы?». Странник миролюбиво отвечает: «Воистину у Бога значительно больше работы, чем у тебя. Ты же все время поминаешь Его всуе, а на меня обижаешься, что я тебя отвлек. Кто имеет больше оснований сердиться: Бог или ты, золотых дел мастер?» Стыдно стало мастеру, и с тех пор он держал язык за зубами.

 

Пусть же имя Господне, как неугасимая лампада, непрестанно теплится в нашей душе, но не касается нашего языка без значительного и торжественного повода.

 

 

Святитель Николай Сербский
Title: Re: таймер обратного отсчёта
Post by: quant13 on November 09, 2016, 12:02:42 AM
Все он правильно написал (хоть и грубо, в своей манере), как и была поставлена задача.

Code: (Clickermann) [Select]
IF($var = 0)// выполнялся 1 раз, а на следующие циклы, без задержки
   $var = 1
//любой код в этом месте будет выполнятся 1 раз, сюда ставим любую удобную задержку
WAIT(60)
END_IF

// все что идет дальше пойдет по кругу
// сюда и лепим основную задачу
print("Hello, world!")
wait(1)
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 12:32:43 AM
уточняю задачу, необходимо чтобы задержка выглядела в качестве игнорирования выполнения команды, а не задержки всего скрипта
1. Появляются ссылки или Баннеры - работаем
2. Появилось сообщение ссылки или Баннеры появятся через столько-то минут, при чем Баннеры и ссылки имеют разное время задержки
страшно аш жуть, "боюсь" спросить уточнения .... :o
еще раз для примера
Code: (clickermann) [Select]
$T_Z=60
IF($time < $_time_t)
   // условие сработает снова через 60 сек, тело

   $time = $_time_t + $T_Z
END_IF
как задать может быть сброс переменной, чтобы на следующем цикле не было задержки или обратный отсчёт.
Title: Re: таймер обратного отсчёта
Post by: quant13 on November 09, 2016, 12:55:21 AM
тогда так
Code: (Clickermann) [Select]
DEFINE($T_Z,60)  // указать время задержки в секундах. Задается ОДИН раз
IF($var = 0)// выполнялся 1 раз, а на следующие циклы, без задержки
   $var = 1
WAIT($T_Z)
END_IF

// все что идет дальше пойдет по кругу
// сюда и лепим основную задачу
//--//--
IF     // нужное условие , Появилось сообщение ссылки или Баннеры появятся через столько-то минут, (снова нужна задержка) задаем:
   $T_Z=9999 //сколько надо
   $var = 0  //на следующий цикл снова получаем задержку
END_IF

Это же элементарные логические задачи
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 01:48:07 AM
если было бы так просто и не спрашивал
[spoiler]
Code: (clickermann) [Select]
#name "кликер баннеров и ссылок"
// названия рисунков
$bmp_1 = "banner.bmp"
$bmp_2 = "textlink.bmp"
$bmp_3 = "line.bmp"
//названия набора текста
$txt_1 = "клики баннеров"
$txt_2 = "клики выигрышных баннеров"
$txt_3 = "клики текстовых ссылок"
//======переменные=============================
$V = 20 // количество вкладок
$Z =0   // переменная срабатывания ошибки, при отсутствии нахождения картинок
$S_CORR = 0  // коррекция времени
$P = 0
$a=0
$t_r=60  //максимальное время отработки скрипта времени баннера
$t_v = 3  //время просмотра вкладок
//$t_z =0  // время задержки игнорирования
//===Подпрограмма плавного передвижения мыши===
SUB(mouse_move,$MOVE_END_X,$MOVE_END_Y)   
   $MOVE_Start_X = $_xmouse
   $MOVE_Start_Y = $_ymouse
   $MOVE_X = $MOVE_Start_X
   $MOVE_Y = $MOVE_Start_Y
 
   $dist = DIST($MOVE_END_X,$MOVE_END_Y,$MOVE_Start_X,$MOVE_Start_Y)
   $MOVE_step = ($dist-1)/INT(SQRT($dist))
   $MOVE_X_step = ($MOVE_END_X-$MOVE_Start_X)/$MOVE_step
   $MOVE_Y_step = ($MOVE_END_Y-$MOVE_Start_Y)/$MOVE_step
 
   FOR($MOVE_i=0, $MOVE_i < INT($MOVE_step))
      $MOVE_X = $MOVE_X + $MOVE_X_step
      $MOVE_Y = $MOVE_Y + $MOVE_Y_step
      MOVE(INT($MOVE_X) + RND(-2,2), INT($MOVE_Y) + RND(-2,2))
      WAITMS(RND(3,9)) // задержка при движении по точкам случайная скорость
   END_CYC   
END_SUB
 
SUB(m_move,$M_X,$M_Y)
   $MOVE_MID_X = INT(($_xmouse+$M_X)/2)
   $MOVE_MID_Y = INT(($_ymouse+$M_Y)/2)
   $otx = INT(ABS($_xmouse - $M_X) * 0.12)
   $oty = INT(ABS($_ymouse - $M_Y) * 0.12)
   mouse_move($MOVE_MID_X+RND(-$otx,$otx), $MOVE_MID_Y+RND(-$oty,$oty))
   mouse_move($M_X,$M_Y)
   MOVE($M_X,$M_Y)
END_SUB
//=============================================
//=Подпрограмма поиска текстовых ссылок========
SUB(KST, $n_txt)
waitms(100 + $S_CORR)


KEYDOWN (#CTRL)
WAITMS (50+ $S_CORR)
KEYDOWN (#F)                 
WAITMS (50+ $S_CORR)
KEYUP (#F)
KEYUP (#CTRL)
KEYSTRING($n_txt)
KEYDOWN(#ESC)
WAITMS (50+ $S_CORR)
KEYUP(#ESC)
KEYDOWN(#ENTER)
WAITMS (50+ $S_CORR)
KEYUP(#ENTER)
UNDEFINE($n_txt)
END_SUB
//=============================================

//=Подпрограмма копирования в буфер, времени задержки
SUB(mysub)
waitms(50 + $S_CORR)
  KEYDOWN (#CTRL)
  WAITMS (50+ $S_CORR)
  KEYDOWN (#F)                 
  WAITMS (50+ $S_CORR)
  KEYUP (#F)
  KEYUP (#CTRL)
  KEYSTRING("баннеры появятся через ")
  KEYDOWN(#ESC)
              WAITMS (50+ $S_CORR)
            KEYUP(#ESC)
            waitms(50 + $S_CORR)
FOR($a=0,$a<3) // повторяем 3 раза, произвёл работу над ошибками задал значение переменной $a=0
       waitms(50 + $S_CORR)
           KEYDOWN (#CTRL)
        WAITMS (50+ $S_CORR)
       KEYDOWN (#SHIFT)
         KEYPRESS(#RIGHT)
             KEYDOWN(#RIGHT)                 
             WAITMS (50+ $S_CORR)
               KEYUP (#SHIFT)
               KEYUP(#RIGHT)
                KEYUP (#CTRL)
 END_CYC

  KEYDOWN (#CTRL)
  WAITMS (50+ $S_CORR)
  KEYDOWN (#C)
  WAITMS (50+ $S_CORR)
  KEYUP (#C)
  KEYUP (#CTRL)

  $str = FROMCLIP()
  $t_z = strfilter($str, "0123456789", 1 )
END_SUB
//=============================================

//=Подпрограмма поиска картинок================


SUB(FIND, $name_image,$startcoord_X,$startcoord_Y)
 



 SCANPICTURE($ARR_SCAN, $startcoord_X,$startcoord_Y, $_xmax,$_ymax, $name_image, -1, 100)

  $ARR_NUM = 0
   WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
    $X = $ARR_SCAN [$ARR_NUM]
    INC($ARR_NUM,1)
    $Y = $ARR_SCAN [$ARR_NUM]
    INC($ARR_NUM,1)
    WAITMS(500+ $S_CORR)
$Z = $X
   

     HINTPOPUP($name_image, "Picture")
   
 END_CYC


END_SUB   
//=============================================

DEFINE($time, $_time_t + $t_z*60) // объявляю задержку
//=============================================


 //Баннеры
waitms(100 + $S_CORR)
  lDown(1533,749)
waitms(50 + $S_CORR)
  lUp(1533,749)
waitms(50 + $S_CORR)
//=====вызов текстовой ссылки======
KST($txt_1)
//=============================================

WAIT(RND(15,17)+ $S_CORR)   // ждём загрузку

//=============================================
GETSCREEN
FIND ($bmp_1,0,0)
 $X1 = $X
 $Y1 = $Y
 m_move($X+30, $Y)
 RDOWN($X+30, $Y)

//=============================================

 FIND ($bmp_3,619,567)

//=============================================

LOGWRITE ("Найдено: ", ARRSIZE($ARR_SCAN)/2)


IF(ARRSIZE($ARR_SCAN)/2=2 )


     $X2 = $X
     $Y2 = $Y
            m_move($X+100, $Y)
            RUP($X+100, $Y)
ELSE

           WHEELDOWN (25)  //>>>>
           GETSCREEN
FIND ($bmp_3,0,0)
          WAITMS (700+ $S_CORR)
IF(ARRSIZE($ARR_SCAN)/2=2 )
        m_move($X+100, $Y)
           RUP($X+100, $Y)
           WAIT(RND(3,4)+ $S_CORR)
                  $X2 = $X
                  $Y2 = $Y
             WHEELUP(25)    //<<<
 ELSE
                m_move(692,1015)
              RUP(692,1015) 
               $X2 = 692
              $Y2 = 1015
    END_IF
END_IF
WAITMS (200+ $S_CORR)
 

//===Вычисление дистанции======================

$distance=dist($X1,$Y1,$X2,$Y2)
LOGWRITE ("distance1=",$distance)

UNDEFINE($X1) //если не сбросить переменные, значение будет ложным
UNDEFINE($Y1)
UNDEFINE($X2)
UNDEFINE($Y2)
UNDEFINE($ARR_SCAN)
//==Проверка времени===========================
IF($time < $_time_t)


 
 
//=====вызов текстовой ссылки======
   KST($txt_3)
//=============================================

   WAIT(rnd (6,9)+ $S_CORR) // ждём загрузку

//=вызов=поиск картинок========================
 

GETSCREEN
FIND($bmp_2,0,0)
m_move($X+30, $Y)
RDOWN($X+30, $Y)
$X1 = $X
 $Y1 = $Y
 $P=$Z
//=============================================
 
WAIT(RND(2,5)+ $S_CORR)

//вызов=поиск картинок===========================
FIND ($bmp_3,619,567)
                    LOGWRITE ("Найдено: ", ARRSIZE($ARR_SCAN)/2)
 IF(ARRSIZE($ARR_SCAN)/2=2 )
               m_move($X+100, $Y)
                RUP($X+100, $Y)
                 $X2 = $X
             $Y2 = $Y
              $distance1=dist($X1,$Y1,$X2,$Y2)
                      LOGWRITE ("distance2=",$distance1)
IF($distance1>58)
                       $t_z=0 //спасибо ребятам и само собой как-то получилось
                       WAITMS (200+ $S_CORR)
 
 ELSE
                     mysub() //вызов подпрограммы копирования
                       LOGWRITE ("Найдено время задержки: ", $t_z)  // Если не верно

      END_IF
ELSE
                  WHEELDOWN (15)//>>>>
                  WAITMS (700+ $S_CORR)
                WHEELDOWN (15)//>>>>
              WAITMS (700+ $S_CORR)
GETSCREEN
   FIND ($bmp_3,0,0)
IF(ARRSIZE($ARR_SCAN)/2=2 )
                  m_move($X+100, $Y)
                   RUP($X+100, $Y)
                   $X2 = $X
                   $Y2 = $Y
                WHEELUP(30)
 ELSE
               m_move(692,1015)
             RUP(692,1015) 
 $X2 = 692
 $Y2 = 1015

 
     END_IF
END_IF
$time = $_time_t + $t_z*60 //
INIWRITE ("time.ini", "Time1", $time1, "TIME")
UNDEFINE($X1) //если не сбросить переменные, значение будет ложным
UNDEFINE($Y1)
UNDEFINE($X2)
UNDEFINE($Y2)
UNDEFINE($ARR_SCAN)

   $time = $_time_t + $t_z*60
END_IF //конец проверки времени
//=============================================
 
// коррекция окна
m_move(128,49)
 lDown(128,49)
waitms(50 + $S_CORR)
  lUp(128,49)
waitms(50 + $S_CORR)
  KEYDOWN (#CTRL)
WAITMS (50+ $S_CORR)
KEYDOWN (#1)
WAITMS (50+ $S_CORR)
KEYUP (#1)
KEYUP (#CTRL)

WAIT(rnd(10,15))
//=============================================

//======вычисление количества баннеров и ссылок (вкладок)============
IF(82!ROUND(($distance+$distance1),0), $V!0, $t_v!0)
   $V= ROUND(($distance/105)+($distance1/105),0)
   $t_v = ROUND($t_r/$V, 0)
   LOGWRITE ("v:",$V)
   LOGWRITE ("t_v:",$t_v)
ELSE
   $V=1
   $t_v=60
END_IF
//=============================================

//<<<<

//WAIT(RND(5,11)+ $S_CORR)
//=============================================
IF($Z!0 )

//перемещение по вкладкам

FOR($a=0,$a<$V) // повторяем 12 раза добавил значения переменных хотя хз и без этого работает

// тело
KEYDOWN (#CTRL)
WAITMS (50+ $S_CORR)
KEYDOWN (#PAGEDOWN)
WAITMS (50+ $S_CORR)
KEYUP (#PAGEDOWN)
KEYUP (#CTRL)
//=============================================
// нажатие 5
//KEYDOWN (#CTRL)
//WAITMS (50+ $S_CORR)
//KEYDOWN (#F)
//WAITMS (50+ $S_CORR)
//KEYUP (#F)
//KEYUP (#CTRL)
//KEYSTRING("5")
//GETSCREEN ( 885,125, 1049,153)

//IF_PIXEL_IN(885,125, 1049,153, 8117049)
//   KEYDOWN(#ESC)
//WAITMS (500+ $S_CORR)
//KEYUP(#ESC)
//KEYDOWN(#ENTER)
//WAITMS (50+ $S_CORR)
//KEYUP(#ENTER)
 //  WAITMS(100)
 // 8117049
//END_IF
WAIT ($t_v+ $S_CORR)

END_CYC

KEYDOWN (#CTRL)
WAITMS (50+ $S_CORR)
KEYDOWN (#1)
WAITMS (50+ $S_CORR)
KEYUP (#1)
KEYUP (#CTRL)                                 
//=============================================
WAIT(2+ $S_CORR)  //ожидаем отработку скрипта
//=============================================

m_move(42,38)
RCLICK(42,38)  //   закрытие вкладок




       WAIT(2+ $S_CORR)
  m_move(131,172)
LCLICK(131,172)  // вкладка "закрыть вкладки справа"
   WAIT(2+ $S_CORR)
    WAIT(rnd(2,4)+ $S_CORR)
    m_move(914,550)
     LCLICK(914,550)
     WAIT(6+ $S_CORR)
//=============================================
//LCLICK(290,12)     //очистка  мышкой
//WAIT(1+ $S_CORR)
//LCLICK(319,155)
//WAIT(2+ $S_CORR)
//LCLICK(110,439)
//WAIT(2+ $S_CORR)
//LCLICK(968,400)
//WAITMS(730+ $S_CORR)
//LCLICK(968,400)
//WAIT(3+ $S_CORR)
//LCLICK(418,44)
KEYDOWN (#CTRL)                    //clear  клавиатурой
WAITMS (50+ $S_CORR)
KEYDOWN (#SHIFT)
WAITMS (50+ $S_CORR)
KEYDOWN(#DELETE)
 WAITMS (50+ $S_CORR)
KEYUP (#SHIFT)
KEYUP (#CTRL)
 KEYUP (#DELETE)
WAITMS (2500+ $S_CORR)

KEYDOWN(#ENTER)
WAITMS (50+ $S_CORR)
KEYUP(#ENTER)
WAITMS(300+ $S_CORR)
//=============================================
// закрытие лишних вкладок
//WAIT(5+ $S_CORR)
//RCLICK(78,42)
//WAIT(2+ $S_CORR)
//LCLICK(180,172)
//WAIT(3+ $S_CORR)
//LCLICK(910,553)
//WAIT(3 + $S_CORR)

// коррекция  окна
 
waitms(50 + $S_CORR)
  KEYDOWN (#CTRL)
WAITMS (50+ $S_CORR)
KEYDOWN (#1)
WAITMS (50+ $S_CORR)
KEYUP (#1)
KEYUP (#CTRL)

WAIT(RND(3,4)+ $S_CORR)
ELSE
LOGWRITE ("ERROR")
EXECUTE("cmd.exe","/C taskkill /F /IM firefox.exe /T")
WAIT(60+ $S_CORR)
EXECUTE("firefox.exe","http://www.сайт с баннерами и ссылками")
WAIT(60+ $S_CORR)
END_IF

//=============================================
// полная очистка
//IF($time1 < $_time_t)
//$time1 = $_time_t + $t_z*60
//INIWRITE ("time.ini", "Time1", $time1, "TIME")
//запись в файл time.ini времени следующего срабатывания условия
// здесь пишутся необходимые действия

//=============================================

//=============================================


 //KEYDOWN (#CTRL)                    //clear
//WAITMS (50+ $S_CORR)
//KEYDOWN (#SHIFT)
//WAITMS (50+ $S_CORR)
//KEYDOWN(#DELETE)
// WAITMS (50+ $S_CORR)
//KEYUP (#SHIFT)
//KEYUP (#CTRL)
// KEYUP (#DELETE)
//WAITMS (2500+ $S_CORR)

//KEYDOWN(#ENTER)
//WAITMS (50+ $S_CORR)
//KEYUP(#ENTER)
//WAITMS(300+ $S_CORR)
//=============================================



UNDEFINE($Z)

 //конец цикла
[/spoiler]
Title: Re: таймер обратного отсчёта
Post by: Oraven on November 09, 2016, 07:44:22 AM
Пройдемся по ошибкам...

Строка 60    KEYSTRING(STRCONCAT($n_txt)) - тут нечего объединять нужно писать KEYSTRING($n_txt)

Строка 85    FOR($a,$a<3) // повторяем 3 раза - цикл выполнится 1 раз так как $a не сбрасывается в начальное значение. Пиши  FOR($a=0,$a<3)

Строка 118 130   SCANPICTURE($ARR_SCAN, $startcoord_X,$startcoord_Y, $_xmax,$_ymax, STRCONCAT($name_image), -1, 100)
Снова объединяем одну переменную. STRCONCAT($name_image)

Условие на строке 171 имеет два ELSE! Строки 178 и 190. Это уже серьезная ошибка.

Строка 205 UNDEFINE($X1,$Y1,$X2,$Y2) - Нельзя "ундефинять" в одной команде несколько переменных! Не верный синтаксис.

И снова условие на строке 236 имеет два ELSE! Строки 252 и 264

Строка 330    FOR($a,$a<$V) // повторяем 12 раза цикл снова без начального параметра, пиши FOR($a=0,$a<$V)

Строка 476 зависшее окончание END_IF Относится видать к закомментированному коду выше. Закомментируй его тоже.

Вижу ты не знаком с авто расстановкой отступов. В редакторе нажми "Волшебную палочку" Это позволит визуально лучше различать код.
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 08:17:51 AM
спасибо за работу над ошибками Уважаемый
я в некотором замешательстве :o , вначале скрипта я задал переменную $а=0 для циклов for, работают без ошибок не жалуюсь
а по теме есть что подсказать?
Title: Re: таймер обратного отсчёта
Post by: Oraven on November 09, 2016, 08:35:52 AM
спасибо за работу над ошибками Уважаемый
я в некотором замешательстве :o , вначале скрипта я задал переменную $а=0 для циклов for, работают без ошибок не жалуюсь
а по теме есть что подсказать?


У тебя цикл фор с этой переменной может за проход скрипта вызываться не один раз а работать в таком варианте у тебя он будет только первый раз.

Добавь дополнительную переменную и логический оператор ИЛИ. Таким образом условия будет срабатывать или по таймеру или по значению переменной.
Code: (clickermann) [Select]
$T_Z=60
IF(($time < $_time_t)|($check_timer = 1))
   // условие сработает снова через 60 сек
 
$check_timer = 1 // в следующий проход условие сработает сразу
   $time = $_time_t + $T_Z
END_IF
Title: Re: таймер обратного отсчёта
Post by: Vint on November 09, 2016, 09:27:52 AM
вначале скрипта я задал переменную $а=0 для циклов for, работают без ошибок не жалуюсь
а по теме есть что подсказать?

Это по теме. Нельзя решать вопрос дальше пока большие проблемы в логике выполнения.

То что задал в начале $а=0 это хорошо, но переменная $а используется в двух циклах, один из которых, к тому же, в подпрограмме которая вызывается не один раз.
При таком написании сработает только самый первый FOR с переменной $а, все остальные пропустятся.
Есть конечно вариант, что ты используешь старую версию Clickermann, минимум младше 4.10. Тогда так будет работать. Начиная с 4.10 - нет.
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 09:30:32 AM
Уважаемый ORAVEN
в целях проверки, методом "научного тыка", скрипт работает без задержек привожу лог

Code: (clickermann) [Select]
$T_Z=60
IF(($time < $_time_t)|($check_timer = 1))
   // условие сработает снова через 60 сек
 LOGWRITE ("Сообщение")
$check_timer = 1 // в следующий проход условие сработает сразу
   $time = $_time_t + $T_Z
END_IF

9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
9:14:43 Сообщение
может в аппаратуре (intel 7) что не так или ОС(XP, win7, win10), но форы работают к счастью исправно 7х24 круглосуточно, т.е. $a=0  и т.д.
единственный трабл с этой задержкой времени.
ответ Vint кликерманн 4.12 может парадокс?
Title: Re: таймер обратного отсчёта
Post by: Vint on November 09, 2016, 09:46:15 AM
Да не вопрос, работает пусть работает
Code: (clickermann) [Select]
$a = 0

FOR($a, $a < 2)
    LOGWRITE("Цикл 1  $a = ", $a)   
END_CYC

FOR($a, $a < 2)
    LOGWRITE("Цикл 2  $a = ", $a)   
END_CYC

Лог:
Code: [Select]
9:41:14 Цикл 1  $a = 0
9:41:14 Цикл 1  $a = 1
9:41:14 Цикл 1  $a = 0
9:41:14 Цикл 1  $a = 1
9:41:14 Цикл 1  $a = 0
9:41:14 Цикл 1  $a = 1


А по задержке... Ты выражаешься как-то не понятно. У тебя WAIT и WAITMS не работают что-ли?
Тогда комп перезагрузи.

Просто приводишь лог, а код не пишешь каккой. Толку с этого лога. В этой теме уже десяток вариантов накидали тебе, какой ты используешь хз.
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 10:26:09 AM
Vint по работе цикла for скрипта если не верите
извиняюсь если кого-то отрвал от важных дел

С уважением,
3333333333333333

Title: Re: таймер обратного отсчёта
Post by: Золотой on November 09, 2016, 10:32:05 AM
Vint по работе цикла for скрипта если не верите
Здравствуйте,

 Присоединяйтесь к конференции, щелкнув по ссылке:
http://go.teamviewer.com/v11/m24772824

 ID конференции: m24-772-824


С уважением,
3333333333333333


www.teamviewer.com - Интерактивные конференции и демонстрация экрана без проблем
Конкретно чувачёк стрелку забил, 8) по понятиям не прийти на стрелку западло, чисто-конкретно СУПЕРМОДЕРАТОРЫ АВТОРИТЕТ СРЕДИ КОДЯЩЕЙ БРАТВЫ ПОТЕРЯЮТ  >:( ;) ;D
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 10:38:41 AM
Уважаемый Vint
вариантов много, спасибо ребята всем кто откликнулся, но для моего примера я не вижу, а вам Vint отдельная благодарность, потому что в основном весь код написан по Вашим примерам ("три в ряд", распознование чисел и текста и т.п.)
Title: Re: таймер обратного отсчёта
Post by: Vint on November 09, 2016, 10:55:10 AM
...по понятиям не прийти на стрелку западло, чисто-конкретно СУПЕРМОДЕРАТОРЫ АВТОРИТЕТ СРЕДИ КОДЯЩЕЙ БРАТВЫ ПОТЕРЯЮТ  >:( ;) ;D

 ;D не успел прийти. "Конференция уже закончилась".
Приехал, а там никого, одни трупы.
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 11:12:47 AM
назначьте время пожалуйста когда Вам удобно
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 11:15:34 AM
по логике
в вашем примере форы идут подряд, у меня они тоже так срабатывают
Code: (clickermann) [Select]
$a = 0
 
FOR($a, $a < 2)
    LOGWRITE("Цикл 1  $a = ", $a)   
END_CYC
 
FOR($a, $a < 2)
    LOGWRITE("Цикл 2  $a = ", $a)   
END_CYC
у меня в коде совсем по другому, если Вы не заметили
Title: Re: таймер обратного отсчёта
Post by: Vint on November 09, 2016, 11:32:30 AM
по логике
в вашем примере форы идут подряд, у меня они тоже так срабатывают
Второй как раз не срабатывает.

у меня в коде совсем по другому, если Вы не заметили

И что здесь кардинально другого?
Code: (clickermann) [Select]
//...
$a=0
//...

//=Подпрограмма копирования в буфер, времени задержки
SUB(mysub)
    //...
    FOR($a,$a<3) // повторяем 3 раза
        //...
    END_CYC
    //...
END_SUB

//==Проверка времени===========================
IF($time < $_time_t)
    IF(ARRSIZE($ARR_SCAN)/2=2 )
        //...
        IF($distance1>58)
            //...
        ELSE
            mysub() //вызов подпрограммы копирования
            //...
        END_IF
    ELSE
        //...
    END_IF
   
    //===Вычисление дистанции==и=задание времени за д е р ж к и
    //...
    IF($distance1>58)
        //...
    ELSE
        mysub()
        //...
    END_IF
    //...
END_IF
//=============================================

//...
IF($Z!0 )
    //перемещение по вкладкам
    FOR($a,$a<$V) // повторяем 12 раза
        //...
    END_CYC
    //...
END_IF

Если будет второй вызов mysub(), цикл в нём не сработает.
Если будет хоть один вызов mysub(), позже цикл в 43-45 не сработает.
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 11:39:08 AM
да работают, и хз, наверное повезло
Уважаемый Vint у Вас, есть прекрасные примеры взаимодействия автоита с кликерманом, а имеются идеи как скрипт автоита  "FF"(работа с фаерфокс) прикрутить к кликерманну без виртуального сервера Mozrepl (очевидно паленная штука)?
Title: Re: таймер обратного отсчёта
Post by: Vint on November 09, 2016, 11:53:15 AM
я не знаю эти скрипты и не использовал.
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 09, 2016, 11:56:25 AM
ответ
Code: (clickermann) [Select]
//...
$a=0
//...
 
//=Подпрограмма копирования в буфер, времени задержки
SUB(mysub)
    //...
    FOR($a,$a<3) // повторяем 3 раза
        //...
    END_CYC
    //...
END_SUB
 
//==Проверка времени===========================
IF($time < $_time_t)
    IF(ARRSIZE($ARR_SCAN)/2=2 )
        //...
        IF($distance1>58)
            //...
        ELSE
            mysub() //вызов подпрограммы копирования
            //...
        END_IF
    ELSE
        //...
    END_IF
 
    //===Вычисление дистанции==и=задание времени за д е р ж к и
    //...
    IF($distance1>58)
        //...
    ELSE
        mysub()
        //...
    END_IF
    //...
END_IF
//=============================================
 
//...
IF($Z!0 )
    //перемещение по вкладкам
    FOR($a,$a<$V) // повторяем 12 раза
        //...
    END_CYC
    //...
END_IF
он и сейчас работает
единственные ошибки интерпритации выскакивали когда велось вычисление количества вкладок,и то не всегда, тогда, когда дистанция принимала значение "0", на ноль нельзя делить
но я этот код закоментировал
Code: (clickermann) [Select]
//======вычисление колличества баннеров и ссылок (вкладок)============
//IF(82!ROUND(($distance+$distance1),0) $V!0, $t_v!0)
//$V= ROUND(($distance/105)+($distance1/105),0)
//$t_v = ROUND($t_r/$V, 0)
//LOGWRITE ("v:",$V)
//LOGWRITE ("t_v:",$t_v)
//ELSE
//$V=1
//$t_v=60
//END_IF
вот лог с 1 переменной
[spoiler]
13:59:13 cycle 1  $a = 0
13:59:13 cycle 1  $a = 1
13:59:13 cycle 1  $a = 2
13:59:13 cycle 1  $a = 3
13:59:27 distance1:510
13:59:39 distance2:290
13:59:47 t_v:3v:18
13:59:51 cycle 2  $a = 4
13:59:54 cycle 2  $a = 5
13:59:57 cycle 2  $a = 6
14:00:00 cycle 2  $a = 7
14:00:03 cycle 2  $a = 8
14:00:06 cycle 2  $a = 9
14:00:09 cycle 2  $a = 10
14:00:12 cycle 2  $a = 11
14:00:15 cycle 2  $a = 12
14:00:19 cycle 2  $a = 13
14:00:22 cycle 2  $a = 14
14:00:25 cycle 2  $a = 15
14:00:28 cycle 2  $a = 16
14:00:31 cycle 2  $a = 17
14:00:49 cycle 1  $a = 0
14:00:49 cycle 1  $a = 1
14:00:49 cycle 1  $a = 2
14:00:49 cycle 1  $a = 3
14:01:04 distance1:510
14:01:17 distance2:290
14:01:25 t_v:3v:18
14:01:28 cycle 2  $a = 4
14:01:31 cycle 2  $a = 5
14:01:34 cycle 2  $a = 6
14:01:37 cycle 2  $a = 7
14:01:40 cycle 2  $a = 8
14:01:43 cycle 2  $a = 9
14:01:46 cycle 2  $a = 10
14:01:50 cycle 2  $a = 11
14:01:53 cycle 2  $a = 12
14:01:56 cycle 2  $a = 13
14:01:59 cycle 2  $a = 14
14:02:02 cycle 2  $a = 15
14:02:05 cycle 2  $a = 16
14:02:08 cycle 2  $a = 17
14:02:26 cycle 1  $a = 0
14:02:26 cycle 1  $a = 1
14:02:26 cycle 1  $a = 2
14:02:26 cycle 1  $a = 3
14:02:41 distance1:510
14:02:54 distance2:290
[/spoiler]
Title: Re: таймер обратного отсчёта
Post by: Cleoss on November 23, 2016, 03:32:43 AM
Quote
Тему не читал, но раз в теме Золотой, то назревает вопрос по теме: обратный отсчёт -- и Аллаху Акбарс? =)
Title: Re: таймер обратного отсчёта
Post by: 3333333333 on November 23, 2016, 10:19:05 AM
Quote
Тему не читал, но раз в теме Золотой, то назревает вопрос по теме: обратный отсчёт -- и Аллаху Акбарс? =)
Это мне, спам?
Сам ему в личку пиши...
Title: Re: таймер обратного отсчёта
Post by: Cleoss on November 23, 2016, 11:14:21 AM
Да он ночью уже заходил и читал корреспонденцию, так что всё до него уже дошло.
Title: Re: таймер обратного отсчёта
Post by: Золотой on November 23, 2016, 12:53:28 PM
Да он ночью уже заходил и читал корреспонденцию, так что всё до него уже дошло.
спасибо за внимание. ;)