Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (7): [1] 2 3 4 5 6 7 »   

> Без описания
777J0KeR777
Отправлено: 11 Мая, 2015 - 01:27:23
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 42
Дата рег-ции: Июнь 2014  
Репутация: 0




Всем привет. Пытался написать скрипт к одной игрухе, состоящий всего то из 3х функций. Поиск одного изображения и "протыкивания" определённых координат. Затем поиск другого изображения и проделывания того же "протыкивания". Ну и всё то же обстоит с 3им.

Написал такую вот кашу:

CODE:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int goto;
int a;
int b;
int Image_0[19][22];
int Image_1[15][20];
int Image_2[18][13];
loadimage (#Image_1[0][0], "J:\kibor\Новая папка\молотки.bmp");
loadimage (#Image_0[0][0], "J:\kibor\Новая папка\денюжки.bmp");
loadimage (#Image_2[0][0], "J:\kibor\Новая папка\спит.bmp");
int PosX_0[512];int PosY_0[512];
int PosX_1[512];int PosY_1[512];
int PosX_2[512];int PosY_2[512];



a:
if(findimage(1, #Image_0[0][0], 255, #PosX_0[0], #PosY_0[0], 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 835, 663);
pause (500);
mouse (LEFT, 919, 631);
pause (500);
mouse (LEFT, 865, 585);
pause (500);
mouse (LEFT, 799, 559);
pause (500);
mouse (LEFT, 735, 529);
pause (500);
mouse (LEFT, 685, 501);
pause (500);
mouse (LEFT, 745, 465);
pause (500);
mouse (LEFT, 793, 489);
pause (500);
mouse (LEFT, 857, 517);
pause (500);
mouse (LEFT, 911, 549);
pause (500);
mouse (LEFT, 1005, 599);
pause (500);
mouse (LEFT, 1091, 537);
pause (500);
mouse (LEFT, 1011, 505);
pause (500);
mouse (LEFT, 963, 477);
pause (500);
mouse (LEFT, 899, 449);
pause (500);
mouse (LEFT, 837, 421);
pause (500);
}


sleep (1000);



if(findimage(1, #Image_1[0][0], 255, #PosX_1[0], #PosY_1[0], 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 249, 511);
pause (500);
mouse (LEFT, 387, 465);
pause (500);
mouse (LEFT, 523, 513);
pause (500);
mouse (LEFT, 401, 571);
pause (500);
mouse (LEFT, 479, 613);
pause (500);
}


sleep(10000);


if(findimage(1, #Image_2[0][0], 255, #PosX_2[0], #PosY_2[0], 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 271, 525);
pause (1200);
mouse (LEFT, 381, 521);
pause (1200);
mouse (LEFT, 395, 471);
pause (1200);
mouse (LEFT, 409, 517);
pause (1200);
mouse (LEFT, 405, 575);
pause (1200);
mouse (LEFT, 431, 519);
pause (1200);
mouse (LEFT, 535, 521);
pause (1200);
mouse (LEFT, 487, 523);
pause (1200);
mouse (LEFT, 487, 625);
pause (1200);
mouse (LEFT, 455, 515);
pause (1200);

}



sleep (3000000);


goto a;


Ну и столкнулся со следующей проблемой: скрипту на "if(findimage..." вообще наплевать. он выполняет только первый массив, тобишь "протыкивает" первые координаты, а когда заканчивает, их тыкать, то он спокойно начинает тыкать снова те же координаты из первого массива.

Там дело обстоит вот в чём. Стоят домики, с одних надо золото собрать, а с других молотки + запустить в них производство вышеупомянутых молотков.

Помогите, пожалуйста, решить данную проблему. У меня мозгов и знаний не хватает... Огорчение
 
 Top
Kibor
Отправлено: 11 Мая, 2015 - 09:51:22
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 777J0KeR777 пишет:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int goto;
int a;


а не нашлося другого имени?? это оператор. его нельзя юзать как имя.

нельзя использовать для меток и перем енных одни названия.
 777J0KeR777 пишет:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int goto;
int a;
int b;
int Image_0[19][22];
int Image_1[15][20];
int Image_2[18][13];
loadimage (#Image_1[0][0], "J:\kibor\Новая папка\молотки.bmp");
loadimage (#Image_0[0][0], "J:\kibor\Новая папка\денюжки.bmp");
loadimage (#Image_2[0][0], "J:\kibor\Новая папка\спит.bmp");
int PosX_0[512];int PosY_0[512];
int PosX_1[512];int PosY_1[512];
int PosX_2[512];int PosY_2[512];



a:
if(findimage(1, #Image_0[0][0], 255, #PosX_0[0], #PosY_0[0], 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 835, 663);
pause (500);
mouse (LEFT, 919, 631);
pause (500);
mouse (LEFT, 865, 585);
pause (500);
mouse (LEFT, 799, 559);
pause (500);
mouse (LEFT, 735, 529);
pause (500);
mouse (LEFT, 685, 501);
pause (500);
mouse (LEFT, 745, 465);
pause (500);
mouse (LEFT, 793, 489);
pause (500);
mouse (LEFT, 857, 517);
pause (500);
mouse (LEFT, 911, 549);
pause (500);
mouse (LEFT, 1005, 599);
pause (500);
mouse (LEFT, 1091, 537);
pause (500);
mouse (LEFT, 1011, 505);
pause (500);
mouse (LEFT, 963, 477);
pause (500);
mouse (LEFT, 899, 449);
pause (500);
mouse (LEFT, 837, 421);
pause (500);
}


sleep (1000);



if(findimage(1, #Image_1[0][0], 255, #PosX_1[0], #PosY_1[0], 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 249, 511);
pause (500);
mouse (LEFT, 387, 465);
pause (500);
mouse (LEFT, 523, 513);
pause (500);
mouse (LEFT, 401, 571);
pause (500);
mouse (LEFT, 479, 613);
pause (500);
}


sleep(10000);


if(findimage(1, #Image_2[0][0], 255, #PosX_2[0], #PosY_2[0], 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 271, 525);
pause (1200);
mouse (LEFT, 381, 521);
pause (1200);
mouse (LEFT, 395, 471);
pause (1200);
mouse (LEFT, 409, 517);
pause (1200);
mouse (LEFT, 405, 575);
pause (1200);
mouse (LEFT, 431, 519);
pause (1200);
mouse (LEFT, 535, 521);
pause (1200);
mouse (LEFT, 487, 523);
pause (1200);
mouse (LEFT, 487, 625);
pause (1200);
mouse (LEFT, 455, 515);
pause (1200);

}



sleep (3000000);


goto a ;


примерный рабочий
CODE:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int Image_0[19][22];
int Image_1[15][20];
int Image_2[18][13];
loadimage (#Image_1[0][0], "J:\kibor\Новая папка\молотки.bmp");
loadimage (#Image_0[0][0], "J:\kibor\Новая папка\денюжки.bmp");
loadimage (#Image_2[0][0], "J:\kibor\Новая папка\спит.bmp");
int PosX;int PosY;



tt:
if(findimage(1, #Image_0[0][0], 255, #PosX, #PosY, 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 835, 663);
pause (500);
mouse (LEFT, 919, 631);
pause (500);
mouse (LEFT, 865, 585);
pause (500);
mouse (LEFT, 799, 559);
pause (500);
mouse (LEFT, 735, 529);
pause (500);
mouse (LEFT, 685, 501);
pause (500);
mouse (LEFT, 745, 465);
pause (500);
mouse (LEFT, 793, 489);
pause (500);
mouse (LEFT, 857, 517);
pause (500);
mouse (LEFT, 911, 549);
pause (500);
mouse (LEFT, 1005, 599);
pause (500);
mouse (LEFT, 1091, 537);
pause (500);
mouse (LEFT, 1011, 505);
pause (500);
mouse (LEFT, 963, 477);
pause (500);
mouse (LEFT, 899, 449);
pause (500);
mouse (LEFT, 837, 421);
pause (500);
}


pause (1000);



if(findimage(1, #Image_1[0][0], 255, #PosX, #PosY, 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 249, 511);
pause (500);
mouse (LEFT, 387, 465);
pause (500);
mouse (LEFT, 523, 513);
pause (500);
mouse (LEFT, 401, 571);
pause (500);
mouse (LEFT, 479, 613);
pause (500);
}


pause(10000);


if(findimage(1, #Image_2[0][0], 255, #PosX, #PosY, 0, 0, 1280, 992, w)==1)
{
mouse (LEFT, 271, 525);
pause (1200);
mouse (LEFT, 381, 521);
pause (1200);
mouse (LEFT, 395, 471);
pause (1200);
mouse (LEFT, 409, 517);
pause (1200);
mouse (LEFT, 405, 575);
pause (1200);
mouse (LEFT, 431, 519);
pause (1200);
mouse (LEFT, 535, 521);
pause (1200);
mouse (LEFT, 487, 523);
pause (1200);
mouse (LEFT, 487, 625);
pause (1200);
mouse (LEFT, 455, 515);
pause (1200);

}



pause (3000000);


goto tt;
 
 Top
777J0KeR777
Отправлено: 11 Мая, 2015 - 12:38:49
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 42
Дата рег-ции: Июнь 2014  
Репутация: 0




Спасибо, некоторые задачи решены Улыбка . Теперь строю тело скрипта таким вот образом:
CODE:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int Image_0[19][22];
int Image_1[15][20];
int Image_2[18][13];
int Image_0[45][45];
loadimage (#Image_0[0][0], "J:\kibor\Íîâàÿ ïàïêà\åñòü ÷òî ñîáðàòü.bmp.bmp");
int PosX;int PosY;



tt:
if(findimage(-1, #Image_0[0][0], 255, #PosX_0[0], #PosY_0[0], 0, 0, 1280, 1024, w)==1)
{
mouse (LEFT, 1191, 560);
pause (500);
mouse (LEFT, 1125, 544);
pause (500);
mouse (LEFT, 1043, 502);
pause (500);
mouse (LEFT, 985, 468);
pause (500);
mouse (LEFT, 917, 426);
pause (500);
mouse (LEFT, 859, 404);
pause (500);
mouse (LEFT, 797, 364);
pause (500);
mouse (LEFT, 711, 424);
pause (500);
mouse (LEFT, 763, 448);
pause (500);
mouse (LEFT, 841, 478);
pause (500);
mouse (LEFT, 899, 512);
pause (500);
mouse (LEFT, 949, 536);
pause (500);
mouse (LEFT, 1009, 570);
pause (500);
mouse (LEFT, 1071, 600);
pause (500);
mouse (LEFT, 1023, 636);
pause (500);
mouse (LEFT, 965, 620);
pause (500);
mouse (LEFT, 889, 586);
pause (500);
mouse (LEFT, 837, 548);
pause (500);
mouse (LEFT, 769, 518);
pause (500);
mouse (LEFT, 715, 484);
pause (500);
mouse (LEFT, 671, 458);
pause (500);

pause (1000);

mouse (LEFT, 537, 634);
pause (500);
mouse (LEFT, 483, 602);
pause (500);
mouse (LEFT, 367, 552);
pause (500);
mouse (LEFT, 479, 496);
pause (500);
mouse (LEFT, 385, 424);
pause (500);

}


pause(10000);


else
{
mouse (LEFT, 539, 650);
pause (500);
mouse (LEFT, 463, 480);
pause (1200);
mouse (LEFT, 461, 592);
pause (500);
mouse (LEFT, 447, 454);
pause (1200);
mouse (LEFT, 381, 546);
pause (500);
mouse (LEFT, 413, 460);
pause (1200);
mouse (LEFT, 479, 478);
pause (500);
mouse (LEFT, 457, 444);
pause (1200);
mouse (LEFT, 371, 416);
pause (500);
mouse (LEFT, 371, 414);
pause (1200);


}



goto tt;


Пишет ошибка в "else".

Далее, как научить скрипт тыкать не по заранее заданным координатам, а в точки, чуть пониже искомых рисунков? на 15 пикселей ниже? Вот допустим у меня стоит 15 домиков, одни уже сделали деньги, а другие ещё нет. Надо чтобы он протыкал именно по тем, которые сделали. Просто я частенько двигаю карту города как мне вздумается и домики естественно оказываются не в тех координатах, которые я им задавал изначально...

Прошу прощения за глупые вопросы, но наглядно понятней...перечитал соответствующие темы, но если бы было видео с "рассусоливаниями" для таких как я, мне было бы легче...

Заранее спасибо за ваш труд
 
 Top
Kibor
Отправлено: 11 Мая, 2015 - 15:54:10
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 Цитата:
if ()
{

}
else
{

}

 Цитата:
if ()
{

}
pause
else
{

}
 
 Top
777J0KeR777
Отправлено: 11 Мая, 2015 - 17:55:46
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 42
Дата рег-ции: Июнь 2014  
Репутация: 0




Такс, попробовал сделать чтобы скрипт сам нажимал на нужные домики, т.е. находил картинку (деньги над домами), спускался ниже и нажимал на дом. Выдаёт ошибку(
CODE:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int Image_0[19][22];
loadimage (#Image_0[0][0], "J:\kibor\Новая папка\денюжки.bmp");
int PosX;int PosY;


tt:
if (findimage (1, #Image_0[0][0], -1, #PosX, #PosY, 0, 0, 1280, 992, -1)>=1)
{

mouse(LEFT, x[0]+loadimage(#Image[0][0])/2, y[0]+loadimage(#Image[0][0])/2-50, 0, -1);
}
goto tt;


В чём мои ошибки?
 
 Top
Kibor
Отправлено: 11 Мая, 2015 - 19:24:00
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 777J0KeR777 пишет:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int Image_0[19][22];
loadimage (#Image_0[0][0], "J:\kibor\Новая папка\денюжки.bmp");
int PosX;int PosY;


tt:
if (findimage (1, #Image_0[0][0], -1, #PosX, #PosY, 0, 0, 1280, 992, -1)>=1)
{

mouse(LEFT, x[0]+loadimage(#Image[0][0])/2, y[0]+loadimage(#Image[0][0])/2-50, 0, -1);
}
goto tt;

????????????????????????????????.............?????????
 
 Top
777J0KeR777
Отправлено: 11 Мая, 2015 - 19:50:24
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 42
Дата рег-ции: Июнь 2014  
Репутация: 0




Ну надеюсь так будет понятней:


Скрин этих монеток есть. Мне надо сделать так, чтобы мышь нашла эти монетки, спустилась чутка ниже, навелась на домик и нажала, чтобы собрать налог. Как это лучше осуществить?...Я абсолютный новичок в этой программе, поэтому так много глупостей делаю) До Вас, гуру, мне ой как далеко))

(Отредактировано автором: 11 Мая, 2015 - 19:52:21)

 
 Top
Kibor
Отправлено: 11 Мая, 2015 - 20:00:15
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 777J0KeR777 пишет:
Ну надеюсь так будет понятней:

да и так понятно что хотелось. только не понятно чего вместо imagewidth imageheight вписано loadimage. что и выделил обратив на них внимание. ну и x[0] y[0] не понятно.

 Цитата:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int Image_0[19][22];
loadimage (#Image_0[0][0], "J:\kibor\Новая папка\денюжки.bmp");
int PosX;int PosY;


tt:
if (findimage (1, #Image_0[0][0], -1, #PosX, #PosY, 0, 0, 1280, 992, -1)>=1)
{
mouse(LEFT, PosX+imagewidth(#Image[0][0])/2, PosY+imageheight(#Image[0][0])/2, 0, -1);
sleep(500);
}
sleep(10);
goto tt;
 
 Top
777J0KeR777
Отправлено: 11 Мая, 2015 - 20:17:56
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 42
Дата рег-ции: Июнь 2014  
Репутация: 0




Вот именно поэтому и экспериментировал, потому что выдавало, впрочем как и сейчас выдаёт следующую ошибку:

(Отредактировано автором: 11 Мая, 2015 - 20:18:36)

 
 Top
Kibor
Отправлено: 11 Мая, 2015 - 20:26:23
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 777J0KeR777 пишет:
win w=window ("Forge of Empires - Mozilla Firefox", "MozillaWindowClass", -1);
int Image_0[19][22];
loadimage (#Image_0[0][0], "J:\kibor\Новая папка\денюжки.bmp");
int PosX;int PosY;


tt:
if (findimage (1, #Image_0[0][0], -1, #PosX, #PosY, 0, 0, 1280, 992, -1)>=1)
{
mouse(LEFT, PosX+imagewidth(#Image??????????[0][0])/2, PosY+imageheight(#Image????????[0][0])/2, 0, -1);
sleep(500);
}
sleep(10);
goto tt;


невнимательность это
 
 Top
Страниц (7): [1] 2 3 4 5 6 7 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by