Author Topic: Не работает код с поиском цвета  (Read 1421 times)

0 Members and 1 Guest are viewing this topic.

DMYTRO

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Доброго времени суток
пытаюсь  написать код на сбор лута в игре
задумка такова, поиск убитого моба по цвету и клик по кординатам найденого цвета. Я выбрал 4 цвета с помощью лупы

Code: [Select]
$check = 0
WHILE($check = 0)
   GETSCREEN(337,251, 1129,563)
   IF_PIXEL_IN(496, 119, 512, 661, 236543)
      $check = 1
      LCLICK($_return1 ,$_return2)
      WAIT(2)
   ELSE
      IF_PIXEL_IN(496, 119, 512, 661, 2309995)
         $check = 1
         LCLICK($_return1 ,$_return2)
         WAIT(2)
      ELSE
         IF_PIXEL_IN(496, 119, 512, 661, 13367295)
            $check = 1
            LCLICK($_return1 ,$_return2)
            WAIT(2)
         ELSE
            IF_PIXEL_IN(496, 119, 512, 661, 13367295)
               $check = 1
               LCLICK($_return1 ,$_return2)
               WAIT(3)
            ELSE
               WAIT(4)
            END_IF
         END_IF
      END_IF
   END_IF
END_CYC

HALT

И сразу хотел бы задать вопрос, в игре при наведении на моба его контур подсвечивает оранжевым цветом возможно ли сделать так что б поиск был по этому цвету обводки? или быстрее будет сделать скрин моба и выполнять по поиску картинки но в таком случае нужно будет делать кучу скринов так как один и тот же моб может лежать в разных позициях а если мобов будет много разных тогда нужно будет делать целую библиотеку скринов
Буду очень благодарен за помощь

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Не работает код с поиском цвета
« Reply #1 on: July 28, 2018, 08:47:11 AM »
Область снимка не соответствует области поиска. С такими задержками её вообще можно не указывать.
4 цвета из которых два одинаковые... Их можно просто перечислить через запятую в одной функции.

Code: (clickermann) [Select]
$check = 0
WHILE($check = 0)
   GETSCREEN
   IF_PIXEL_IN(496,119, 512,661, 236543,2309995,13367295)
      $check = 1
      LCLICK($_return1,$_return2)
      WAIT(2)
   ELSE
      WAITMS(100)
   END_IF
END_CYC

HALT

А выделять моба кто будет? Можно сделать скриншот и взять цвета с картинки.
И не забывай о цветокоррекции.