9 бурундуков в 9 лунках прыгают вместе

Закрыто
KakZheSlozhno
Сообщения: 3
Зарегистрирован: 12 дек 2022 21:45

9 бурундуков в 9 лунках прыгают вместе

Сообщение KakZheSlozhno »

Необходимо отслеживать 9 лунок, а когда появляется бурундук бить по нему.
Я так понимаю у меня в коде поиск идёт последовательно, помогите пожалуйста запустить все 9 поисков паралельно. Ну или если дело не в этом указать на ошибку.

Код: Выделить всё

    
Point a1 = Point.get(130,760);
Point a2 = Point.get(340,760);
Point a3 = Point.get(555,760);
Point a4 = Point.get(130,870);
Point a5 = Point.get(340,870);
Point a6 = Point.get(555,870);
Point a7 = Point.get(130,990);
Point a8 = Point.get(340,990);
Point a9 = Point.get(555,990);
int color = 14800319;
startScreenCapture();
sleep(1000);

while(!EXIT){
   while(getColor(a1) != color){
      sleep(10);
   }
   click(randomize(a1, 8));
   while(getColor(a2) != color){
      sleep(10);
   }
   click(randomize(a2, 8));
   while(getColor(a3) != color){
      sleep(10);
   }
   click(randomize(a3, 8));
   while(getColor(a4) != color){
      sleep(10);
   }
   click(randomize(a4, 8));
   while(getColor(a5) != color){
      sleep(10);
   }
   click(randomize(a5, 8));
   while(getColor(a6) != color){
      sleep(10);
   }
   click(randomize(a6, 8));
   while(getColor(a7) != color){
      sleep(10);
   }
   click(randomize(a7, 8));
   while(getColor(a8) != color){
      sleep(10);
   }
   click(randomize(a8, 8));
   while(getColor(a9) != color){
      sleep(10);
   }
   click(randomize(a9, 8));
}
     
Admin
Главный админ
Сообщения: 214
Зарегистрирован: 28 окт 2021 14:01

Re: 9 бурундуков в 9 лунках прыгают вместе

Сообщение Admin »

Вероятно, вам нужно что-то такое.

Код: Выделить всё

    
Point a1 = Point.get(130,760);
Point a2 = Point.get(340,760);
Point a3 = Point.get(555,760);
Point a4 = Point.get(130,870);
Point a5 = Point.get(340,870);
Point a6 = Point.get(555,870);
Point a7 = Point.get(130,990);
Point a8 = Point.get(340,990);
Point a9 = Point.get(555,990);
int color = 14800319;
startScreenCapture(2);
sleep(1000);

while(!EXIT){

   if(getColor(a1) == color)
     click(randomize(a1, 8));
   else if(getColor(a2) == color)
     click(randomize(a2, 8));
   else if(getColor(a3) == color)
     click(randomize(a3, 8));
   else if(getColor(a4) == color)
     click(randomize(a4, 8));
   else if(getColor(a5) == color)
     click(randomize(a5, 8));
   else if(getColor(a6) == color)
     click(randomize(a6, 8));
   else if(getColor(a7) == color)
     click(randomize(a7, 8));
   else if(getColor(a8) == color)
     click(randomize(a8, 8));
   else if(getColor(a9) == color)
     click(randomize(a9, 8));

   sleep(10);
}
KakZheSlozhno
Сообщения: 3
Зарегистрирован: 12 дек 2022 21:45

Re: 9 бурундуков в 9 лунках прыгают вместе

Сообщение KakZheSlozhno »

Спасибо огромное)))))
Но тут еще пару вопросов

Код: Выделить всё

    
Point a1 = Point.get(130,760);
Point a2 = Point.get(340,760);
Point a3 = Point.get(555,760);

Point b1 = Point.get(130,760);
Point b2 = Point.get(340,760);
Point b3 = Point.get(555,760);

int color = 14800319;
int color2 = 14800319;
startScreenCapture(2);
sleep(1000);

while(!EXIT){

//Нужно чтобы в первую очередь
//выполнялся поиск 3 бурундуков ниже,
//а также при нахождении их, должен происходить
//тройной клик 
   if(getColor(b1) == color2) 
     click(randomize(a1, 8));
   else if(getColor(b2) == color2) 
     click(randomize(a2, 8));
   else if(getColor(b3) == color2)
     click(randomize(a3, 8));
     
   else if(getColor(a1) == color) 
     click(randomize(a1, 8));
   else if(getColor(a2) == color) 
     click(randomize(a2, 8));
   else if(getColor(a3) == color)
     click(randomize(a3, 8));

     sleep(10);
}
Насчёт в "первую очередь" беря мои скудные знания в расчет, вроде их поиск и так проходит в первую очередь
Admin
Главный админ
Сообщения: 214
Зарегистрирован: 28 окт 2021 14:01

Re: 9 бурундуков в 9 лунках прыгают вместе

Сообщение Admin »

Автокликер по очереди перебирает точки, как задано в скрипте и проверяет цвет. Если нужно для конкретной точки бить 3 раза, просто так и запишите

Код: Выделить всё

if(getColor ... ){
click(a);
sleep (100);
click(a);
sleep (100);
click(a);
}
Закрыто