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

Основной раздел => Общие вопросы => Topic started by: Virikidor on October 20, 2016, 11:15:03 PM

Title: Почему цикл в цикле не работает?
Post by: Virikidor on October 20, 2016, 11:15:03 PM
Здравствуйте. Помогите. Почему цикл в цикле не  работает? Делает только одну строку .  Скрипт делает нажатия  в виде ромба. Делает одну только "грань"
Code: (clickermann) [Select]
//верхний угол начальная точка
$x=
$y=
//левый край
$x2=
//правый край
$x3=
//смещение по х
$sx=2
//смещение по у
$sy=1
//задержка
$t=10
//количество точек в ряду
$z=($x-$x2)/$sx
//количество рядов
$m=($x3-$x2)/$sx

FOR ($n, $n<$m)
 $xn=$x
 $yn=$y   
 $x=$xn
 $y=$yn 
   FOR($g, $g<$z)
        move($x,$y)
        vaitms($t)
        lclick($x,$y)
        vaitms($t)
        //????????
        $x=$x-$sx
        $y=$y+$sy       
    END_CYC
  $x=$xn+$sx
  $y=$yn+$sy
END_CYC
Title: Re: Почему цикл в цикле не работает?
Post by: dramster on October 21, 2016, 12:24:51 AM
чтото я не догнал что за принцип работы   :-\ , ну да и ладно  :D .
Quote
Почему цикл в цикле не  работает?
потомучто наращиваемая переменная в цикле фор не обнуляется, а значит FOR($g, $g<$z) выполнится только один раз (одна грань). поэтому нужно обнулять переменную (либо присваивать ей нужное значение) FOR($g=0, $g<$z). ну а если это всё часть большого скрипта, и эта часть выполняется не один раз, то и в цикле FOR ($n, $n<$m) также нужно обнулять $n .
и небольшая ошибка в написании задержки, она у тебя не работала, не  vaitms, а waitms.
Code: (clickermann) [Select]
FOR ($n=0, $n<$m)
   $xn=$x
   $yn=$y
   $x=$xn
   $y=$yn
   FOR($g=0, $g<$z)
      move($x,$y)
      waitms($t)
      lclick($x,$y)
      waitms($t)
      $x=$x-$sx
      $y=$y+$sy
   END_CYC
   $x=$xn+$sx
   $y=$yn+$sy
END_CYC 
Title: Re: Почему цикл в цикле не работает?
Post by: Virikidor on October 21, 2016, 08:49:21 AM
Спасибо. Я из примера в шаблоне кликера ставил условия, а там не было обнуления переменной. Вот я и подумал что там по умолчанию ноль ))
Скрипт Садит деревья в ЗФ по диагонали с верхней точки в левую сторону. Получается такой ромб.
P.S. прошу прощения если я не туда писал. Еще не разобрался с этим форумом. Тем более я с мобильного )) Не привык создавать темы почем зря.
Title: Re: Почему цикл в цикле не работает?
Post by: Vint on October 21, 2016, 09:11:53 AM
Спасибо. Я из примера в шаблоне кликера ставил условия, а там не было обнуления переменной.

А почему сначала не посмотреть в справку. Там всё есть. Это же лучше. И понятней будут особенности синтаксиса.
Title: Re: Почему цикл в цикле не работает?
Post by: Virikidor on October 21, 2016, 09:20:27 AM

А почему сначала не посмотреть в справку. Там всё есть. Это же лучше. И понятней будут особенности синтаксиса.
Я непонятно откуда качал кликер и у меня справка пустая почему-то. Попробую с этого сайта скачать. Если есть где на форуме нечто вроде справки или ЧАВО то подскажите плиз ссылку. А то вопросы остались еще. Не создавать же тему на каждый вопрос.
Title: Re: Почему цикл в цикле не работает?
Post by: Vint on October 21, 2016, 09:38:16 AM
Я непонятно откуда качал кликер и у меня справка пустая почему-то. Попробую с этого сайта скачать. Если есть где на форуме нечто вроде справки или ЧАВО то подскажите плиз ссылку.

Это встроенная защита Windows. К кликеру отношения не имеет.
Но так как вопрос частый, даже в корне кликера есть текстовый файл с громкоговорящим названием
"Если не открывается справка.txt"
В нём ссылка ведёт  сюда
http://crapware.aidf.org/forum/index.php?topic=1031.0
Title: Re: Почему цикл в цикле не работает?
Post by: Virikidor on October 21, 2016, 10:07:01 AM
Это встроенная защита Windows.
Капец. Кто бы мог подумать. Я плачу ))
Спасибо за наводку )))
Title: Re: Почему цикл в цикле не работает?
Post by: Золотой on October 21, 2016, 11:01:28 AM
Как в анекдоте " ... и десантник этот, ну так надоел!"
Всё-же нужно внести изменения в шаблон, FOR($a,$a<3) // повторяем 3 раза
по статистике  в него вляпываются сейчас чаще, чем в коровьи лепёшки.  ;D
Title: Re: Почему цикл в цикле не работает?
Post by: Vint on October 21, 2016, 11:26:12 AM
Я бы с радостью. Могу и свой дать, но вот включат ли его.
Там кстати мне и не нравится чехарда с регистром для половины шаблонов.
Сделал у себя всё заглавными и без лишнего.
Title: Re: Почему цикл в цикле не работает?
Post by: Virikidor on October 21, 2016, 11:30:27 AM
Кстати. Язык регистро зависимый или нет?
Title: Re: Почему цикл в цикле не работает?
Post by: Золотой on October 21, 2016, 11:45:53 AM
Кстати. Язык регистро зависимый или нет?
нет, а проверить это быстрее чем написать вопрос. ;)
Title: Re: Почему цикл в цикле не работает?
Post by: esporao on September 21, 2018, 09:16:00 PM
Сделал цыкл в цыкле. Должно работать 3 раза и останавливаться. А по факту работает далее. Тоесть не 3 а до безконечности.

Code: [Select]
FOR ($i=0, $i<3)                   //должен запускать вложенный цыкл 3 раза и остановиться
LCLICK(970,870)
WAIT(1)
      FOR ($i=0, $i<28)             //вложеный цыкл. делает 28 нажатий, и завершаеться
         LCLICK(1000,500)
         WAIT(1)
      END_CYC
END_CYC

Помогите найти ошибку.
Title: Re: Почему цикл в цикле не работает?
Post by: Космич on September 21, 2018, 10:33:31 PM
Code: (clickermann) [Select]
FOR($i = 0, $i < 3)                   //должен запускать вложенный цыкл 3 раза и остановиться
   LCLICK(970,870)
   WAIT(1)
   FOR($a = 0, $a < 28)             //вложеный цыкл. делает 28 нажатий, и завершаеться
      LCLICK(1000,500)
      WAIT(1)
   END_CYC
END_CYC

HALT
Title: Re: Почему цикл в цикле не работает?
Post by: Oraven on September 22, 2018, 08:01:42 AM
Сделал цыкл в цыкле. Должно работать 3 раза и останавливаться. А по факту работает далее. Тоесть не 3 а до безконечности.

По умолчанию кликер выполняет код по кругу.
Что бы остановить выполнение в конце нужно написать команду HALT
Title: Re: Почему цикл в цикле не работает?
Post by: esporao on September 24, 2018, 12:58:13 AM
Спасибо большое. Все теперь работает.

Выходит было две ошибки:
- нужно было разные переменные использовать для цыклов
- и принудительно завершать работу скрипта по завершении.
Title: Re: Почему цикл в цикле не работает?
Post by: Vint on September 24, 2018, 09:56:04 AM
Спасибо большое. Все теперь работает.

Выходит было две ошибки:
- нужно было разные переменные использовать для цыклов
- и принудительно завершать работу скрипта по завершении.

Нет, было три ошибки. Ещё одна не исправлена - слово цИкл.
Title: Re: Почему цикл в цикле не работает?
Post by: And_Ro on September 27, 2018, 10:00:11 PM
 ;D ;D ;D +5 !!! тема отдельная, но правописание, порой, просто поражает  :-[