Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » функция findimage

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

1. Hanter - 11 Февраля, 2015 - 09:28:18 - перейти к сообщению
findimage(-1, #image[0][0], fon_color, #x[0], #y[0], x_start, y_start, x_finish, y_finish, wind);
Первый параметр - если -1 - искать все совпадающие изображения и записывать их в масив. Если не -1 , к примеру 5... искать до 5 включительно совпадений и завершать поиск.

все что выше написано на форуме.
Объясните пожалуйста, как обращаться к элементам массива если поставить первый параметр функции -1?
2. SemEMP - 11 Февраля, 2015 - 10:11:09 - перейти к сообщению
 Hanter пишет:
findimage(-1, #image[0][0], fon_color, #x[0], #y[0], x_start, y_start, x_finish, y_finish, wind);
Первый параметр - если -1 - искать все совпадающие изображения и записывать их в масив. Если не -1 , к примеру 5... искать до 5 включительно совпадений и завершать поиск.

все что выше написано на форуме.
Объясните пожалуйста, как обращаться к элементам массива если поставить первый параметр функции -1?

(для просмотра ссылки Вам необходимо авторизоваться)
согласно справке, сама функция возвращает количество найденных изображений,
CODE:

int N;
N=findimage(-1, #image[0][0], fon_color, #x[0], #y[0], x_start, y_start, x_finish, y_finish, wind)

если
CODE:
N>=1
, то в переменных
CODE:
x[0],y[0];x[1],[y[1]...x[N-1],y[N-1]

будут координаты найденных изображений
3. Hanter - 11 Февраля, 2015 - 16:39:58 - перейти к сообщению
 SemEMP пишет:
 Hanter пишет:
findimage(-1, #image[0][0], fon_color, #x[0], #y[0], x_start, y_start, x_finish, y_finish, wind);
Первый параметр - если -1 - искать все совпадающие изображения и записывать их в масив. Если не -1 , к примеру 5... искать до 5 включительно совпадений и завершать поиск.

все что выше написано на форуме.
Объясните пожалуйста, как обращаться к элементам массива если поставить первый параметр функции -1?

(для просмотра ссылки Вам необходимо авторизоваться)
согласно справке, сама функция возвращает количество найденных изображений,
CODE:

int N;
N=findimage(-1, #image[0][0], fon_color, #x[0], #y[0], x_start, y_start, x_finish, y_finish, wind)

если
CODE:
N>=1
, то в переменных
CODE:
x[0],y[0];x[1],[y[1]...x[N-1],y[N-1]

будут координаты найденных изображений



У меня проблема вот в чем.
У меня есть одинаковые картинки от 1-5 и я никак не могу понять, как мне сделать так что бы бот перебирал все, а не выбирал одну и крутил её по кругу...
4. Kibor - 11 Февраля, 2015 - 16:54:40 - перейти к сообщению
 Hanter пишет:
что бы бот перебирал все

и?
перебирал и кликал по первой что нашел...
перебирал и кликал по всех..
свой вариант..
5. Hanter - 11 Февраля, 2015 - 17:13:25 - перейти к сообщению
 Kibor пишет:
 Hanter пишет:
что бы бот перебирал все

и?
перебирал и кликал по первой что нашел...
перебирал и кликал по всех..
свой вариант..


CODE:
o:
if (findimage(1, #Ya[0][0], 0, #PosX, #PosY, 0, 0,wind.widthclient, wind.heightclient, wind)==1)
{

X1 = PosX - X_Cons;
Y1 = PosY - Y_Cons;
X2 = PosX + X_Cons;
Y2 = PosY + Y_Cons;
// messagebox(X1,"-", Y1,"-", X2, "-" , Y2, "-", PosX, "-", PosY);


if (findimage(-1, #spider[0][0], 0, #PosX, #PosY, 0, 0,wind.widthclient, wind.heightclient, wind)!=0 )
{


if(PosX>X1 && PosY>Y1 && PosX<X2 && PosY<Y2) {messagebox("Bingo!"); } else{ messagebox("Ne popal v oblast"); goto o; }

} else{messagebox("Ne nashlo skorpa");}

}


Вот в этом случаи он берет 1-ну из несколько картинок и не переходит на следующую, подскажите как это можно реализовать, а то уже голова болит не могу понять как это сделать...
6. Hanter - 12 Февраля, 2015 - 04:15:03 - перейти к сообщению
ап темы
7. Kibor - 12 Февраля, 2015 - 04:51:17 - перейти к сообщению
int N;
N=findimage(-1, #image[0][0], 0, #x[0], #y[0], x_start, y_start, x_finish, y_finish, wind);


for (int h=0; h<N; h++)
{
mousemove(x[h], y[h], wind);
sleep(600);
}
8. Hanter - 12 Февраля, 2015 - 06:08:57 - перейти к сообщению
 Kibor пишет:
int N;
N=findimage(-1, #image[0][0], 0, #x[0], #y[0], x_start, y_start, x_finish, y_finish, wind);


for (int h=0; h<N; h++)
{
mousemove(x[h], y[h], wind);
sleep(600);
}


Вот сделал как вы, и мне выдает ошибку:
CODE:
int N;
o:
if (findimage(1, #Ya[0][0], 0, #PosX, #PosY, 0, 0,wind.widthclient, wind.heightclient, wind)==1)
{

X1 = PosX - X_Cons;
Y1 = PosY - Y_Cons;
X2 = PosX + X_Cons;
Y2 = PosY + Y_Cons;
// messagebox(X1,"-", Y1,"-", X2, "-" , Y2, "-", PosX, "-", PosY);
N = findimage(-1, #spider[0][0], 0, #PosX[0], #PosY[0], 0, 0,wind.widthclient, wind.heightclient, wind);

if (N>0 )
{

for(int h=0; h<N; h++){
// if(PosXx[h]>X1 && PosYy[h]>Y1 && PosXx[h]<X2 && PosYy[h]<Y2) {messagebox("Bingo!"); } else{ messagebox("Ne popal v oblast"); }

mousemove(PosX[h], PosY[h], wind);
sleep(1000);
}
} else{messagebox("Ne nashlo skorpa");}

}


9. Kibor - 12 Февраля, 2015 - 06:25:14 - перейти к сообщению
 Hanter пишет:
if (findimage(1, #Ya[0][0], 0, #PosX, #PosY, 0, 0,wind.widthclient, wind.heightclient, wind)==1)
{

X1 = PosX - X_Cons;
Y1 = PosY - Y_Cons;
X2 = PosX + X_Cons;
Y2 = PosY + Y_Cons;
// messagebox(X1,"-", Y1,"-", X2, "-" , Y2, "-", PosX, "-", PosY);
N = findimage(-1, #spider[0][0], 0, #PosX[0], #PosY[0]


определитесь уже.. или у вас массив или просто..
где как идет объявление

PosX PosY
10. Hanter - 12 Февраля, 2015 - 06:29:39 - перейти к сообщению
 Kibor пишет:
 Hanter пишет:
if (findimage(1, #Ya[0][0], 0, #PosX, #PosY, 0, 0,wind.widthclient, wind.heightclient, wind)==1)
{

X1 = PosX - X_Cons;
Y1 = PosY - Y_Cons;
X2 = PosX + X_Cons;
Y2 = PosY + Y_Cons;
// messagebox(X1,"-", Y1,"-", X2, "-" , Y2, "-", PosX, "-", PosY);
N = findimage(-1, #spider[0][0], 0, #PosX[0], #PosY[0]


определитесь уже.. или у вас массив или просто..
где как идет объявление

PosX PosY


вот я тоже думаю что с объявлением проблемы. Вы в примерах пишете точно кол-ство элементов которые должны найти, но у меня не определено точное количество моих картинок, но их будет не меньше чем 1 и не больше чем 5.
Вот так я объявил:
int PosX, PosY;

Powered by ExBB FM 1.0 Final