Author Topic: нужна помощь  (Read 1247 times)

0 Members and 1 Guest are viewing this topic.

LaID

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
нужна помощь
« on: April 02, 2017, 12:09:28 AM »
вот кусок кода, как мне сделать чтобы процедура повторилась через несколько секунд, пробовал продублировать еще раз такой же код, не работает(

getscreen

scanpicture($var, 257,274, 666,543, "руда.bmp")

// вывод массива, содержащего результаты поиска
while (arrsize($var) > 0)
  $y = arrpop($var)
  $x = arrpop($var)
  lclick($x, $y)
end_cyc

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: нужна помощь
« Reply #1 on: April 02, 2017, 07:43:46 AM »
Нужно написать задержки.

Code: (clickermann) [Select]
getscreen
scanpicture($var, 257,274, 666,543, "руда.bmp")
while (arrsize($var) > 0)
   $y = arrpop($var)
   $x = arrpop($var)
   lclick($x, $y)
   WAITMS(100) // задержка после клика 100 миллисекунд
end_cyc

WAIT(300) // задержка на 300 секунд = 5 минут.

LaID

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: нужна помощь
« Reply #2 on: April 02, 2017, 10:00:35 AM »
это не весь код, это середина кода, и мне нужно повторить только её, продублировать вообщем два или три раза чтобы оно находило картинку и нажимало по ней

LaID

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: нужна помощь
« Reply #3 on: April 02, 2017, 10:02:27 AM »
вот весь код
   GETSCREEN(1,90,1362,735)
IF_PICTURE_IN (1,90,1362,735, "забрать.bmp", -1, 60) //картинка будетнайдены если совпало не менее 60% пикселей
   LCLICK($_return1, $_return2) //клик по найденной картинке
   WAITMS(500)
END_IF
WAIT (RND(1,3))
LCLICK(615,308)  // 1843487
WAIT (RND(7,9))
LCLICK(834,404)  // 6981019
WAIT (RND(4,5))
LCLICK(840,406)  // 9011546
WAIT (RND(3,5))
LCLICK(839,312)  // 10074830
WAITMS (RND (300,600)
KEYPRESS(#5)
WAITMS (RND (300,600)
KEYPRESS(#5)
WAIT (RND(1,2))
getscreen

scanpicture($var, 257,274, 666,543, "руда.bmp")

// вывод массива, содержащего результаты поиска
while (arrsize($var) > 0)
  $y = arrpop($var)
  $x = arrpop($var)
  lclick($x, $y)
end_cyc
WAIT(RND(2,3)
LCLICK(892,277)  // 6710886
WAIT(RND(3,5)
LCLICK(650,453)  // 10206673
WAIT(RND(2420,2475)

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: нужна помощь
« Reply #4 on: April 02, 2017, 12:07:33 PM »
Вот так будет повторять поиск до тех пор пока на экране находит "руда.bmp"

Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (1,90,1362,735, "забрать.bmp", -1, 60) //картинка будет найдены если совпало не менее 60% пикселей
   LCLICK($_return1, $_return2) //клик по найденной картинке
   WAITMS(500)
END_IF
WAIT (RND(1,3))

LCLICK(615,308)  // 1843487
WAIT (RND(7,9))

LCLICK(834,404)  // 6981019
WAIT (RND(4,5))

LCLICK(840,406)  // 9011546
WAIT (RND(3,5))

LCLICK(839,312)  // 10074830
WAITMS (RND (300,600)

KEYPRESS(#5)
WAITMS (RND (300,600)

KEYPRESS(#5)
WAIT (RND(1,2))

$check = 0
WHILE($check = 0)
   getscreen
   scanpicture($var, 257,274, 666,543, "руда.bmp")
   // вывод массива, содержащего результаты поиска
   IF(arrsize($var) = 0)
      $check = 1
      WAIT(RND(2,3)
   END_IF
   while (arrsize($var) > 0)
      $y = arrpop($var)
      $x = arrpop($var)
      lclick($x,$y)
      WAITMS(50)
   end_cyc
END_CYC

LCLICK(892,277)  // 6710886
WAIT(RND(3,5)

LCLICK(650,453)  // 10206673
WAIT(RND(2420,2475)

LaID

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: нужна помощь
« Reply #5 on: April 02, 2017, 04:49:32 PM »
попробовал, не ищет картинку повторно

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: нужна помощь
« Reply #6 on: April 02, 2017, 05:16:28 PM »
отодвигай курсор после клика. Он или загораживает или подсвечивается элемент.