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

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

1. Andrew - 25 Ноября, 2014 - 14:08:38 - перейти к сообщению
Здравствуйте. Функция finddynamic работает исправно, НО только пока не установлено начальные координаты поиска. К примеру:
CODE:
povtor:
finddynamic(0, #din_x[0], #din_y[0], 0, 0, 0, 0, 0, 0, xe, ye, -1);
pause(1000);
int k=finddynamic(-1, #din_x[0], #din_y[0], 20, 40, 100, 100, 0, 0, xe, ye, -1);

if (k>100) goto povtor;
if (k<3) goto povtor;

int n=0;
ck: if (n<k)
{
mousemove(din_x[n]+5, din_y[n]+5);
pause(250);
findimage(1, #Image_3[0][0], 0, #PosX_3[0], #PosY_3[0], 0, 0, xe, ye, 2, 2, 2, 2, 2, 2, 90, 1, -1);
pause(250);
if(findimage(1, #Image_3[0][0], 0, #PosX_3[0], #PosY_3[0], 0, 0, xe, ye, 2, 2, 2, 2, 2, 2, 90, 1, -1)==1)
{goto open_map;}

n++;
goto ck;
}
else
{goto povtor;}

если вместо координаты 0,0 выставить другую, к примеру, 100,100, то поиск идет не корректно динамика всеравно ищется в области (0,0, 100,100). Иногда кажется, что наоборот он ищет динамику до этих координат(100,100).

Это ошибка Кибора или кода?
2. Kibor - 26 Ноября, 2014 - 00:08:05 - перейти к сообщению
сейчас проверил...
 Цитата:
int din_x[100], din_y[100];


povtor:
finddynamic(0, #din_x[0], #din_y[0], 0, 0, 0, 0, 770, 481, 1366, 768, -1);
pause(1000);
int k=finddynamic(100, #din_x[0], #din_y[0], 20, 40, 100, 100, 770, 481, 1366, 768, -1);

for (int n=0; n<k;n++)
{
mousemove(din_x[n]+770, din_y[n]+481);
}


goto povtor;

все прекрасно.
да и я всегда ограничивал объемы и работало..

пример бот для RF online. там смещение координат начала поиска..(для просмотра ссылки Вам необходимо авторизоваться) Видео работы этого бота:видео 1, видео 2 и видео 3
3. Andrew - 26 Ноября, 2014 - 03:00:32 - перейти к сообщению
Kibor , ой, про смещение в наведении не подумал. Спасибо большое.

Powered by ExBB FM 1.0 Final