Author Topic: Не срабатывает IF  (Read 1511 times)

0 Members and 1 Guest are viewing this topic.

Zorg

  • Зашел в гости
  • *
  • Posts: 2
    • View Profile
Не срабатывает IF
« 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 раз, не больше.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Не срабатывает IF
« Reply #1 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]