//Объявление переменных
int PrivyazkaXY[14][14];//Переменная для загрузки рисунка
int Vid_Mob[9][9];
int Tab_Vid[166][39];
int Privyazka_Radar[15][20];
int P_X[1], P_Y[1];//Переменные для принятия координат рисунки
int S_X, S_Y, F_X, F_Y;//Координаты левого верхнего и правого нижнего угла области поиска мобов на экране
//....................................
//Начало программы
if (Load_Image()==-1)//Загрузка рисунков
{
messagebox("Не найдены рисунки в C:\L2_online.");
goto error;
}
if (Pozicion_Image()==-1) goto error;//Расчет координат
loop:; //Основное тело программы. Крутится по кругу
Poisk_Target();//Поиск ближних мобов взятием в таргет
Poisk();//Поиск мобов на экране
Poisk_Radar();//Поиск на радаре
goto loop;//Зацикливаем тело программы
error:;//Если функция вернула ошибку идем к этой метке. Выходим с программы.
//Тут идет непосредственно код вызываемых функций:
function Load_Image()//Загрузка рисунков
{
if (loadimage (#PrivyazkaXY[0][0], "C:\L2_online\PrivyazkaXY.bmp")==-1)return -1; //При неудачной загрузке выходим из функции и вернем -1
if (loadimage (#Vid_Mob[0][0], "C:\L2_online\Vid_Mob.bmp")==-1)return -1;
if (loadimage (#Tab_Vid[0][0], "C:\L2_online\Tab_Vid.bmp")==-1)return -1;
if (loadimage (#Privyazka_Radar[0][0], "C:\L2_online\Privyazka_Radar.bmp")==-1)return -1;
return 0;
}
function Pozicion_Image()//Расчет координат
{
int xe, ye, color;//Переменные который используются в теле функции можно объявить тут. Их больше нигде не видно. Могут иметь одинаковые имена.
getdisplay(color, xe,ye);//Узнать разрешение экрана
if (findimage(1, #PrivyazkaXY[0][0], 0, #P_X[0], #P_Y[0], 0, 0, xe, ye, w)==0){messagebox("Не найден в игре рисугок кнопки настройки чата."); return -1;}
S_X=P_X[0]; S_Y=P_Y[0]-625;//Левый верхний угол области поиска (5)
F_X=P_X[0]+1010; F_Y=P_Y[0]-160;//Правый нажний угол области поиска (5)
return 0;
}
function Poisk_Target()//Поиск ближних мобов взятием в таргет
{
key(F5);//Нажать на F5 или другую кнопку. На ней лежит функция авто взятия в таргет в игре
sleep(500);//Ждем пол секунды
if (Ataka()==1)//Тут идет вызов еще одной функции. Она проверяет есть ли моб в таргете и если есть льет его. Возвращает 1 если моб был и убит
{
sleep(rand(150, 250));//Ждем от 150 до 250 мсек. (Защита от анти автокликеров. Рандом).
key(F4);//Нажать на F4 (взять лут если есть)
sleep(rand(150, 250));
key(F4);
return 1;//Выход с функции и вернуть 1.
}
return 0;//Выход с функции и вернуть 0.
}
function Poisk()//Поиск мобов на экране
{
//....................
}
function Poisk_Radar()//Поиск на радаре
{
//....................
}
function Ataka()//Проверка есть ли моб в таргете и его бой
{
//....................
}
|