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

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

1. jaka1 - 25 Марта, 2016 - 08:22:27 - перейти к сообщению
CODE:
int color, xe, ye;//переменные в которые запишутся данные о цвености и разрешение экрана
getdisplay(color, xe, ye);//Узнать разрешение экрана

sleep(1000);//Подождать секунду

//Заменить этот указатель на свой. Получить - навести на окно браузера и нажать CTRL+SHIFT+S
win w=window ("Legend", "TDwarClientForm", -1);
int x[2000], y[2000];//переменные для принятия найденных координат.
finddynamic(0, #x[0], #y[0], 0, 0, 0, 0, 110, 298, 1200, 500, w);//Получить изображение экрана
sleep(800);//Пауза между сравнением для поиска изменений
int k=finddynamic(3, #x[0], #y[0], 5, 5, 10, 10, 110, 298, 1200, 500, w);//Получить изображение экрана и сравнить с прошлым. Получить координаты динамичных очагов.

int n=0;
ck: if (n<k)//Цикл перебора очагов динамики
{
mousemove(x[n]+5, y[n]+5);//Переместить мышь на найденный объект.
sleep(1000);//Ждать секунду
/*Тут может быть код проверки типа курсора или какой либо другой.
Зависит от того как клиен игры реагирует на наведение мыши на искомый анимированный объект, в данном случае моба.*/
n++;
goto ck;
}


Координаты нужных мест брал с помощью Шпион - Мышь в клиентской части окна, соответственно, левого верхнего и правого нижних углов.
А по факту мышь совсем в другую часть улетает.
2. Kibor - 25 Марта, 2016 - 08:36:07 - перейти к сообщению
уже пояснял http://kibor-bot.com/forum/topic...25053#1458725053

 Цитата:
int color, xe, ye;//переменные в которые запишутся данные о цвености и разрешение экрана
getdisplay(color, xe, ye);//Узнать разрешение экрана

sleep(1000);//Подождать секунду

//Заменить этот указатель на свой. Получить - навести на окно браузера и нажать CTRL+SHIFT+S
win w=window ("Legend", "TDwarClientForm", -1);
int x[2000], y[2000];//переменные для принятия найденных координат.
finddynamic(0, #x[0], #y[0], 0, 0, 0, 0, 110, 298, 1200, 500, w);//Получить изображение экрана
sleep(800);//Пауза между сравнением для поиска изменений
int k=finddynamic(3, #x[0], #y[0], 5, 5, 10, 10, 110, 298, 1200, 500, w);//Получить изображение экрана и сравнить с прошлым. Получить координаты динамичных очагов.

int n=0;
ck: if (n<k)//Цикл перебора очагов динамики
{
mousemove(x[n]+5+110, y[n]+5+298, w);//Переместить мышь на найденный объект.
sleep(1000);//Ждать секунду
/*Тут может быть код проверки типа курсора или какой либо другой.
Зависит от того как клиен игры реагирует на наведение мыши на искомый анимированный объект, в данном случае моба.*/
n++;
goto ck;
}
3. jaka1 - 25 Марта, 2016 - 08:49:34 - перейти к сообщению
 Kibor пишет:
уже пояснял http://kibor-bot.com/forum/topic...25053#1458725053

 Цитата:
int color, xe, ye;//переменные в которые запишутся данные о цвености и разрешение экрана
getdisplay(color, xe, ye);//Узнать разрешение экрана

sleep(1000);//Подождать секунду

//Заменить этот указатель на свой. Получить - навести на окно браузера и нажать CTRL+SHIFT+S
win w=window ("Legend", "TDwarClientForm", -1);
int x[2000], y[2000];//переменные для принятия найденных координат.
finddynamic(0, #x[0], #y[0], 0, 0, 0, 0, 110, 298, 1200, 500, w);//Получить изображение экрана
sleep(800);//Пауза между сравнением для поиска изменений
int k=finddynamic(3, #x[0], #y[0], 5, 5, 10, 10, 110, 298, 1200, 500, w);//Получить изображение экрана и сравнить с прошлым. Получить координаты динамичных очагов.

int n=0;
ck: if (n<k)//Цикл перебора очагов динамики
{
mousemove(x[n]+5+110, y[n]+5+298, w);//Переместить мышь на найденный объект.
sleep(1000);//Ждать секунду
/*Тут может быть код проверки типа курсора или какой либо другой.
Зависит от того как клиен игры реагирует на наведение мыши на искомый анимированный объект, в данном случае моба.*/
n++;
goto ck;
}


Вот теперь я понял, что означала эта фраза.)
А как быть то? Как совместить поиск и клик?
(Добавление)
Увидел. Спасибо)

Powered by ExBB FM 1.0 Final