Author Topic: Помогите..  (Read 8969 times)

0 Members and 2 Guests are viewing this topic.

STD

  • Освоившийся
  • **
  • Posts: 29
    • View Profile
Re: Помогите..
« Reply #30 on: February 12, 2017, 09:52:43 PM »
Во первых
Code: (clickermann) [Select]
FOR ($i=0, $i<30)
И это начало цикла
Code: (clickermann) [Select]
END_CYCЭто конец цикла
Всё что между этих строк повторится 30 раз.

Спасибо большое =)

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Помогите..
« Reply #31 on: February 12, 2017, 09:54:23 PM »
Во первых
Code: (clickermann) [Select]
FOR ($i=0, $i<30)
И это начало цикла
Code: (clickermann) [Select]
END_CYCЭто конец цикла
Всё что между этих строк повторится 30 раз.

Спасибо большое =)
Читайте справку.
« Last Edit: February 12, 2017, 10:33:58 PM by open_78 »

STD

  • Освоившийся
  • **
  • Posts: 29
    • View Profile
Re: Помогите..
« Reply #32 on: February 13, 2017, 09:59:39 PM »
Можно вопрос почему кликер долго выполняет действия? Задержки стоят максимум WAIT (1)
Он долго ищет картинку..Картинка есть, он на нее жмет только через 1-2-3 минуты..

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Помогите..
« Reply #33 on: February 13, 2017, 10:06:41 PM »
Можно вопрос почему кликер долго выполняет действия? Задержки стоят максимум WAIT (1)
Он долго ищет картинку..Картинка есть, он на нее жмет только через 1-2-3 минуты..
Может опять забыл END_... поставить. Не видя общей картины трудно сказать. Если скрипт крутится по кругу, то возможно на первом проходе не находит картинку.
« Last Edit: February 13, 2017, 10:09:47 PM by open_78 »

i0

  • Оплот сообщества
  • ****
  • Posts: 353
  • CMann 4.13.014 final, ie, presto, win7 x86, x64
    • View Profile
Re: Помогите..
« Reply #34 on: February 13, 2017, 10:13:26 PM »
Quote
Code: (clickermann) [Select]
WAIT(RND(10,17)
или скобочку где-то закрыть.
выкладывай полный текст в тег code=clickermann и укажи размер в пикселях образцов для поиска, может они огромные
угу

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Помогите..
« Reply #35 on: February 13, 2017, 10:25:01 PM »
Чувствую придется
Code: (clickermann) [Select]
WHILEразжевывать.

STD

  • Освоившийся
  • **
  • Posts: 29
    • View Profile
Re: Помогите..
« Reply #36 on: February 13, 2017, 11:09:03 PM »
Quote
Code: (clickermann) [Select]
WAIT(RND(10,17)
или скобочку где-то закрыть.
выкладывай полный текст в тег code=clickermann и укажи размер в пикселях образцов для поиска, может они огромные
угу

Картинки 36х25 пикс

Код:

thread(t, 1)     // 
   LCLICK(RND(1480,1653), RND(877,981))
   WAIT(RND(10,17)
END_THREAD

  thread(S, 1)                           
   GETSCREEN   //
   IF_PICTURE_IN(0,0,$_xmax,$_ymax,"4.bmp")
   LCLICK(35,419)
   WAIT(1)
   LCLICK(238,419)
   WAIT(1)
   LCLICK(205, 501)
   END_IF
  END_THREAD



   thread(z, 1)
   GETSCREEN   // 
   IF_PICTURE_IN(0,0,$_xmax,$_ymax,"3.bmp")
   LCLICK($_return1, $_return2)
   END_IF

FOR ($i=0,$i<30)
   
    GETSCREEN
   IF_PICTURE_IN(0,0,$_xmax,$_ymax,"2.bmp")
   LCLICK($_return1, $_return2)
   WAIT(5)
    LCLICK(858,741)
      WAIT (3)
      LCLICK(35,419)
      WAIT(1)
      LCLICK(238,419)
      WAIT(1)
      LCLICK(205, 501)
      WAIT(1)
      LCLICK(522,218)
   END_IF
END_CYC

   GETSCREEN          // 
   IF_PICTURE_IN(5,3, 1675,909, "1.bmp")
   LCLICK($_return1, $_return2)
   WAIT (5)
      LCLICK(35,419)
      WAIT(1)
      LCLICK(238,419)
      WAIT(1)
      LCLICK(205, 501)
      WAIT(1)
      LCLICK(522,218)
   END_IF
END_THREAD

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Помогите..
« Reply #37 on: February 13, 2017, 11:10:07 PM »
Чувствую придется
Code: (clickermann) [Select]
WHILEразжевывать.
нефига, ставлю на то, что заготовки картинок мегаогромные, отсюда и столь длительный поиск.  :D

видимо не угадал
Quote
Картинки 36х25 пикс
хотя всеравно великовата, но 2-4 мин на поиск?

следует указать область сканирования во всех IF_PICTURE_IN, и желательно в GETSCREEN .

если это весь код, и ничего больше нет, то поставь wait(1) в самой первой строе, в самом верху, вне потока, и почуешь разницу.
« Last Edit: February 13, 2017, 11:17:39 PM by dramster »

STD

  • Освоившийся
  • **
  • Posts: 29
    • View Profile
Re: Помогите..
« Reply #38 on: February 13, 2017, 11:17:01 PM »
Ага.. Где косяк не понимаю.. и еще, при нажатии клавиш остановить скрипт, он останавливается так же с задержкой в минуту..

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Помогите..
« Reply #39 on: February 13, 2017, 11:19:17 PM »
и всеже, постарайся сделать заготовки поменьше, 10х10 или 15х15, этого всегда достаточно. и воспользуйся советами выше.

особенно
если это весь код, и ничего больше нет, то поставь wait(1) в самой первой строе, в самом верху, вне потока, и почуешь разницу.

Code: (clickermann) [Select]
wait(1)

thread(t, 1)     //
   LCLICK(RND(1480,1653), RND(877,981))
   //...................
   //...................
   //...................
« Last Edit: February 13, 2017, 11:22:58 PM by dramster »

STD

  • Освоившийся
  • **
  • Posts: 29
    • View Profile
Re: Помогите..
« Reply #40 on: February 13, 2017, 11:22:58 PM »
и всеже, постарайся сделать заготовки поменьше, 10х10 или 15х15, этого всегда достаточно. и воспользуйся советами выше.

особенно
если это весь код, и ничего больше нет, то поставь wait(1) в самой первой строе, в самом верху, вне потока, и почуешь разницу.


getscreen
 
scanpicture($var, 0,0, 1366,768, "4.bmp")
 
while (arrsize($var) > 0)
  $y = arrpop($var)
  $x = arrpop($var)
  lclick($_return1, $_return2)
end_cyc

При поиске картинки он будет клацать по ней ?

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Помогите..
« Reply #41 on: February 13, 2017, 11:25:45 PM »
будет, но scanpicture предназначен чтобы найти все картинки, которые есть на экране. если искомая картинка на экране может появиться в единственном экземпляре, то и scanpicture тебе не понадобится.

STD

  • Освоившийся
  • **
  • Posts: 29
    • View Profile
Re: Помогите..
« Reply #42 on: February 13, 2017, 11:27:25 PM »
будет, но scanpicture предназначен чтобы найти все картинки, которые есть на экране. если искомая картинка на экране может появиться в единственном экземпляре, то и scanpicture тебе не понадобится.

Неа, не клацает..

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Помогите..
« Reply #43 on: February 13, 2017, 11:29:41 PM »
верный код из шаблона
Code: (clickermann) [Select]
GETSCREEN
SCANPICTURE($ARR_SCAN, 0,0, $_xmax,$_ymax, "picture.bmp", -1, 100)

$ARR_NUM = 0
WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
   $X = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   $Y = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   LCLICK($X, $Y)   // Клик
   WAITMS(100)
END_CYC
UNDEFINE($ARR_SCAN)

ну или может быть и твой
Code: (clickermann) [Select]
getscreen

scanpicture($var, 0,0, 1366,768, "4.bmp")

while (arrsize($var) > 0)
   $y = arrpop($var)
   $x = arrpop($var)
   lclick($x, $y )// тут твоя ошибка была
   waitms(200)
end_cyc
« Last Edit: February 13, 2017, 11:32:45 PM by dramster »

STD

  • Освоившийся
  • **
  • Posts: 29
    • View Profile
Re: Помогите..
« Reply #44 on: February 13, 2017, 11:35:04 PM »
верный код из шаблона
Code: (clickermann) [Select]
GETSCREEN
SCANPICTURE($ARR_SCAN, 0,0, $_xmax,$_ymax, "picture.bmp", -1, 100)

$ARR_NUM = 0
WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
   $X = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   $Y = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   LCLICK($X, $Y)   // Клик
   WAITMS(100)
END_CYC
UNDEFINE($ARR_SCAN)

ну или может быть и твой
Code: (clickermann) [Select]
getscreen

scanpicture($var, 0,0, 1366,768, "4.bmp")

while (arrsize($var) > 0)
   $y = arrpop($var)
   $x = arrpop($var)
   lclick($x, $y )// тут твоя ошибка была
   waitms(200)
end_cyc

Да, работает, спасибо!
Такой вопрос, на другие картинки, такой же код писать ? включая  getscreen

scanpicture