Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Автокликер через поиск изображения

Страниц (3): « 1 2 [3]
 

21. Kibor - 06 Января, 2014 - 14:52:35 - перейти к сообщению
ПТУ закончил Подмигивание

Код сильно напряжен. Можно сделать так:

CODE:
int PosX, PosY;//Если не важны координаты можно использовать одни и те же переменные
int a=0;

loop:
pause(100);
mouse(LEFT,1029,485,1,w);
pause(100);
mouse(LEFT, 1006,347,1,w);

if (findimage(1, #Image_1[0][0], 0, #PosX, #PosY, 0, 0, 1444, 944, w)==1)
{
mouse(LEFT,997,353,1,w);pause(200); a++;
if (findimage(1, #Image_2[0][0], 0, #PosX, #PosY, 0, 0, 1444, 944, w)==1)
{
mouse(LEFT,997,353,1,w);pause(200); a++;
//Так далее
goto loop;
}
}
//Так как там разные координаты то примерно так можно
if (a<6)mouse(LEFT,982,313,1,w);
if (a==6)mouse(LEFT,1020,373,1,w);
if (a>6)mouse(LEFT,1005,376,1,w);
goto loop;



А можно все сделать в цикле так: Реализация массивов изображений в функциях loadimage, findimage, saveimage

CODE:
int PosX, PosY;//Если не важны координаты можно использовать одни и те же переменные
int Image[20][200][200];

loadimage (#Image[0][0][0], "C:\Image_1.bmp");
loadimage (#Image[1][0][0], "C:\Image_2.bmp");
//.................

loop:
pause(100);
mouse(LEFT,1029,485,1,w);
pause(100);
mouse(LEFT, 1006,347,1,w);
int n=0;
q: if (n<количество)
{
if (findimage(1, #Image[n][0][0], 0, #PosX, #PosY, 0, 0, 1444, 944, w)==1)
{
mouse(LEFT,997,353,1,w);pause(200);
n++;
goto q;
}
if (n<6)mouse(LEFT,982,313,1,w);
if (n==6)mouse(LEFT,1020,373,1,w);
if (n>6)mouse(LEFT,1005,376,1,w);
goto loop;
}
else goto loop;


Мог ошибиться в подсчете циклов, но я думаю понятна тема..
22. Ouroboros - 06 Января, 2014 - 16:11:16 - перейти к сообщению
Да,спасибо большое, все работает.Если что, отпишу в эту же тему,еще раз спасибо за уделенное вами время)

Powered by ExBB FM 1.0 Final