В общем опять возвращаюсь к помощи. Я на финишной прямой. Вот коды нескольких файлов cms.
1- основной
[spoiler]
varka:
//WAITMS(500000000)
WAITMS(500)
MOVE(930,463)
waitms(300)
LDOWN(930,463)
waitms(60)
LUP(930,463)
waitms(300)
//najatie na chaos machine
//regular
WAITMS(200)
MOVE(957,427)
waitms(100)
LDOWN(957,427) // 2431013
waitms(60)
LUP(957,427)
waitms(200)
//regular combination
//proverka na nali4ie banki v inventare
GETSCREEN
IF_PIXEL_IN(1199,622, 1445,740, 460719)
logwrite("Áàíêà íàéäåíà")
MOVE($_return1, $_return2)
waitms(200)
LDOWN($_return1, $_return2)
WAITMS(100)
LUP($_return1, $_return2)
waitms(200)
//perekladuvanie banki iz inventarya
MOVE(956,423)
WAITMS(200)
LDOWN(956,423)
WAITMS(60)
LUP(956,423)
waitms(200)
goto(combine)
else
logwrite("NET BANOK")
#include("shop_banki.cms")
//proverka na nali4ie banki v inventare
end_if
//COMBINE
combine:
MOVE(1020,801)
waitms(200)
LDOWN(1020,801)
WAITMS(100)
LUP(1020,801)
waitms(200)
////combine
//// podtverjdenie
MOVE(866,481) // 9670800
waitms(100)
LDOWN(866,481)
waitms(100)
LUP(866,481)
waitms(300)
//PODTVERJDENIE
waitms(2000)
// PROVERKA NA SGORANIE
GETSCREEN
IF_PIXEL_IN(909,367, 909,367, 1447446)
WAITMS(200)
waitms(200)
KEYDOWN(#V)
waitms(60)
KEYUP(#V)
waitms(1000)
goto(varka)
//INA4E PROVERKA NA USPEWNOST
ELSE
WAITMS(300)
MOVE(902,361)
WAITMS(400)
LDOWN(909, 367)
waitms(60)
LUP(909,367)
WAITMS(400)
//peremewenie svarki v invent
GETSCREEN
IF_PIXEL_IN (1208,565, 1437,731, 1513239)
MOVE($_return1, $_return2)
WAITMS(300)
LDOWN($_return1, $_return2)
waitms(60)
LUP($_return1, $_return2)
WAITMS(300)
// ZAKRUTIE CHAOS MACHINE
waitms(500)
KEYDOWN(#V)
waitms(50)
KEYUP(#V)
//ZAKRUTIE CHAOS MACHINE
END_IF ;
// end_if
//PEREKLADUVANIE V PUSTYY YA4EIKU
//PEREKLADUVANIE V PUSTYY YA4EIKU
//PEREKLADUVANIE V PUSTYY YA4EIKU
//
waitms(1500)
//END_IF
[/spoiler]
2-ой - отвечает за поход в магазин за банками и подготовку к использованию банок
[spoiler]
// ZAKRUTIE CHAOS MACHINE
waitms(500)
KEYDOWN(#V)
waitms(50)
KEYUP(#V)
//ZAKRUTIE CHAOS MACHINE
waitms(500)
//na4alo wagov
MOVE(1137,488)
waitms(200)
LDOWN(1137,488) // 6907751
waitms(60)
LUP(1137,488)
waitms(1500)
MOVE(1143,434)
waitms(200)
LDOWN(1143,434) // 6710372
waitms(60)
LUP(1141,434)
waitms(2000)
//wagi zakon4ilis
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
KEYDOWN(#R)
WAITMS(60)
KEYUP(#R)
WAITMS(300)
//SD Potion use
//otkrutie magaza
waitms(400)
MOVE(1075,421)
waitms(200)
LDOWN(1075,421)
waitms(60)
LUP(1075,421)
waitms(2000)
waitms(500)
MOVE(1000,262) // 7039080
waitms(400)
LDOWN(1000,262)
waitms(60)
LUP(1000,262)
waitms(400)
waitms(500)
MOVE(1000,262) // 7039080
waitms(400)
LDOWN(1000,262)
waitms(60)
LUP(1000,262)
waitms(400)
waitms(500)
MOVE(1000,262) // 7039080
waitms(400)
LDOWN(1000,262)
waitms(60)
LUP(1000,262)
waitms(400)
waitms(500)
MOVE(1000,262) // 7039080
waitms(400)
LDOWN(1000,262)
waitms(60)
LUP(1000,262)
waitms(400)
//pokupka banok
waitms(500)
KEYDOWN(#V)
waitms(50)
KEYUP(#V)
//ZAKRUTIE MAGAZA
waitms(100)
// wagi obratno k chaos machine
waitms(1500)
MOVE(726,612) // 8420731
waitms(300)
LDOWN(726,612)
waitms(60)
LUP(726,612)
waitms(2300)
MOVE(704,565) // 4473410
LDOWN(704,565)
waitms(60)
LUP(704,565)
waitms(2000)
MOVE(930,476) // 9802386
waitms(200)
LDOWN(930,476)
waitms(60)
LUP(930,476)
waitms(3000)
KEYDOWN(#V)
WAITMS(60)
KEYUP(#V)
LOGWRITE("Inventory Opened")
WAITMS(500)
#include("use_banok.cms")
[/spoiler]
Ну и 3-ий с которым как раз таки и проблема.
[spoiler]
// waitms(300)
// KEYDOWN(#V)
//WAITMS(60)
//KEYUP(#V)
//LOGWRITE("Inventory Opened")
// WAITMS(500)
$check = 0
WHILE($check = 0) //цикл работы с банками
banki:
GETSCREEN(1200,492, 1445,583)
// проверка наличия банки в инвентаре
IF_PIXEL_IN(1180,481, 1445,583, 658074)
LOGWRITE("Банка найдена")
waitms(200)
MOVE($_return1, $_return2)// Наведение курсора на банку
$_r1=$_return1
$_r2=$_return2
// запоминание координат банки
waitms(1000)
//проверка количества использования банки
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_4.bmp", -1,100)
LOGWRITE("Использований четыре")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
RDOWN(-1,-1)
waitms(60)
RUP(-1,-1)
waitms(200)
ELSE
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_5.bmp", -1,100)
LOGWRITE("Использований пять")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
RDOWN(-1,-1)
waitms(60)
RUP(-1,-1)
waitms(200)
ELSE
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_6.bmp", -1,100)
LOGWRITE("Использований шесть")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
RDOWN(-1,-1)
waitms(60)
RUP(-1,-1)
waitms(200)
ELSE
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_7.bmp", -1,100)
LOGWRITE("Использований семь")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
RDOWN(-1,-1)
waitms(60)
RUP(-1,-1)
waitms(200)
ELSE
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_8.bmp", -1,100)
LOGWRITE("Использований восемь")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
RDOWN(-1,-1)
waitms(60)
RUP(-1,-1)
waitms(200)
ELSE
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_9.bmp", -1,100)
LOGWRITE("Использований девять")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
RDOWN(-1,-1)
waitms(60)
RUP(-1,-1)
waitms(200)
ELSE
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_10.bmp", -1,100)
LOGWRITE("Использований десять")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
RDOWN(-1,-1)
waitms(60)
RUP(-1,-1)
waitms(200)
end_if
//PEREKLADUVANIE V PUSTYY YA4EIKU
//ELSE
LOGWRITE("нету банки")
$check = 1 // выход из цикла банок
END_IF
getscreen (1200,492, 1468,755)
COLORMODE(8,1200,492, 1468,755)
IF_PICTURE_IN (1200,492, 1468,755, "textures/digit_3.bmp", -1,100)
LOGWRITE("Использований три")
MOVE($_r1,$_r2) // наведение курсора на банку
WAITMS(100)
MOVE(-1,-1) // использование банки
waitms(200)
LDOWN(-1,-1)
waitms(60)
LUP(-1,-1)
waitms(200)
#include("tri.cms")
end_if
end_cyc
// вписать цикл склянок
//вписать цикл поганок
//и т.д.
[/spoiler]
Вот скриншот инвентаря
А проблема собственно в том, что когда скрипт use_banok.cms заканчивает свою работу, а точнее использует все до количества трёх штук и перемещает их в нижние ряды(на скрине указано) - нужно, чтобы он переходил обратно к первому скрипту. На данный момент он тупо один раз прогоняет use_banok.cms(рандомно использует одну банку) и продолжает делать какие то совсем не те действия.
Пытался сделать так, чтобы когда банок нет - он переходил к первому скрипту, но в итоге у меня в логе раз 50 появляется сообщение о том, что банок нет!
Надеюсь примерно объяснил в чем проблема. Очень надеюсь на помощь! С радостью отвечу на вопросы:)