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

Основной раздел => Общие вопросы => Topic started by: Zorg on March 25, 2016, 11:03:21 AM

Title: Не срабатывает IF
Post by: Zorg on March 25, 2016, 11:03:21 AM
Не работает команда IF
[spoiler]
Code: [Select]
for($q, $q < 999)
$s=0
$q+1
  for($s, $s < 3)
move(910,425)
waitms(100)
  keyDown(85)
  waitms(10)
  keyUp(85)
move(910,485)
waitms(100)
  keyDown(85)
  waitms(10)
  keyUp(85)
move(1250,485)
waitms(100)
  keyDown(85)
  waitms(10)
  keyUp(85)
$s+1
end_cyc
IF($q < 4)    //проблема
move(1710,190)
waitms(10)
  keyDown(#UP)
  waitms(10)
  keyUp(#UP)
move(1250,485)
  keyDown(40)
  waitms(10)
  keyUp(40)
END_IF
WAIT (1)
$q+1
end_cyc
[/spoiler]

Как ток не пытался решить эту проблему.
И отдельную переменную выносил за цикл и внутри цикла наращивал счётчик
этой переменной, сейчас попробовал переменную самого цикла вставить в конструкцию.
Всё равно код внутри конструкции выполняется, хотя должен выполниться всего 5-6 раз, не больше.
Title: Re: Не срабатывает IF
Post by: Vint on March 25, 2016, 11:11:14 AM
Что это такое?
Code: (clickermann) [Select]
$q+1
проблема решается просто, не нужно самовольничать с синтаксисом.
Code: (clickermann) [Select]
$q = $q+1или
Code: (clickermann) [Select]
INC($q)
И в цикле FOR переменная наращивается сама, не нужно её вручную теребить.
Если версия 4.11, то нужно задавать начальное значение переменной в самом цикле (если это нужно).
[spoiler]
Code: (clickermann) [Select]
for($q=0, $q < 999)
   for($s=0, $s < 3)
      move(910,425)
      waitms(100)
      keyDown(85)
      waitms(10)
      keyUp(85)
      move(910,485)
      waitms(100)
      keyDown(85)
      waitms(10)
      keyUp(85)
      move(1250,485)
      waitms(100)
      keyDown(85)
      waitms(10)
      keyUp(85)
   end_cyc
   IF($q < 4)
      move(1710,190)
      waitms(10)
      keyDown(#UP)
      waitms(10)
      keyUp(#UP)
      move(1250,485)
      keyDown(40)
      waitms(10)
      keyUp(40)
   END_IF
   WAIT (1)
end_cyc
[/spoiler]