Author Topic: Вопрос по функционалу  (Read 1410 times)

0 Members and 1 Guest are viewing this topic.

Mirage01

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Вопрос по функционалу
« on: August 09, 2018, 03:03:46 AM »
Здравствуйте. Может кто дать ответ по функционалу кликера?
1.Возможность создать переменные и использовать с ними условия/циклы?(установка на цикл таймер)
2.Поиск цвета а так же диапазона цветов по заданной области? по всему экрану ? с установлением погрешности. + а так же клик по найденному цвету/диапазону цветов
3.Чтение лога во время работы кликера  ?
4.Запись в массив.
Вопрос к тому, стоит ли осваивать этот кликер? просто обязательно нужен этот функционал.
Заранее БОЛЬШОЕ СПАСИБО ЗА ВАШЕ ВРЕМЯ И ОТВЕТЫ



Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Вопрос по функционалу
« Reply #1 on: August 09, 2018, 08:07:49 AM »
Все это возможно кроме диапазона цветов. У нас цвета в десятичном формате RGB. Только в цветопредставлении LAB цвета перечисляются как радуга.

За место диапазонов в кликере применяется цветокоррекция COLORMODE уменьшающая оттенки вплоть до двух цветов, черного и белого.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Вопрос по функционалу
« Reply #2 on: August 09, 2018, 10:45:58 AM »
Вот создал скрипт для примера. Что будет если перебирать цвета от черного (0) до белого (16777215).
Скрипт делает снимок экрана а затем начинает перекрашивать каждый пиксел построчно, в соответствии с заданным диапазоном цвета.

Заодно демонстрация вывода в лог текущего прогресса в процентах и оставшегося времени до окончания операции.

Code: (clickermann) [Select]
// Диапозон цветов от меньшего к большему
$col_1 = 0 // Цвет 1
$col_2 = 16777215 // Цвет 2

$count = $col_2-$col_1
IF($count > $_xmax*$_ymax)
   $step = INT($count/($_xmax*$_ymax))
ELSE
   $step = 1
END_IF
LOGWRITE ("Количество цветов: ",$count)
LOGWRITE ("Шаг: ",$step)

$col=$col_1
GETSCREEN
PXLREPLACE(0,0,$_xmax,$_ymax, -1, 0)
FOR($y=0,($y<$_ymax)&($col<$col_2))
   FOR($x=0,($x<$_xmax)&($col<$col_2))
      PXLREPLACE($x,$y,$x,$y, -1, $col)
      INC($col,$step)
   END_CYC
END_CYC
SCREENSHOTFIX(0,0, $_xmax,$_ymax, "Цвета.bmp", 0)

HALT

THREAD(t1, 1) // отдельный поток t1
   WAIT(1)
   $tmp = $col
   LOGCLEAR
   LOGWRITE ("Осталось: ", ROUND(($col_2-$col)/($tmp-$tmp2),0), " сек (", ROUND($col*100/$col_2, -2), "%)")
   $tmp2=$tmp
END_THREAD

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Вопрос по функционалу
« Reply #3 on: August 14, 2018, 12:24:40 AM »
Про диапазон, какой смысл перебирать десятичные значения.
Как уже сказали colormode эффективней. Но можно и перевести в значения R, G, B и сравнивать условиями нужные каналы, почему и нет.