Не получается составить условие, потому, что непонятно что повторять.
Поиск пиксела
Вложенный поиск
"и опять повторяем поиск" -
Какой из них? Последний или оба?
Если повторять только последний выглядеть будет так:
GETSCREEN
IF_PIXEL_IN(0,0,$_xmax,$_ymax, цвет1)
LCLICK($_return1,$_return2)
WAITMS(100)
$rep = 1
WHILE($rep = 1)
GETSCREEN
IF_PIXEL_IN(0,0,$_xmax,$_ymax, цвет2)
$rep = 0
IF_PIXEL_IN(0,0,$_xmax,$_ymax, цвет3)
LCLICK($_return1,$_return2)
WAITMS(100)
ELSE
LCLICK(100,100) // в другом месте
END_IF
ELSE
WAIT(5)
END_IF
END_CYC
ELSE
KEYPRESS(#F5)
WAITMS(1000)
END_IF
И не понятно что делать в конце. "Вот и всё" - это остановить скрипт или начинать всё с начала?
Всегда ставь два стакана!
[spoiler]Программист ставит у кровати два стакана: полный и пустой.
Полный - если проснется и захочет пить.
А пустой... если проснётся, а пить не хочется.[/spoiler]
При описании лучше использовать вместо местоимений конкретные названия или нумерованые "ищем пиксел1, ищем пиксел7... повторяем с места поиска пиксела3...". Не понять что куда вложено должно быть.
END_IF и END_CYC конечно ставить. Ставить там где нужно, тебе видней.
Не пытайся в условиях и циклах писать код подряд, именно строку за строкой. Оперируй сразу блоками вставляя их в нужные места.
Поиск пиксела простой:
IF_PIXEL_IN(0,0,$_xmax,$_ymax, 1)
// нашли1
ELSE
// не нашли1
END_IF
Теперь, если нам нужно если нашли что-то сделать, например, кликнуть в определённое место то так и вставляем
IF_PIXEL_IN(0,0,$_xmax,$_ymax, 1)
LCLICK(100,100)
ELSE
// не нашли1
END_IF
А если не нашли - искать пиксел2. Вот и вкладываем поиск пиксела2 целиком в нужное место.
IF_PIXEL_IN(0,0,$_xmax,$_ymax, 1)
LCLICK(100,100)
ELSE
IF_PIXEL_IN(0,0,$_xmax,$_ymax, 2)
// нашли 2
ELSE
// не нашли 2
END_IF
END_IF
Ну и так дальше.