Как правильно делать структуру программы.
скачать архив с рисунками http://kibor-bot.com/files/fishing.rar
распаковать на диск c
Рисунки должны быть по адресу
C:\fishing\zabros.bmp
......и т.д.
ссылка на игру На рыбалку
Видео работы http://youtu.be/u4WYst6_rvA
Цитата:
win w;
int zabros[95][19];
int tyanut[60][18];
int zakrit[17][17];
int zakrit2[15][17];
int zakrit3[13][14];
int polosa[50][5];
int ok[31][20];
int x, y;
int xt, yt;
int r=10, p=90;
int zona_x1, zona_y1, zona_x2, zona_y2;
w=window ("На рыбалку - Mozilla Firefox");//изменить на свой указатель
if (w==0){messagebox ("не найденуказатель на браузер"); goto error;}
zona_x1=0; zona_y1=0; zona_x2=w.widthclient; zona_y2=w.heightclient;//установка зоны поиска весь браузер
if (load()==-1){messagebox ("не найдены рис в C:\fishing"); goto error;}//загрузка рис
pause(2000);
enabletimer(0);//включить таймер
//тут строим петлю работыц бота. с готовых функций.
//чем меньше тут кода тем понятнее логика
lp: if (zabrosit()==1)//заброс если есть кнопка такая
{
lov();//тянуть рыб
}
sleep(25);
goto lp;// идем на начало петли работы бота
error:;
//тут реализация функций с которых состоит сам бот
function zabrosit()//заброс если есть кнопка такая
{
if (findimage(1, #zabros[0][0], 0, #x, #y, 0, 0, w.widthclient, w.heightclient, w)==1)// если есть Забростиь жмем на нее и идем в цикл ловли
{
zona_x1=x-315; zona_y1=y-420; zona_x2=x+380; zona_y2=y+50;//установка зоны поиска только игра
mouse (LEFT, x, y, 0, w);
sleep(500);
return 1;//вернем 1 заброс был
}
return 0;//вернем 0 заброса не было
}
function lov()//тянуть рыб
{
lp: if (findimage(1, #tyanut[0][0], 0, #xt, #yt, zona_x1, zona_y1, zona_x2, zona_y2, w)==1)// если есть кнопка Тянуть продолжаем цикл ловли
{
disabletimer(0);//отключить таймер
if (findimage(1, #polosa[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, w)==0)mousedown (LEFT, zona_x1+xt, zona_y1+yt, 0, w);//если середина полосы не окрашена жмем кнопку Тянуть
else mouseup (LEFT, zona_x1+xt, zona_y1+yt, 0, w);//если середина полосы окрашена отпускаем кнопку Тянуть
enabletimer(0);//включить таймер
}
goto lp;//идем на начало цикла ловли
}
function load()//загрузка рис
{
if (loadimage (#zabros[0][0], "C:\fishing\zabros.bmp")<1) return -1;//если не удача загрузки
if (loadimage (#tyanut[0][0], "C:\fishing\tyanut.bmp")<1) return -1;
if (loadimage (#zakrit[0][0], "C:\fishing\zakrit.bmp")<1) return -1;
if (loadimage (#zakrit2[0][0], "C:\fishing\zakrit2.bmp")<1) return -1;
if (loadimage (#zakrit3[0][0], "C:\fishing\zakrit3.bmp")<1) return -1;
if (loadimage (#polosa[0][0], "C:\fishing\polosa.bmp")<1) return -1;
if (loadimage (#ok[0][0], "C:\fishing\ok.bmp")<1) return -1;
return 1;//норм загрузка
}
CREATE_TIMER(0, 1000)//таймер каждую сек. проверка и закрытие табличек
{
//Добавление кода выполняемого по таймеру ......
if (findimage(1, #zakrit[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #zakrit2[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #zakrit3[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #ok[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
}
int zabros[95][19];
int tyanut[60][18];
int zakrit[17][17];
int zakrit2[15][17];
int zakrit3[13][14];
int polosa[50][5];
int ok[31][20];
int x, y;
int xt, yt;
int r=10, p=90;
int zona_x1, zona_y1, zona_x2, zona_y2;
w=window ("На рыбалку - Mozilla Firefox");//изменить на свой указатель
if (w==0){messagebox ("не найденуказатель на браузер"); goto error;}
zona_x1=0; zona_y1=0; zona_x2=w.widthclient; zona_y2=w.heightclient;//установка зоны поиска весь браузер
if (load()==-1){messagebox ("не найдены рис в C:\fishing"); goto error;}//загрузка рис
pause(2000);
enabletimer(0);//включить таймер
//тут строим петлю работыц бота. с готовых функций.
//чем меньше тут кода тем понятнее логика
lp: if (zabrosit()==1)//заброс если есть кнопка такая
{
lov();//тянуть рыб
}
sleep(25);
goto lp;// идем на начало петли работы бота
error:;
//тут реализация функций с которых состоит сам бот
function zabrosit()//заброс если есть кнопка такая
{
if (findimage(1, #zabros[0][0], 0, #x, #y, 0, 0, w.widthclient, w.heightclient, w)==1)// если есть Забростиь жмем на нее и идем в цикл ловли
{
zona_x1=x-315; zona_y1=y-420; zona_x2=x+380; zona_y2=y+50;//установка зоны поиска только игра
mouse (LEFT, x, y, 0, w);
sleep(500);
return 1;//вернем 1 заброс был
}
return 0;//вернем 0 заброса не было
}
function lov()//тянуть рыб
{
lp: if (findimage(1, #tyanut[0][0], 0, #xt, #yt, zona_x1, zona_y1, zona_x2, zona_y2, w)==1)// если есть кнопка Тянуть продолжаем цикл ловли
{
disabletimer(0);//отключить таймер
if (findimage(1, #polosa[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, w)==0)mousedown (LEFT, zona_x1+xt, zona_y1+yt, 0, w);//если середина полосы не окрашена жмем кнопку Тянуть
else mouseup (LEFT, zona_x1+xt, zona_y1+yt, 0, w);//если середина полосы окрашена отпускаем кнопку Тянуть
enabletimer(0);//включить таймер
}
goto lp;//идем на начало цикла ловли
}
function load()//загрузка рис
{
if (loadimage (#zabros[0][0], "C:\fishing\zabros.bmp")<1) return -1;//если не удача загрузки
if (loadimage (#tyanut[0][0], "C:\fishing\tyanut.bmp")<1) return -1;
if (loadimage (#zakrit[0][0], "C:\fishing\zakrit.bmp")<1) return -1;
if (loadimage (#zakrit2[0][0], "C:\fishing\zakrit2.bmp")<1) return -1;
if (loadimage (#zakrit3[0][0], "C:\fishing\zakrit3.bmp")<1) return -1;
if (loadimage (#polosa[0][0], "C:\fishing\polosa.bmp")<1) return -1;
if (loadimage (#ok[0][0], "C:\fishing\ok.bmp")<1) return -1;
return 1;//норм загрузка
}
CREATE_TIMER(0, 1000)//таймер каждую сек. проверка и закрытие табличек
{
//Добавление кода выполняемого по таймеру ......
if (findimage(1, #zakrit[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #zakrit2[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #zakrit3[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #ok[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto lp;//если закрыли какое то окно лов закончен. идем на начало
}
}