Author Topic: Поймать условия с числовым значением  (Read 1397 times)

0 Members and 1 Guest are viewing this topic.

Zyzy

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Есть программа (не игра), у которой на панели пишутся цифры. СМ. КАРТИНКУ ВЛОЖЕНИЕ.  Значения могут быть и минусовые и плюсовые, всегда с сотыми значениями, т.е. 15.00, -15.00, -384.04, 15.06 и так далее. Минусовые значения имеют красный цвет, плюсовые - черный. Мне нужно когда значение будет -15.00 или еще меньше, то сделать левый клик мышью.

Программа с серьезным шифрованием, Cheat engine не помогает вытащить значение. Панель при перезапуске сдвигается по координатам в случайном порядке. Значение (цифры) меняются каждые 1-2 секунды.

Сейчас код:

GETSCREEN(2294,430, 2342,468)
COLORMODE(0, 2294,430, 2342,468)
IF_PIXEL_IN(2294,430, 2315,447, 255)
LCLICK(2382,439)
WAITMS(2000)
END_IF
IF_PIXEL_IN(2294,450, 2315,467, 255)
LCLICK(2382,460)
WAITMS(2000)
END_IF

Но он неэффективен, потому что панель сдвигается. К тому же я пытаюсь с помощью определения пикселя найти минусовое значение опираясь лишь на то, что знаение "-10" (три символа) будет больше пикселей занимать.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Поймать условия с числовым значением
« Reply #1 on: November 13, 2018, 05:12:52 PM »
Возьми скрипт распознавания чисел от сюда
http://crapware.aidf.org/forum/index.php?topic=88.msg16221#msg16221

Тебе нужно функцией IF_PICTURE_IN найти уголок этой формы с числами. Получив координаты можно относительно задать область распознавания.
Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "file.bmp", -1, 100)
   $x = $_return1
   $y = $_return2

END_IF