Author Topic: Помогите со скриптом! Распознавание текста.  (Read 5529 times)

0 Members and 1 Guest are viewing this topic.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Как тебе такой вариант
Code: (clickermann) [Select]
SUB(filter) // подпрограмма
   waitms(100)
   KEYDOWN (#CTRL)
   WAITMS (50)
   KEYDOWN (#C)
   WAITMS (50)
   KEYUP (#C)
   KEYUP (#CTRL)
   waitms(150)
   
   UNDEFINE($arr)
   STRSEPARATE(FROMCLIP (), " ", $arr)
   FOR($i=0,$i<ARRSIZE($arr))
      $promo = strfilter($arr[$i], "ABCDEFGHIGKLMNOPQRSTUVWXYZ0123456789-",1)
     
      IF(STRLEN ($promo) > 5)
         
         print($promo) //смотрим в логе
         // Здесь начинаем вставлять полученный код в строку ввода
         TOCLIP($promo) // Отправляем отфильтрованное слово в буфер.
         
         LCLICK(262,312) // Кликаем
         WAITMS (15)
         KEYDOWN (#CTRL) // Вставляем
         WAITMS (20)
         KEYPRESS (#V)
         KEYUP (#CTRL)
         WAITMS (20)
         
         LCLICK(262,312) // Еще кликаем
         WAITMS (100)
         
         $i=ARRSIZE($arr) // Завершаем цикл
      END_IF
     
   END_CYC
   
END_SUB

GETSCREEN
IF_PIXEL_IN(1185,639, 1187,641, 5618559)   // ПИКСЕЛЬ СИСТЕМЫ
   
   LCLICK(1205,650)
   waitms(30)
   LCLICK(1205,650)  //КЛИКНУТЬ 3 РАЗА В СЛУЧАЕ ЕСЛИ БУДЕТ СИСТЕМА
   waitms(30)
   LCLICK(1205,650)
   waitms(30)
   filter() // вызов подпрограммы (обязательно ниже подпрограммы)
   
else
   IF_PIXEL_IN(1259,666, 1261,668, 2400715)      // ПИКСЕЛЬ ИГРОКА
     
      LCLICK(1205,619)
      waitms(30)
      LCLICK(1205,619)  //КЛИКНУТЬ 3 РАЗА В СЛУЧАЕ ЕСЛИ БУДЕТ ИГРОК
      waitms(30)
      LCLICK(1205,619)
      waitms(30)
      filter() // вызов подпрограммы (обязательно ниже подпрограммы)
     
   end_if
   
end_if
WAITMS(50)

Welier

  • Зашел в гости
  • *
  • Posts: 17
  • Какой-то левый..
    • View Profile
Огромное спасибо вам за помощь!
dramster и Oraven, СПАСИБО!

Welier

  • Зашел в гости
  • *
  • Posts: 17
  • Какой-то левый..
    • View Profile
Иногда выскакивают ошибки, и текст в редких случаях не всегда анализируется, скидывает в строку, то что и скопировал

[spoiler]
SUB(filter)
   waitms(15)
   KEYDOWN (#CTRL)
   WAITMS (15)
   KEYDOWN (#C)
   WAITMS (15)
   KEYUP (#C)
   KEYUP (#CTRL)
   waitms(15)
 
   UNDEFINE($arr)
   STRSEPARATE(FROMCLIP (), " ", $arr)
   FOR($i=0,$i<ARRSIZE($arr))
      $promo = strfilter($arr[$i], "ABCDFJEFGHIGKLMNOPQRSTUVWXYZ0123456789-",1)

 
      IF(STRLEN ($promo) > 5)
         print($promo)

       
         TOCLIP($promo)

         LCLICK(262,312)
 
         KEYDOWN (#CTRL)
   
         KEYPRESS (#V)
         KEYUP (#CTRL)
       
 
         LCLICK(323,392)
         WAITMS (155)
         
         LCLICK(262,312)
         LCLICK(262,312)
         LCLICK(262,312)
         WAITMS (50)
         KEYPRESS(#DELETE)

 
         $i=ARRSIZE($arr)
      END_IF
 
   END_CYC
 
END_SUB
 
GETSCREEN
IF_PIXEL_IN(1185,639, 1187,641, 5618559)
 
   LCLICK(1205,650)
   waitms(30)
   LCLICK(1205,650) 
   waitms(30)
   LCLICK(1205,650)
   waitms(30)
   filter()
 
else
   IF_PIXEL_IN(1259,666, 1261,668, 2400715)
 
      LCLICK(1200,634)
      waitms(30)
      LCLICK(1200,634) 
      waitms(30)
      LCLICK(1200,634)
      waitms(30)
      filter()
 
   end_if
 
end_if
WAITMS(55)
 [/spoiler]
« Last Edit: February 05, 2018, 04:04:53 PM by Welier »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
попробуй задержку после ctrl+c выставить побольше. возможно за 15мс чето не успевает в буфер влезть  :-\
Code: (clickermann) [Select]
   waitms(15)
   KEYDOWN (#CTRL)
   WAITMS (15)
   KEYDOWN (#C)
   WAITMS (15)
   KEYUP (#C)
   KEYUP (#CTRL)
   waitms(150)// 150мс

Welier

  • Зашел в гости
  • *
  • Posts: 17
  • Какой-то левый..
    • View Profile
Промокод на 4 монеты: DNXS-DFH3-DS1M-PQA7