Мастер
Покинул форум
Сообщений всего: 125
Дата рег-ции: Сент. 2020
Репутация: 1
|
Помогите оптимизировать код:
Нужно найти кликнуть на все желтые кружки в приоритете те, что ближе. Персонаж в центре съедает их как только дойдет до них, но кругляшки хаотично перемещаются по карте. Так же кругляшки могут исчезнуть до того как персонаж дойдет до них. Персонаж может сам поменять местоположение или перед ним появится преграда.
В общем получился такой код но явно можно как то его как т оптимизировать чтобы находил и съедал кружки быстрее.
CODE:
int xr=399;
int yr=330;//центр карты
int x[100], y[100];
loop()
{
//поиск в ближайшем кругу
if(find_object(333, 271, 478, 393)==1) {
for (int a1=0; a1<15; a1++)
{
klik(333, 271, 478, 393);
}
a1=0;
sleep(30);
}
}
//поиск в дальнем кругу
if(find_object(0, 0, 800, 600)==1) {
for (int a=0; a<30; a++)
{
klik(0, 0, 800, 600);
}
a=0;
sleep(30);
}
function find_object(int kor1, int kor2, int kor3, int kor4) {
int k=findcolor(1, #x[0], #y[0], kor1, kor2, kor3, kor4, 65535, -1);
if(k>0) return 1;
return 0;
}
function klik(int kor1, int kor2, int kor3, int kor4) {
int k=findcolor(1, #x[0], #y[0], kor1, kor2, kor3, kor4, 65535, -1);
//int k=findimage(1, #Image_1[0][0], 13553358, #x[0], #y[0], 0, 0, 800, 600, -1);
textbkcolor (255, 65280);
for(int i=0; i<k; i++)
{
textout(i, x[i]+kor1, y[i]+kor2, format(i), 0);
//mouse(LEFT, x[i]+kor1, y[i]+kor2);
sleep(30);
}
}
|