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

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

1. Alexey_Tish - 24 Июля, 2023 - 11:13:43 - перейти к сообщению
Взял максимальную версию на 1 день. Скрипт начал вылетать сразу же после запуска. Я сам то в программе только разбираюсь, может ошибка и в коде, но посмотреть не могу Однако
(Добавление)
Делал все через редактор вот сам код :

CODE:
win W_Kib=window (-1, -1, -1, -1, 1642, 935, -1);
int Screen[3000][3000];
int K_Kib1;
int X_Kib1[1000];
int Y_Kib1[1000];
int Image1[80][83];
int K_Kib2;
int X_Kib2[1000];
int Y_Kib2[1000];
int Image2[80][81];
int K_Kib;
int X_Kib[1000];
int Y_Kib[1000];
int Image0[183][48];

int eCol_Kib, eX_Kib, eY_Kib;
getdisplay(eCol_Kib, eX_Kib, eY_Kib);

int x,y;
int 1 [] ;int 2 [] ;int 3 [] ;int 4 [] ;int 5 [] ;int 6 [] ;
int 1zone > 674 && int 1 zone <771;
int 2zone > 771 && int 1 zone <866;
int 3zone > 866 && int 1 zone <961;
int 4zone > 961 && int 1 zone <1066;
int 5zone > 1066 && int 1 zone <1156;
int 6zone > 1156 && int 1 zone <1251;

load_images();

loop()
{
goto KIB_1;
KIB_2: FindImage(0, #Screen[0][0], #W_Kib, W_Kib.leftclient, W_Kib.topclient, #Image2[0][0], 1, 0, 0, 0, #K_Kib2, #X_Kib2[0], #Y_Kib2[0], 1440, 670, 1580, 800, 1000, 10000, -1, 35, 90, 1, 0, "0, 0, 0, 0", 0, "Левую клик", 0, 0, 400, 0, 5, 5, 0, 0);
if (ловля()==1){}
goto KIB_C14;
KIB_1: FindImage(0, #Screen[0][0], #W_Kib, W_Kib.leftclient, W_Kib.topclient, #Image1[0][0], 1, 0, 0, 0, #K_Kib1, #X_Kib1[0], #Y_Kib1[0], 1440, 670, 1580, 800, 10, 5000, -1, 0, 100, 1, 0, "0, 0, 0, 0", 0, "Левую клик", 0, 0, 0, 0, 5, 5, 1000, 1);
goto KIB_2;
KIB_C14:
}
KIB_Exit:;

function ловля()
{
goto KIB_3;
KIB_12: if(x<=1zone,2zone,3zone,4zone,5zone,6zone){}
Mouse(0, #W_Kib, W_Kib.leftclient, W_Kib.topclient, 10, 1530, 770, "Бездействие", 500);
goto KIB_11;
KIB_10: Mouse(0, #W_Kib, W_Kib.leftclient, W_Kib.topclient, 500, 1530, 770, "Левую отпустить", 10);
KIB_11:;
return x;
KIB_3: if (ScanPixel(0, #Screen[0][0], #W_Kib, W_Kib.leftclient, W_Kib.topclient, 100, 70000, 1205, 785, 4309915, 0)==1) goto KIB_Exit;
goto KIB_4;
KIB_9: Mouse(0, #W_Kib, W_Kib.leftclient, W_Kib.topclient, 10, 1530, 770, "Левую нажать", 10);
goto KIB_10;
KIB_6:;
int x,y;
getmouse(x,y)
if(x>=1zone,2zone,3zone,4zone,5zone,6zone) goto KIB_9;
goto KIB_12;
KIB_4: FindImage(0, #Screen[0][0], #W_Kib, W_Kib.leftclient, W_Kib.topclient, #Image0[0][0], 1, 0, 0, 0, #K_Kib, #X_Kib[0], #Y_Kib[0], 675, 820, 1250, 880, 10, 1000, -1, 0, 100, 1, 0, "0, 0, 0, 0", 0, "Бездействие", 0, 0, 0, 0, 5, 5, 0, 0);
goto KIB_6;
KIB_Exit:;
}

function FindImage(int ew, int #Scr, win #w, int v_x, int v_y, int #image, int kol, int Sort, int sortx, int sorty, int #mK, int #mX, int #mY, int ex1, int ey1, int ex2, int ey2, int p1, int t, int cf, int r, int proc, int g1, int ignor, string mas_ignor, int p2, string m, int smx, int smy, int p3, int per_m, int per_x, int per_y, int p4, int povtor)
{
pause (p1);
int pvt=0;
S:;
if (t==0)t=1;
looptime(t)
{
if (ew==0)mK=findimage(SWIFT*g1, kol, #image[0][0], cf, #mX[0], #mY[0], ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, -1);
if (ew==1)mK=findimage(SWIFT*g1, kol, #image[0][0], cf, #mX[0], #mY[0], v_x+ex1, v_y+ey1, v_x+ex2, v_y+ey2, r, r, r, r, r, r, proc, 1, -1);
if (ew==2)mK=findimage(SWIFT*g1, kol, #image[0][0], cf, #mX[0], #mY[0], ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, w);
if (ew==3 || ew==4)mK=findimage(SWIFT*g1, kol, #image[0][0], cf, #mX[0], #mY[0], ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, #Scr[0][0]);
if (mK>0) break;
sleep(5);
}
if (mK<1) return mK;
if (ew==3 || ew==4){ex1=ex1+screenstartx(); ey1=ey1+screenstarty();}
for (int n=0; n<mK; n++)
{
mX[n]=mX[n]+ex1;
mY[n]=mY[n]+ey1;
}
if (ignor)
{
mas_ignor=mas_ignor+"^r^n";
string P[4];
int x1, y1, x2, y2;
if (regexsearch(4, #P[0], mas_ignor, "[0-9]+(?=,|\r\n)")==4)
{
x1=formatsn(P[0]); y1=formatsn(P[1]); x2=formatsn(P[2]); y2=formatsn(P[3]);
for (n=0; n<mK; n++)
{
if (mX[n]>x1 && mX[n]<x2 && mY[n]>y1 && mY[n]<y2)
{
mK--;
for (int n1=n; n1<mK; n1++)
{
mX[n1]=mX[n1+1]; mY[n1]=mY[n1+1];
}
if (mK<1) return mK;
n--;
}
}
while (regexsearch(4, #P[0])==4)
{
x1=formatsn(P[0]); y1=formatsn(P[1]); x2=formatsn(P[2]); y2=formatsn(P[3]);
for (n=0; n<mK; n++)
{
if (mX[n]>x1 && mX[n]<x2 && mY[n]>y1 && mY[n]<y2)
{
mK--;
for (n1=n; n1<mK; n1++)
{
mX[n1]=mX[n1+1]; mY[n1]=mY[n1+1];
}
if (mK<1) return mK;
n--;
}
}
}
}
}


(Добавление)
CODE:
if (Sort) sort(sortx, sorty, #mX[0], #mY[0], mK);
pause (p2);
if (ew==0 || ew==3 || ew==1)
{
if (ew==1){smx=v_x+smx; smy=v_y+smy;}
if (m=="Левую клик"){mouse(LEFT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Среднюю клик"){mouse(MIDDLE, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Правую клик"){mouse(RIGHT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Левую нажать"){mousedown(LEFT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Среднюю нажать"){mousedown(MIDDLE, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Правую нажать"){mousedown(RIGHT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Левую отпустить"){mouseup(LEFT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Среднюю отпустить"){mouseup(MIDDLE, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Правую отпустить"){mouseup(RIGHT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Левая двойной клик"){mousedbl(LEFT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Средняя двойной клик"){mousedbl(MIDDLE, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Правая двойной клик"){mousedbl(RIGHT, smx+mX[0], smy+mY[0]); goto hy;}
if (m=="Переместить"){mousemove(smx+mX[0], smy+mY[0]); goto hy;}
}
if (ew==2 || ew==4)
{
if (m=="Левую клик"){sendmouse(LEFT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Среднюю клик"){sendmouse(MIDDLE, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Правую клик"){sendmouse(RIGHT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Левую нажать"){sendmousedown(LEFT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Среднюю нажать"){sendmousedown(MIDDLE, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Правую нажать"){sendmousedown(RIGHT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Левую отпустить"){sendmouseup(LEFT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Среднюю отпустить"){sendmouseup(MIDDLE, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Правую отпустить"){sendmouseup(RIGHT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Левая двойной клик"){sendmousedbl(LEFT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Средняя двойной клик"){sendmousedbl(MIDDLE, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Правая двойной клик"){sendmousedbl(RIGHT, smx+mX[0], smy+mY[0], w); goto hy;}
if (m=="Переместить")sendmousemove(smx+mX[0], smy+mY[0], w);
}
hy: if (m!="Бездействие")
{
pause (p3);
if (per_m)
{
if (ew==0 || ew==3 || ew==1)mousemove(per_x, per_y);
if (ew==2 || ew==4)sendmousemove(per_x, per_y, w);
}
}
int tX, tY;
if (p4>0)
{
looptime(p4)
{
if (ew==0){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, -1)==0) return mK;}
if (ew==1){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, v_x+ex1, v_y+ey1, v_x+ex2, v_y+ey2, r, r, r, r, r, r, proc, 1, -1)==0) return mK;}
if (ew==2){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, w)==0) return mK;}
if (ew==3 || ew==4){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, #Scr[0][0])==0) return mK;}
sleep(5);
}
}
if (povtor>0 && pvt<povtor)
{
if (ew==0){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, -1)==1) {pvt++; goto S;}}
if (ew==1){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, v_x+ex1, v_y+ey1, v_x+ex2, v_y+ey2, r, r, r, r, r, r, proc, 1, -1)==1) {pvt++; goto S;}}
if (ew==2){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, w)==1) {pvt++; goto S;}}
if (ew==3 || ew==4){if (findimage(SWIFT*g1, 1, #image[0][0], cf, #tX, #tY, ex1, ey1, ex2, ey2, r, r, r, r, r, r, proc, 1, #Scr[0][0])==1) {pvt++; goto S;}}
}
return mK;
}

function ScanPixel(int ew, int #Scr, win #w, int v_x, int v_y, int p1, int t, int px, int py, int col, int r)
{
pause (p1);
if (t==0)t=1;
looptime(t)
{
if (ew==0) {if (scanpixel(px, py, col, r, r, r, r, r, r, -1)) return 1;}
if (ew==1) {if (scanpixel(v_x+px, v_y+py, col, r, r, r, r, r, r, -1)) return 1;}
if (ew==2) {if (scanpixel(px, py, col, r, r, r, r, r, r, w)) return 1;}
if (ew==3 || ew==4) {if (scanpixel(px, py, col, r, r, r, r, r, r, #Scr[0][0])) return 1;}
sleep(5);
}
return 0;
}

function Mouse(int ew, win #w, int v_x, int v_y, int p1, int x, int y, string m, int p2)
{
pause(p1);
if (ew==0 || ew==1)
{
if (ew==1){x=v_x+x; y=v_y+y;}
if (m=="Левую клик"){mouse(LEFT, x, y); goto hy;}
if (m=="Среднюю клик"){mouse(MIDDLE, x, y); goto hy;}
if (m=="Правую клик"){mouse(RIGHT, x, y); goto hy;}
if (m=="Левую нажать"){mousedown(LEFT, x, y); goto hy;}
if (m=="Среднюю нажать"){mousedown(MIDDLE, x, y); goto hy;}
if (m=="Правую нажать"){mousedown(RIGHT, x, y); goto hy;}
if (m=="Левую отпустить"){mouseup(LEFT, x, y); goto hy;}
if (m=="Среднюю отпустить"){mouseup(MIDDLE, x, y); goto hy;}
if (m=="Правую отпустить"){mouseup(RIGHT, x, y); goto hy;}
if (m=="Левая двойной клик"){mousedbl(LEFT, x, y); goto hy;}
if (m=="Средняя двойной клик"){mousedbl(MIDDLE, x, y); goto hy;}
if (m=="Правая двойной клик"){mousedbl(RIGHT, x, y); goto hy;}
if (m=="Переместить"){mousemove(x, y); goto hy;}
}
if (ew==2)
{
if (m=="Левую клик"){sendmouse(LEFT, x, y, w); goto hy;}
if (m=="Среднюю клик"){sendmouse(MIDDLE, x, y, w); goto hy;}
if (m=="Правую клик"){sendmouse(RIGHT, x, y, w); goto hy;}
if (m=="Левую нажать"){sendmousedown(LEFT, x, y, w); goto hy;}
if (m=="Среднюю нажать"){sendmousedown(MIDDLE, x, y, w); goto hy;}
if (m=="Правую нажать"){sendmousedown(RIGHT, x, y, w); goto hy;}
if (m=="Левую отпустить"){sendmouseup(LEFT, x, y, w); goto hy;}
if (m=="Среднюю отпустить"){sendmouseup(MIDDLE, x, y, w); goto hy;}
if (m=="Правую отпустить"){sendmouseup(RIGHT, x, y, w); goto hy;}
if (m=="Левая двойной клик"){sendmousedbl(LEFT, x, y, w); goto hy;}
if (m=="Средняя двойной клик"){sendmousedbl(MIDDLE, x, y, w); goto hy;}
if (m=="Правая двойной клик"){sendmousedbl(RIGHT, x, y, w); goto hy;}
if (m=="Переместить")sendmousemove(x, y, w);
}
hy: if (m!="Бездействие")pause (p2);
}



function load_images()
{
loadimage (#Image1[0][0], "E:\Кибер\рыбак\Image_рыбка1.bmp");
loadimage (#Image2[0][0], "E:\Кибер\рыбак\Image_рыбка2.bmp");
loadimage (#Image0[0][0], "E:\Кибер\рыбак\красная.bmp");
}
2. neba2101 - 24 Июля, 2023 - 13:19:13 - перейти к сообщению
CODE:
int 1 [] ;int 2 [] ;int 3 [] ;int 4 [] ;int 5 [] ;int 6 [] ;
int 1zone > 674 && int 1 zone <771;
int 2zone > 771 && int 1 zone <866;
int 3zone > 866 && int 1 zone <961;
int 4zone > 961 && int 1 zone <1066;
int 5zone > 1066 && int 1 zone <1156;
int 6zone > 1156 && int 1 zone <1251;


Название переменной не может начинаться с цифры
3. Alexey_Tish - 24 Июля, 2023 - 13:38:55 - перейти к сообщению
 neba2101 пишет:
CODE:
int 1 [] ;int 2 [] ;int 3 [] ;int 4 [] ;int 5 [] ;int 6 [] ;
int 1zone > 674 && int 1 zone <771;
int 2zone > 771 && int 1 zone <866;
int 3zone > 866 && int 1 zone <961;
int 4zone > 961 && int 1 zone <1066;
int 5zone > 1066 && int 1 zone <1156;
int 6zone > 1156 && int 1 zone <1251;


Название переменной не может начинаться с цифры


Не понял Спасибо огромное, а есть ли в принципе в кибор обучалки по массивам одномерным и двумерным, хотя бы синтаксис ?
4. Zireael - 24 Июля, 2023 - 18:23:27 - перейти к сообщению
 Цитата:
хотя бы синтаксис ?

CODE:
int arr[5]; // массив на 5 элементов
arr[0] = 10;
arr[1] = 20;
messagebox(arr[0]);
messagebox(arr[1]);

CODE:
int arr[5] = {10, 20, 30, 40, 50}; // инициализация массива при объявлении
messagebox(arr[0]);
messagebox(arr[1]);

CODE:
int arr[5][2]; // двухмерный массив 5*2
arr[0][0] = 10;
arr[0][1] = 20;
arr[1][0] = 30;
messagebox(arr[0][0]);
messagebox(arr[0][1]);
messagebox(arr[1][0]);
5. Alexey_Tish - 24 Июля, 2023 - 22:44:19 - перейти к сообщению
CODE:
int arr[5]; // массив на 5 элементов
arr[0] = 10;
arr[1] = 20;
messagebox(arr[0]);
messagebox(arr[1]);

CODE:
int arr[5] = {10, 20, 30, 40, 50}; // инициализация массива при объявлении
messagebox(arr[0]);
messagebox(arr[1]);

CODE:
int arr[5][2]; // двухмерный массив 5*2
arr[0][0] = 10;
arr[0][1] = 20;
arr[1][0] = 30;
messagebox(arr[0][0]);


messagebox(arr[0][1]);
messagebox(arr[1][0]);


А если мне надо создать массив на 95 элементов, который меньше 770, но больше 675, если в c# для этого можно использовать Range, то тут как ?
6. Zireael - 25 Июля, 2023 - 03:16:05 - перейти к сообщению
 Цитата:
А если мне надо создать массив на 95 элементов, который меньше 770, но больше 675

Вообще непонятно что вы хотите.
Создайте массив на 675 элементов, в него поместятся 95 и это меньше чем 770.

Powered by ExBB FM 1.0 Final