Бот для мобильной игры eldor.ru - Легенды Элдора
Вот собственно этот нехитрый скрипт: архив с рисунками, эмулятором, игрой и скриптом.
В архиве все вместе. Распаковать на С.
Эмулятор и игра выложены так как именно этот эмулятор и игру использовать. Настройки эмуля - стандартные.
Стартовать скрипт в такой позиции
Скрипт настроен на темного рыцаря.
Для замены моба надо только заменить в папке рисунок kris.bmp. Скрипт не трогать.
Серия ударов прокомментирована . Порядок и количество взял от фонаря. Настройте сами количество и порядок.
Сам скрипт
CODE:
win w=window ("KEmulator Lite v0.9.8", "SWT_Window0", -1);
int t;
int ojidat=50000; //Время которое ждем после восрешение
int ojidat1=20000; //Время которое ждем после боя и победы
int X, Y;
int bestisrii[61][9];
int zagryzka[18][18];
int kris[70][25];
int xod[23][11];
int porajenie[67][9];
int xram[30][9];
int pobeda[44][9];
int voskresli[81][9];
int mech[5][5];
int km_skil;
int количество_ударов_в_серии=5;//Из какого количества ударов состоит серия
int skil[5];//Должно быть столько сколько ударов в серии
//Заполнить массив последовательностью ударов. 1-меч вверх, 2-посередине, 3-вниз
skil[0]=1; skil[1]=3; skil[2]=2; skil[3]=3; skil[4]=2;//Добавить если надо больше. Добавлять с количество_ударов_в_серии и int skil[5]
activate(w);
sleep(1000);
loadimage (#bestisrii[0][0], "C:\eldor\bestisrii.bmp");
loadimage (#zagryzka[0][0], "C:\eldor\zagryzka.bmp");
loadimage (#kris[0][0], "C:\eldor\kris.bmp");
loadimage (#xod[0][0], "C:\eldor\xod.bmp");
loadimage (#porajenie[0][0], "C:\eldor\porajenie.bmp");
loadimage (#xram[0][0], "C:\eldor\xram.bmp");
loadimage (#pobeda[0][0], "C:\eldor\pobeda.bmp");
loadimage (#voskresli[0][0], "C:\eldor\voskresli.bmp");
loadimage (#mech[0][0], "C:\eldor\mech.bmp");
l: keydown(DOWN);sleep(500);keyup(DOWN);//жмем вниз
//////////////////////////////////////////////////////////////
find_bestisrii();//Ищем вход в бестиарий;
find_kris();//Ищем крыс списке;
boi();// бой
//////////////////////////////////////////////////////////////////////
goto l;
function find_bestisrii()
{
if (findimage(1, #bestisrii[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся бестиарий
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
}
}
function find_kris()
{
if (findimage(1, #kris[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся крыс
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
}
}
function boi()
{
km_skil=0;
b: if (findimage(1, #xod[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся ход
{
//Тут должен быть код нажатий разных ударов
if (findimage(1, #mech[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//появление выбора ударов
{
sleep(500);
if (skil[km_skil]==2){keydown(DOWN);sleep(500);keyup(DOWN);}
if (skil[km_skil]==3){keydown(DOWN);sleep(500);keyup(DOWN);sleep(500);keydown(DOWN);sleep(500);keyup(DOWN);}
km_skil++;
if (km_skil==количество_ударов_в_серии)km_skil=0;
sleep(500);
keydown(F2);sleep(500);keyup(F2);
sleep(500);
}
if (findimage(1, #porajenie[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//поражение
{
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
l1: keydown(DOWN);sleep(500);keyup(DOWN);//жмем вниз
if (find_xram()==1)return;
goto l1;
}
if (findimage(1, #pobeda[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//победа
{
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a1: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a1;}//ждать загрузку
t=gettime();
ay: if (gettime()-t<ojidat1){sleep(50);goto ay;}
return;
}
goto b;
}
}
function find_xram()
{
if (findimage(1, #xram[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся храм
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
j: if (findimage(1, #voskresli[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)
{
sleep(500);
keydown(F1);sleep(500);keyup(F1);
a5: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a5;}//ждать загрузку
keydown(UP);sleep(7000);keyup(UP);
t=gettime();
ay: if (gettime()-t>ojidat) return 1;//Воскресли
sleep(50);
goto ay;
}
sleep(100);
goto j;
}
return 0;
}
int t;
int ojidat=50000; //Время которое ждем после восрешение
int ojidat1=20000; //Время которое ждем после боя и победы
int X, Y;
int bestisrii[61][9];
int zagryzka[18][18];
int kris[70][25];
int xod[23][11];
int porajenie[67][9];
int xram[30][9];
int pobeda[44][9];
int voskresli[81][9];
int mech[5][5];
int km_skil;
int количество_ударов_в_серии=5;//Из какого количества ударов состоит серия
int skil[5];//Должно быть столько сколько ударов в серии
//Заполнить массив последовательностью ударов. 1-меч вверх, 2-посередине, 3-вниз
skil[0]=1; skil[1]=3; skil[2]=2; skil[3]=3; skil[4]=2;//Добавить если надо больше. Добавлять с количество_ударов_в_серии и int skil[5]
activate(w);
sleep(1000);
loadimage (#bestisrii[0][0], "C:\eldor\bestisrii.bmp");
loadimage (#zagryzka[0][0], "C:\eldor\zagryzka.bmp");
loadimage (#kris[0][0], "C:\eldor\kris.bmp");
loadimage (#xod[0][0], "C:\eldor\xod.bmp");
loadimage (#porajenie[0][0], "C:\eldor\porajenie.bmp");
loadimage (#xram[0][0], "C:\eldor\xram.bmp");
loadimage (#pobeda[0][0], "C:\eldor\pobeda.bmp");
loadimage (#voskresli[0][0], "C:\eldor\voskresli.bmp");
loadimage (#mech[0][0], "C:\eldor\mech.bmp");
l: keydown(DOWN);sleep(500);keyup(DOWN);//жмем вниз
//////////////////////////////////////////////////////////////
find_bestisrii();//Ищем вход в бестиарий;
find_kris();//Ищем крыс списке;
boi();// бой
//////////////////////////////////////////////////////////////////////
goto l;
function find_bestisrii()
{
if (findimage(1, #bestisrii[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся бестиарий
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
}
}
function find_kris()
{
if (findimage(1, #kris[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся крыс
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
}
}
function boi()
{
km_skil=0;
b: if (findimage(1, #xod[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся ход
{
//Тут должен быть код нажатий разных ударов
if (findimage(1, #mech[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//появление выбора ударов
{
sleep(500);
if (skil[km_skil]==2){keydown(DOWN);sleep(500);keyup(DOWN);}
if (skil[km_skil]==3){keydown(DOWN);sleep(500);keyup(DOWN);sleep(500);keydown(DOWN);sleep(500);keyup(DOWN);}
km_skil++;
if (km_skil==количество_ударов_в_серии)km_skil=0;
sleep(500);
keydown(F2);sleep(500);keyup(F2);
sleep(500);
}
if (findimage(1, #porajenie[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//поражение
{
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
l1: keydown(DOWN);sleep(500);keyup(DOWN);//жмем вниз
if (find_xram()==1)return;
goto l1;
}
if (findimage(1, #pobeda[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//победа
{
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a1: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a1;}//ждать загрузку
t=gettime();
ay: if (gettime()-t<ojidat1){sleep(50);goto ay;}
return;
}
goto b;
}
}
function find_xram()
{
if (findimage(1, #xram[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся храм
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
j: if (findimage(1, #voskresli[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)
{
sleep(500);
keydown(F1);sleep(500);keyup(F1);
a5: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a5;}//ждать загрузку
keydown(UP);sleep(7000);keyup(UP);
t=gettime();
ay: if (gettime()-t>ojidat) return 1;//Воскресли
sleep(50);
goto ay;
}
sleep(100);
goto j;
}
return 0;
}