Прохожий
Покинул форум
Сообщений всего: 6
Дата рег-ции: Март 2018
Репутация: 0
|
Не получается сделать клик со смещением.
Хотел сделать клик со смещением как показано в этом видео
Визуальное создание ботов в Кибор на примере создания спам бота для в вконтакте
Задача моего скрипта найти самую последнюю песню в плейлисте вконтакте и щелкнуть по ней.
Нажмите для увеличения
По плану бот должен найти угол внизу плейлиста и щелкнуть по нему со смещением по x[n]+40,y[n]+43(у меня это i[n]и l[n]).
Клавиша 34 используется для перемотки в самый низ плейлиста, где есть тот угол, который нужно найти
Нажмите для увеличения
Саму картинку угла бот находит(проверил выводом координаторов в messagebox (i[n] и l[n]), когда соединил поиск изображение с mesagebox напрямую и там были правильные координаты угла, который ищется. Но если после поиска изображения угла я обнуляю блоком кода n=0; и делаю клик i[n]+40, l[n]+43, то клик происходит без обнуления, т.е n=0; игнорируется программой и он к найденным с изображениями координатам плюсует 40 и 43.
Нажмите для увеличения
Нажмите для увеличения
Когда я попробовал обнулить в блоке кода не так "n=0;", a i[n]=0; l[n]=0; перед кликом, то программа игнорировала смещение указанное в блоке клика i[n]+40; l[n]+43 и в последнем проверочном блоке messagebox (i[n]=0; l[n]=0) выводился 0.
Что я делаю не правильно?
Код (Отобразить)CODE:int i[1], l[1], n;
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[5][6];
start_();
m_KIB1: if (findimage_(#Image_0_KIB[0][0], 500, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #i[0], #l[0])>0) goto m_KIB3;
else goto m_KIB2;
m_KIB3: n=0;
mouse_(0, 3, i[n]+40, l[n]+43, 1000); goto m_KIB5;
m_KIB2: key_(34, 1, 1000, 0); goto m_KIB1;
m_KIB5: messagebox (i[n]);
messagebox (l[n]);
function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}
function key_(int k, int m, int p1, int p2)
{
pause(p1);
if (m==1) key(k);
if (m==2) keydown(k);
if (m==3) keyup(k);
pause(p2);
}
function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) mouse(LEFT, xm, ym);
if (m==2) mouse(MIDDLE, xm, ym);
if (m==3) mouse(RIGHT, xm, ym);
if (m==4) mousedown(LEFT, xm, ym);
if (m==5) mousedown(MIDDLE, xm, ym);
if (m==6) mousedown(RIGHT, xm, ym);
if (m==7) mouseup(LEFT, xm, ym);
if (m==8) mouseup(MIDDLE, xm, ym);
if (m==9) mouseup(RIGHT, xm, ym);
if (m==10) mousemove(xm, ym);
pause(p2);
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==10){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\jurav\project\newformat\Image_1.bmp");
}
(Отредактировано автором: 14 Марта, 2018 - 17:26:50) |