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

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

1. Koli - 24 Февраля, 2018 - 12:33:52 - перейти к сообщению
Можно ли как нибудь реализовать подход к мобу в игре. Например выбрал цель и нужно будет подойти к ней
2. Zireael - 24 Февраля, 2018 - 13:04:32 - перейти к сообщению
Очень информативно. Кроме вас тут никто не знает как называется игра, как перемещается перс, мышкой, стрелками, есть ли препятствия...и ещё с десяток возможных отличий одной игры от другой.
Чем подробнее описание, тем больше вероятность получить ответ на ваш вопрос.
3. Koli - 24 Февраля, 2018 - 13:35:45 - перейти к сообщению
Игра Аллоды, перемещение мышкой или клавиатурой цель можно выбрать клавишей TAB, но не знаю как сделать подход к цели, препятствий нету
4. Zireael - 24 Февраля, 2018 - 14:14:17 - перейти к сообщению
Как-то можно определить какой моб выделен? Т. е. найти его имя, полоску хп или ещё что-то. И кликнуть рядом.
5. Koli - 24 Февраля, 2018 - 14:28:46 - перейти к сообщению
Можно есть иконка и хп, кликнуть тоже можно рядом, но как это сделать?
6. Zireael - 24 Февраля, 2018 - 14:44:10 - перейти к сообщению
Во вкладке 'Графика' делаем картинку иконки. Скрипт будет искать картинку на экране.
CODE:
int Image_0[500][500]; // массив для картинки
loadimage (#Image_0[0][0], "C:\Program Files\Kibor\Image_0.bmp"); // путь к картинке
int PosX_0;int PosY_0;

if(findimage(1, #Image_0[0][0], 0, #PosX_0, #PosY_0, 0, 0, 1920, 1080, -1) > 0) // если картинка найдена
{
mousemove(PosX_0, PosY_0); // навести курсор на найденный объект
// можно задать смещение
// mousemove(PosX_0- 50, PosY_0); // левее на 50 пикселей
// mouse(LEFT, PosX_0, PosY_0); // клик по найденной картинке, также можно задать смещение
}
else
{
messagebox("Картинка не найдена");
}
7. Koli - 25 Февраля, 2018 - 02:59:21 - перейти к сообщению
PHP:
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[22][21];
int Image_1_KIB[29][30];

start_();

m_KIB1: findimage_(#Image_0_KIB[0][0], 0, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
findimage_(#Image_1_KIB[0][0], 0, 0, 0, 1, 0, 0, 8000, -1, 0, 100, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB); goto m_KIB1;



function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}


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:\Картинки\12.bmp");
loadimage (#Image_1_KIB[0][0], "C:\Картинки\Image_1.bmp");
}




Нажмите для увеличения



Вот не хочет искать изображение и клликать
(Добавление)
И как сделать привязку к окну?

Powered by ExBB FM 1.0 Final