Kibor |
Отправлено: 14 Марта, 2016 - 15:15:05
|
Эксперт
Покинул форум
Сообщений всего: 8227
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
Oustm1ne пишет: мне нужно найти картинку в одном определенном месте
а их много? почему искать нельзя на экране?
Oustm1ne пишет: теперь у меня другая проблема. бот переходит на ветку "красное" когда находит "черное"
проблема логики. надо строить правильно. |
|
|
Oustm1ne |
Отправлено: 14 Марта, 2016 - 17:23:32
|
Прохожий
Покинул форум
Сообщений всего: 11
Дата рег-ции: Март 2016
Репутация: 0
|
собственно очередная проблема...
скрипт вырубается после выпадения черного и перехода на другую ветку,хотя координаты выставлены верно и задержки по 1000мс стоят
PHP:int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[35][31];
int Image_1_KIB[35][31];
int Image_2_KIB[35][31];
start_();
m_KIB1: mouse_(0, 1, 884, 651, 1000);
mouse_(1, 1, 341, 837, 1000);
mouse_(1, 1, 483, 777, 1000);
if (findimage_(#Image_0_KIB[0][0], 100, 30000, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB4;
else goto m_KIB8;
m_KIB4: mouse_(3000, 1, 883, 572, 1000);
mouse_(0, 1, 341, 837, 1000);
mouse_(0, 1, 483, 777, 1000);
m_KIB10: if (findimage_(#Image_2_KIB[0][0], 100, 30000, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB1;
else goto m_KIB11;
m_KIB9: findimage_(#Image_2_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB);
m_KIB13: mouse_(1, 1, 310, 835, 1000);
mouse_(1, 1, 490, 837, 1000); goto m_KIB17;
m_KIB11: if (findimage_(#Image_1_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB14;
else goto m_KIB12;
m_KIB8: if (findimage_(#Image_1_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB13;
else goto m_KIB9;
m_KIB14: mouse_(1, 1, 310, 835, 1000);
mouse_(1, 1, 490, 837, 1000);
mouse_(1, 1, 483, 777, 1000); goto exit_KIB;
m_KIB12: if (findimage_(#Image_0_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB14;
else goto m_KIB10;
m_KIB17: mouse_(1, 1, 483, 777, 1000);
exit_KIB:;
function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}
function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) mouse(LEFT, xm, ym);
if (m==2) mouse(MIDDLE, xm, ym);
if (m==3) mouse(RIGHT, xm, ym);
if (m==4) mousedown(LEFT, xm, ym);
if (m==5) mousedown(MIDDLE, xm, ym);
if (m==6) mousedown(RIGHT, xm, ym);
if (m==7) mouseup(LEFT, xm, ym);
if (m==8) mouseup(MIDDLE, xm, ym);
if (m==9) mouseup(RIGHT, xm, ym);
if (m==10) mousemove(xm, ym);
pause(p2);
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\Users\Oustm1ne\Documents\кибор\черное.bmp");
loadimage (#Image_1_KIB[0][0], "C:\Users\Oustm1ne\Documents\кибор\ноль.bmp");
loadimage (#Image_2_KIB[0][0], "C:\Users\Oustm1ne\Documents\кибор\красное.bmp");
}
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#sum, int#x, int#y)
{
pause(p1);
sum_KIB=0;
if (t!=1) tim_KIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, ex_KIB, ey_KIB, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, ex_KIB, ey_KIB, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-tim_KIB<t){sleep(20); goto a;}
return 0;
e: sum_KIB=sum; x_KIB=x[0]; y_KIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==10){mousemove(x_KIB+xm, y_KIB+ym); pause(p3);}
return sum_KIB;
}
[img][/img]
зеленым выделено место где оно выключается без ошибок вместо того чтобы поменять цвет на красное по заданым координатам
(Добавление)
решено
(Добавление)
а где взять цифровые коды клавиш? |
|
|
Kibor |
Отправлено: 14 Марта, 2016 - 18:00:56
|
Эксперт
Покинул форум
Сообщений всего: 8227
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
Oustm1ne пишет: скрипт вырубается после выпадения черного
попробуй связи не лепить друг на друга. разведи связи
Oustm1ne пишет: а где взять цифровые коды клавиш? (для просмотра ссылки Вам необходимо авторизоваться) |
|
|
Oustm1ne |
Отправлено: 17 Марта, 2016 - 19:04:10
|
Прохожий
Покинул форум
Сообщений всего: 11
Дата рег-ции: Март 2016
Репутация: 0
|
на сайте проблему пофиксили,все работает до определенного момента.
0 - ставим на черное
1 - ставим пока не выиграем. удваиваем в случае проигрыша
2 - когда выиграло черное переставляем на красное
3- ТУТ БОТ ЗАКАНЧИВАЕТ РАБОТУ ПО НЕПРЕДВИДЕННОЙ ПРИЧИНЕ ХОТЯ ДОЛЖЕН ПЕРЕСТАВИТЬ НА ЧЕРНОЕ В СЛУЧАЕ ПОБЕДЫ. ошибок нет,просто завершается скрипт после установки ставки
4 - теоретически снова ставим на черное
(Добавление)
код (Отобразить)PHP:int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[10][30];
int Image_1_KIB[35][31];
int Image_2_KIB[10][30];
start_();
m_KIB1: mouse_(0, 1, 884, 651, 500);
mouse_(1, 1, 342, 835, 500);
mouse_(3000, 1, 483, 777, 0);
m_KIB7: if (findimage_(#Image_0_KIB[0][0], 100, 30000, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB4;
else goto m_KIB8;
m_KIB4: mouse_(0, 1, 886, 569, 300);
mouse_(300, 1, 341, 842, 0); goto m_KIB6;
m_KIB9: if (findimage_(#Image_2_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB13;
else goto m_KIB7;
m_KIB8: if (findimage_(#Image_1_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB13;
else goto m_KIB9;
m_KIB13: mouse_(1, 1, 315, 836, 300);
mouse_(1, 1, 492, 834, 300);
mouse_(2700, 1, 483, 777, 0); goto m_KIB7;
m_KIB12: if (findimage_(#Image_0_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB15;
else goto m_KIB10;
m_KIB15: mouse_(200, 1, 309, 839, 300);
mouse_(300, 1, 492, 839, 0);
mouse_(2500, 1, 483, 777, 0);
m_KIB10: if (findimage_(#Image_2_KIB[0][0], 100, 50000, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB14;
else goto m_KIB11;
m_KIB14: sleep(10); goto m_KIB1;
m_KIB11: if (findimage_(#Image_1_KIB[0][0], 100, 100, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB15;
else goto m_KIB12;
m_KIB6: mouse_(3000, 1, 483, 777, 0);
function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}
function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) mouse(LEFT, xm, ym);
if (m==2) mouse(MIDDLE, xm, ym);
if (m==3) mouse(RIGHT, xm, ym);
if (m==4) mousedown(LEFT, xm, ym);
if (m==5) mousedown(MIDDLE, xm, ym);
if (m==6) mousedown(RIGHT, xm, ym);
if (m==7) mouseup(LEFT, xm, ym);
if (m==8) mouseup(MIDDLE, xm, ym);
if (m==9) mouseup(RIGHT, xm, ym);
if (m==10) mousemove(xm, ym);
pause(p2);
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\Users\Oustm1ne\Documents\êèáîð\÷åðíîå.bmp");
loadimage (#Image_1_KIB[0][0], "C:\Users\Oustm1ne\Documents\êèáîð\íîëü.bmp");
loadimage (#Image_2_KIB[0][0], "C:\Users\Oustm1ne\Documents\êèáîð\êðàñíîå.bmp");
}
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#sum, int#x, int#y)
{
pause(p1);
sum_KIB=0;
if (t!=1) tim_KIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, ex_KIB, ey_KIB, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, ex_KIB, ey_KIB, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-tim_KIB<t){sleep(20); goto a;}
return 0;
e: sum_KIB=sum; x_KIB=x[0]; y_KIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==10){mousemove(x_KIB+xm, y_KIB+ym); pause(p3);}
return sum_KIB;
}
(Отредактировано автором: 17 Марта, 2016 - 19:19:10) |
|
|
|