Появилась возможность указать допустимую разбежность цветов пикселей, при которых они не будут считаться разными в функции .finddynamic
Как в настройках фильтра динамики в вкладке Графика.
Для этого можно применить не обязательный предпоследний параметр (перед указателем на окно или -1 (на экран)).
Его значение может быть от 1 до 255
При первом вызове finddynamic его не обязательно указывать.
Этот параметр срабатывает только при втором вызове finddynamic
finddynamic(0, #x[0], #y[0], 0, 0, 0, 0, 0, 0, 1000, 700, 0, -1);
sleep(100);
int k=finddynamic(20, #x[0], #y[0], 5, 5, 50, 50, 0, 0, 1000, 700, 30, -1);
1. Kibor - 24 Декабря, 2018 - 07:54:22 - перейти к сообщению
2. Dantes3000 - 26 Декабря, 2018 - 03:49:39 - перейти к сообщению
Добавьте в findcolor разбежность
3. Skycrew - 29 Декабря, 2018 - 01:25:34 - перейти к сообщению
Я правильно понял, что это нужно, чтобы не учитывать динамику в тех местах, где цвет меняется незначительно?
4. Kibor - 29 Декабря, 2018 - 04:55:03 - перейти к сообщению
Да. Работает как и при указание разбежности в графическом редакторе.
Позволяет игнорировать облака, дымку и тд.
Позволяет игнорировать облака, дымку и тд.
5. Skycrew - 02 Января, 2019 - 22:30:49 - перейти к сообщению
Kibor пишет:
Да. Работает как и при указание разбежности в графическом редакторе.
Позволяет игнорировать облака, дымку и тд.
Позволяет игнорировать облака, дымку и тд.
Круто! Полезная вещь!
6. gabych - 20 Апреля, 2019 - 13:53:34 - перейти к сообщению
а как править код составленный в визуальном редакторе? просто вставка перед -1 не помогает, продолжает кликать на пустые места, которые через Графика при разбежке 30 дает статику
function finddynamic_(int onx, int ony, int oox, int ooy, int t, int pscan, int p1, int p2, int m, int xm, int ym, int p3, 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!=0) timKIB=gettime();
a: finddynamic(0, #x[0], #y[0], 0, 0, 0, 0, xs, ys, xf, yf, -1);
pause(pscan);
sum=finddynamic(k, #x[0], #y[0], onx, ony, oox, ooy, xs, ys, xf, yf, -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){mousedbl(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==11){mousedbl(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==12){mousedbl(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==13){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}
function finddynamic_(int onx, int ony, int oox, int ooy, int t, int pscan, int p1, int p2, int m, int xm, int ym, int p3, 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!=0) timKIB=gettime();
a: finddynamic(0, #x[0], #y[0], 0, 0, 0, 0, xs, ys, xf, yf, -1);
pause(pscan);
sum=finddynamic(k, #x[0], #y[0], onx, ony, oox, ooy, xs, ys, xf, yf, -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){mousedbl(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==11){mousedbl(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==12){mousedbl(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==13){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}