Тема: AHK: 5 уровневый цикл Loop.
Всем здравствуйте. Написал скрипт в нем цикл в котором выполняются действия, потом в этом же цикле добавил еще цикл, а в том еще цикл и т.д.. В каждом последующем цикле идет проверка ImageSearch, если находит картинку то выполняет действие и переходит на следующий цикл, а если не находит то выходит из цикла. Но из самого первого цикла не могу выйти, что то не могу додуматься как.
Loop
{
; Ищем есть картинка в окне или нет
ImageSearch, FoundX, FoundY, 96, 256, 325, 431, %A_ScriptDir%\img\PUST_images.png
sleep, 2000
If ErrorLevel = 1
{
; Если не пустое поле картинки
Sleep, 350
Send, {Insert}
; Если поле картинки пустое, значит добавляем доп картинки
If ErrorLevel = 0
{
Sleep, 500
Send, {Ins} ; 2ая картинка
Loop
{
;поиск голубой рамки выделения картинки 2ой картинки
ImageSearch, FoundX, FoundY, 298, 102, 425, 219, %A_ScriptDir%\img\1CBlue.png
Sleep, 1000
if ErrorLevel = 0
{
Sleep, 350
Send, {Enter}
;3я картинка
Sleep, 500
Send, {Insert}
;поиск голубой рамки выделения картинки 3ой картинки
Loop
{
ImageSearch, FoundX, FoundY, 434, 100, 552, 215, %A_ScriptDir%\img\1CBlue.png
Sleep, 1000
If ErrorLevel = 0
{
Sleep, 350
Send, {Enter}
;4ая картинка
Sleep, 500
Send, {Insert}
;поиск голубой рамки выделения картинки 4ой картинки
Loop
{
ImageSearch, FoundX, FoundY, 173, 218, 282, 335, %A_ScriptDir%\img\1CBlue.png
Sleep, 1000
If ErrorLevel = 0
{
Sleep, 350
Send, {Enter}
;5ая картинка, она же последняя
Sleep, 500
Send, {Insert}
;поиск голубой рамки выделения картинки 5ой картинки
Loop
{
ImageSearch, FoundX, FoundY, 305, 219, 426, 345, %A_ScriptDir%\img\1CBlue.png
Sleep, 1000
If ErrorLevel = 0
{
Sleep, 350
Send, {Enter}
}
;Если нет 5ой картинки
If ErrorLevel = 1
{
Sleep, 200
Send, {Escape}
Sleep, 200
break
}
}
}
; Если нет 4ой картинки
If ErrorLevel = 1
{
Sleep, 200
Send, {Escape}
Sleep, 200
break
}
}
}
; Если нет 3ей картинки
If ErrorLevel = 1
{
Sleep, 200
Send, {Escape}
Sleep, 200
break
}
}
}
; Если нет 2о1 картинки
If ErrorLevel = 1
{
Sleep, 350
Send, {Escape}
Sleep, 350
break
}
}
}
;Пауза между поисками
Sleep, 500
}
Я удалил все лишнее, оставил только циклы, для удобства а то там почти 300 строчек вышло.