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

Основной раздел => Общие вопросы => Topic started by: yurik on September 23, 2016, 10:23:44 AM

Title: помогите с if и else
Post by: yurik on September 23, 2016, 10:23:44 AM
ребята помогите уже все испробовал, я как бы в кликермане новичок ток 5 день.
Вот что мне нужно: есть числа 81, 84, 91, 92.
теперь я ищу треугольник где будет искать количество пикселей данного цвета и выводить в лог
Code: [Select]
GETSCREEN
 $c = PXLCOUNT (733,388, 901,404, 16777215)
 logwrite("pixels3: ", $c)
все ищет и выводит нормально.
Теперь ищем, кликаем по кнопке пока совпадет даное число с верхними
Code: [Select]
IF (($c > 80)&($c < 93))
 logwrite("yes!")
 HALT
ELSE
LCLICK(893,618)
WAIT(8)
END_IF
можно ка кто конкретно указать  цифры 81,84,91,92?
В PHP это можно зделать вот приблизительно так
if ($a == 91) {
    echo "a = 91";
} elseif ($a == 81) {
    echo "a равен 81";
} else {
    echo "a неравно ищем";
}
а как здесь прописать ?
Title: Re: помогите с if и else
Post by: i0 on September 23, 2016, 10:44:19 AM
Code: (clickermann) [Select]
switch($a)
case(91)
  print("$a=91")
case(81)
  print("$a=81")
default
  print("a неравно ищем")
end_switch
Title: Re: помогите с if и else
Post by: yurik on September 23, 2016, 12:55:02 PM
спасибо получилось с switch($a) както мне понятнее
Title: Re: помогите с if и else
Post by: yurik on September 23, 2016, 02:28:46 PM
теперь некак немогу понять есть у меня 3 переменые $a,$b,$c
Code: [Select]
                             ///1///
 GETSCREEN
$a = PXLCOUNT (733,349, 901,365, 16777215)
 logwrite("pixels1: ", $a)
//// 2 ////
GETSCREEN
 $b = PXLCOUNT (733,370, 901,389, 16777215)
 logwrite("pixels2: ", $b)
                ///// 3 //////
 GETSCREEN
 $c = PXLCOUNT (733,388, 901,404, 16777215)
 logwrite("pixels3: ", $c)
нужно чтобы было хотя бы 2 совпадений (91, 81)
чтобы
$a = $b
$a = $с
$с = $b
 // неважно а = 81 или 91 и b = 81 или 91 и с = 81 или 91 например
Code: [Select]
IF (($a=81)&($b=91)) | (($a=91)&($b=81)) | (($a=81)&($b=81)) | (($a=91)&($b=91)) | (($a=81)&($c=91)) ... и тд
   logwrite("yes!")
   HALT
ELSE
   LCLICK(893,618)
   WAIT(8)
END_IF
WAITMS(50)
как это можно зделать с switch или другим какимто способом
вот что хочу зделать, скрин внизу

Title: Re: помогите с if и else
Post by: Vint on September 23, 2016, 02:45:19 PM
Code: (clickermann) [Select]
SUB(control, $par1)
    IF(($par1 = 81) | ($par1 = 91))
      $ret = 1 
    ELSE
      $ret = 0 
    END_IF
END_SUB

control($a)
$result = $ret

control($b)
$result = $result + $ret

control($c)
$result = $result + $ret

IF($result > 1)
   logwrite("yes!")
   HALT
ELSE
   LCLICK(893,618)
   WAIT(8)
END_IF
Title: Re: помогите с if и else
Post by: yurik on September 23, 2016, 03:42:46 PM
 ;D спасибо работает
Title: Re: помогите с if и else
Post by: yurik on September 23, 2016, 03:59:46 PM
пока ещо не замечал но просмотрев немного на количество пикселей в логах, я зделав вывод что можно конкретно словить конкретную точку, ну например уклон +4 или уклон +5 имеют 137 рх, а чтоб словить 2 уклона в 1 шмотке очень долго нужно кликать. гдето 500-1000 а то и больше кликов как повизет.
число 137 больше мне не встречалось и числа такие как 173, 317, 371 .... и тд. таких пока не видел. 
Title: Re: помогите с if и else
Post by: yurik on September 23, 2016, 04:04:31 PM
Одолжите у Винта скрипт на распознавание чисел, примените цветокоррекцию уровня 7 или 8, чтоб убить частичную прозрачность и тогда будут находиться все вещи с оценкой выше установленной вами для данного поиска и суммарный рейтинг получать можно будет простым математическим сложением и именно на него ориентироваться при выборе и даже полностью автоматизировать задачу, а не останавливать при каждом похожем нахождении.
то что ты написал для меня сложно понять, я ток 5 день знаком с этой прогой, и много чего непонимаю, а пока сойдет и такой метод  :D