MME |
Отправлено: 02 Ноября, 2019 - 18:44:21
|
Участник
Покинул форум
Сообщений всего: 98
Дата рег-ции: Янв. 2017
Репутация: 2
|
CODE:int size_key_char_KIB=-1;
win w_KIB;
int ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int sx_KIB, sy_KIB;
int Image_0_KIB[44][45];
start_();
setwindowparam(w_KIB);
activate(w_KIB);
findimage_(#Image_0_KIB[0][0], 5000, 0, 0, 0, 0, 0, -1, 0, 0, 0, -1, -1, -1, 50, 80, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
key_(81, 1, "", 0, 1000, 0);
function start_()
{
load_image_();
pause(1000);
w_KIB=selectwindow("LOST ARK (64-bit) v.1.1.0.4");;
ex_KIB=w_KIB.widthclient; ey_KIB=w_KIB.heightclient;
sx_KIB=w_KIB.leftclient; sy_KIB=w_KIB.topclient;
}
function key_(int k, int m, string text, int pc, int p1, int p2)
{
pause(p1);
if (m==-1)
{
if (size_key_char_KIB==-1)
{
size_key_char_KIB=100;
new char key_char_KIB[size_key_char_KIB+1];
}
int size_key=size(text);
if (size_key_char_KIB<size_key)
{
delete key_char_KIB;
size_key_char_KIB=size_key;
new char key_char_KIB[size_key_char_KIB+1];
}
strcpy(#key_char_KIB[0], text);
for (int n=0; n<size_key; n++){key(key_char_KIB[n]); sleep(pc);}
}
else
{
if (m==1) key(k);
if (m==2) keydown(k);
if (m==3) keyup(k);
}
pause(p2);
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int mov_m, int mov_x, int mov_y, int p3, int wait, int cycle, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
xs=xs+sx_KIB; ys=ys+sy_KIB; xf=xf+sx_KIB; yf=yf+sy_KIB;
int timKIB, sumKIB, xKIB, yKIB, tx, ty, tcycle=0;
sty: pause(p1);
sumKIB=0;
if (t!=0) 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); goto hy;}
if (m==2){mouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==3){mouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==4){mousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==5){mousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==6){mousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==7){mouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==8){mouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==9){mouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==10){mousedbl(LEFT, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==11){mousedbl(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==12){mousedbl(RIGHT, xs+xKIB+xm, ys+yKIB+ym); goto hy;}
if (m==13)mousemove(xs+xKIB+xm, ys+yKIB+ym);
hy: if (mov_m==1)mousemove(mov_x, mov_y);
if (m>0 && m<14)pause(p3);
if (wait!=-1)
{
for (int ttim=gettime(); gettime()-ttim<wait; sleep(20))
{
if (r==0 && p==100){if (findimage(1, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1)==0)return sumKIB;}
else {if (findimage(1, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1)==0)return sumKIB;}
}
if (tcycle<cycle){tcycle++; goto sty;}
return 0;
}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "D:\Soft\Кликеры\Кибор\Kibor\Lost ark\Image_0.bmp");
}
Вот так получилось
[img](для просмотра ссылки Вам необходимо авторизоваться) /img]
Но всё ровно не хочет со мной дружить |
|
|
Nikanr |
Отправлено: 02 Ноября, 2019 - 21:08:29
|
Специалист
Покинул форум
Сообщений всего: 231
Дата рег-ции: Март 2019
Репутация: 5
|
Игра интересная, напомнила diablo, но перейдем к делу. Не знаю на кой тебе понадобился там антиантикликер. Параметры: разрешение экрана 1366x768, режим: оконный
Вот что получилось:
1. Клики мыши проходят но не все:
CODE:win w=window ("LOST ARK (64-bit) v.1.1.0.4", "EFLaunchUnrealUWindowsClient", -1);
enablerealmouse(15, 0, 0, 0); //реальная мышь
setwindowparam(w); //обновить параметры
pause(500); //пауза
mouse(LEFT, 134, 9, 1, w); //откроет путеводитель
sendkey не работает т.к у игры контрол не появился в шпионе (мб появиться если поиграться с настройками)
2. Клавиша key работает
CODE:win w=window ("LOST ARK (64-bit) v.1.1.0.4", "EFLaunchUnrealUWindowsClient", -1);
setwindowparam(w);
activate(w);
pause(500);
key(73); //откроет инвентарь
sendkey в фоновом режиме не работает т.к видимо игра смотрит активно ли окно, и если нет оно сразу закроет инвентарь
3. Findimage и прочее работают, даже в фоне. Хотя это бесполезно т.к все равно придется добавлять к стартовым координатам текущее положение окна
Вывод: игру можно запрогать но не подойдет фоновый режим. Хотя если помучатся, может быть и это будет работать) |
|
|
|