Author Topic: Помогите доработать кусок скрипта  (Read 1317 times)

0 Members and 1 Guest are viewing this topic.

Hobbit

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Помогите доработать кусок скрипта
« on: September 25, 2014, 03:49:37 AM »
Посидел,подумал пару дней,почитал форум и что-то появилось в голове.

Задача такая : выполнять атаку босса последовательно собирая войска и назначая их командира - это сделано.Но каждые 30 атак кончается энергия и уведомление об этом приходит прям перед последним ходом для осуществления атаки т.е. в 6 из 7ми ходов

Надумал решить ее двумя способами :
Code: (clickermann) [Select]
getscreen
if(pxl((1285,624)=5326644) //если появляется уведомление
wait(1)
LCLICK(1102,474)   // пополнение заряда
wait(1)
LCLICK(1235,621)  // атака после пополнения заряда
WAITMS(RND(100,140))
else // ! тут важный момент. Тут я имел ввиду,если уведомление не вышло,ранее уже пошла атака,значит просто забираю приз
 //9    -  а это уже сбор награды
wait(1)
GETSCREEN
WHILE(PXL(1127,567) ! 9139281)
   WAITMS(50)
   GETSCREEN
END_CYC
WAITMS(100)
LCLICK(1127,567)  // 9139281
WAITMS(RND(100,140))

end_if // конец условия
END_CYC


Второй способ :
Code: (clickermann) [Select]
getscreen
if(pxl((1285,624)=5326644)
wait(1)
LCLICK(1102,474)  // пополнение заряда
wait(1)
LCLICK(1235,621)  // атака после пополнения заряда
WAITMS(RND(100,140))
else 
halt  // тут я имел ввиду,если пиксель не изменил цвет,значит конец программы и сразу сбор приза
end_if
 //9
....

К сожалению,ни один из способов не работает!( Программа перескакивает их в случае появления уведомления и скрипт стоит в воздухе.

Прошу вас,умные и добрые люди,подскажите как правильно поставить условие,чтобы если появлялось уведомление - то кликалось на заполнение энергии и тд,а если нет - то сразу сбор призов(//9) :'(

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Помогите доработать кусок скрипта
« Reply #1 on: September 25, 2014, 08:22:56 AM »
Code: (clickermann) [Select]
$fin = 0
WHILE($fin = 0)
   GETSCREEN
   IF(pxl(1285,624)=5326644) //если появляется уведомление
      LCLICK(1102,474)        // пополнение заряда
      wait(1)
      LCLICK(1235,621)        // атака после пополнения заряда
      WAITMS(100)
   END_IF
   IF(PXL(1127,567) = 9139281)
      LCLICK(1127,567)
      $fin = 1
   END_IF
   WAITMS(100)
END_CYC
WAITMS(RND(100,140))