Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: aheart82 on December 15, 2014, 04:37:15 PM

Title: исключить цвет
Post by: aheart82 on December 15, 2014, 04:37:15 PM
Есть квадратная картинка. пусть будет допустим 10*10
в каждом пикселе есть цвет (всего 3 цвета)

известно 2 цвета
$color1=1
$color2=2
третий цвет меняется.
какое условие надо написать,чтобы клик был именно по третьему ?

не нашел метода исключения ((

Title: Re: исключить цвет
Post by: Vint on December 15, 2014, 04:46:23 PM
Не очень понятно задание. "картинка" - это область на экране?
Предположу что так
Code: (clickermann) [Select]
GETSCREEN
FOR($i=0, $i<10)
   FOR($j=0, $j<10)
      $P = PXL($i, $j)
      IF(($P ! $color1) & ($P ! $color2))
         LCLICK($i,$j)
         $i = 100
         $j = 100
      END_IF
   END_CYC
END_CYC

Если не так понял, объясни по другому.
Title: Re: исключить цвет
Post by: Oraven on December 15, 2014, 04:57:15 PM
скобки где?
Code: (clickermann) [Select]
IF(($P ! $color1) & ($P ! $color2))
Title: Re: исключить цвет
Post by: aheart82 on December 15, 2014, 04:59:05 PM
вот так наверно проще..
игра game.ioxapp.com/color/

Code: [Select]
$color1=14540253    //рамка  .это цвет №1

GETSCREEN

if(PXL(595,220)=PXL(1083,220))   //ищем цвет №2 исключением
   $color2= PXL(595,220)    //если 2 квадрата сверху равны, значит цвет №2 найден
else
   $color2= PXL(595,698)  //иначе берем снизу
end_if
Title: Re: исключить цвет
Post by: aheart82 on December 15, 2014, 06:04:11 PM
Code: [Select]
LCLICK(821,326) // запускаем  заново игру

igra:

$color1=14540253    //рамка  .это цвет №1

GETSCREEN
 if(PXL(598,220)=PXL(1083,220))   //ищем цвет №2 исключением
   $color2= PXL(598,220)    //если 2 квадрата сверху равны, значит цвет №2 найден
else
   $color2= PXL(598,698)  //иначе берем снизу
end_if



rnd:  //заново рандуем коры, хоть это и не есть гуд-время тянется
$x=RND(595,1085)
$y=RND(220,700)

if((PXL($x,$y) ! $color2)&(PXL($x,$y) ! $color1))
LCLICK($x,$y)
else
   goto (rnd)
end_if


 goto (igra)

рекорд 471.
Title: Re: исключить цвет
Post by: Oraven on December 15, 2014, 10:05:39 PM
Разгадал я их секрет. У искомого цвета изменяется RGB относительно основного цвета на случайное число одинаковое для всех трех каналов.
Например R+5 G+5 B+5
Чаще всего прибавляется по 5, 10, 15 и тд. до 255, но иногда по 4, 8, 12 и тд.

Вот мой скрипт и результат.
скрипт автоматически рассчитывает координаты, ничего менять не нужно.
(http://savepic.net/6242118.png)

Правда иногда застревает на углах. Там есть небольшой переход цвета.
Title: Re: исключить цвет
Post by: Vint on December 16, 2014, 12:54:58 PM
Я вчера тоже накатал и тоже сначала столкнулся с переходными цветами. Сегодня чуть подправил и прикрутил автоопределение от андрея.

Правда он медленней.
Хоть вариант Андрея и заедает переодически, результат у него хороший (скриншот), мой намного скромнее.