Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - scat

Pages: [1]
1
Общие вопросы / не работает WHILE
« on: June 01, 2022, 11:36:03 AM »
когда выбрана переменная $r = 2  не срабатывает что то я в конструкции напутал :-\

Code: (clickermann) [Select]
    $check = 0
   WHILE($check = 0) //
      IF(($r = 1) or ($r = 2))
         IF(PXL(460,69) = 1043800)// зеленный круг
            WAITMS(RND(1230,2660))
            $check = 1 // если найдено выходим из цикла
         ELSE // если не найдено
            WAITMS(RND(260,490))
            IF($r = 1)
               IF(PXL(18,471) = 14540253)//галка
                  LCLICK (RND(252,306),RND(352,361)) //выбрал  место 1
                  WAITMS(RND(1230,2660))
               ELSE // если не найдено
                  WAITMS(RND(260,490))
                  IF($r = 2)
                     IF(PXL(18,471) = 14540253)//галка
                        LCLICK (RND(215,227),RND(233,245)) //выбрал  место 2
                        WAITMS(RND(1230,2660))
                     ELSE // если не найдено
                        WAITMS(RND(60,90))
                        LOGWRITE("нет")
                     END_IF
                  END_IF
               END_IF
            END_IF
         END_IF
      END_IF
   END_CYC

2
Общие вопросы / Вставка координат
« on: October 08, 2021, 11:05:20 AM »
есть координаты
LCLICK(137,273)  // 14272101
LCLICK(131,290)  // 16181372
LCLICK(138,298)  // 7825988
LCLICK(158,295)  // 15190093
LCLICK(175,300)  // 12096846
LCLICK(185,289)  // 10513964
LCLICK(187,281)  // 15522157
LCLICK(204,291)  // 6584655

Приходиться прописывать  каждую
GETSCREEN
IF($random = 10)
IF(PXL(574,277) = 7726323)
LCLICK(516,82)  // 11053225
$x = 204
$y = 291
LOGWRITE("точка 10")
waitms(RND(3190,3320))
GOTO(to)
END_IF
END_IF
waitms(RND(60,90))

В результате получается портянка
КАК через ТХТ файл это сделать  компактно зарание спс)

3
Общие вопросы / как решить задачку
« on: June 03, 2020, 11:17:41 AM »
у Феди $xu1 = 10  яблок
у Васи $xu2 = 20 яблок
у Валеры $xu3  = 30 яблок

какую формулу написать что у Валеры $xu3 больше всего яблок??

или из массива переменных выделить наибольшее число

$xu1 = 0 // федя
$xu2 = 0 // вася
$xu3 = 0 // валера

WAITMS(500)





GETSCREEN
SCANPICTURE($ARR_SCAN, 759,436, 841,694, "xu1.bmp", -1, 100)

$ARR_NUM = 0
WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
   $X = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   $Y = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   INC($xu1, 1)
   WAITMS(100)
END_CYC
UNDEFINE($ARR_SCAN)


GETSCREEN
SCANPICTURE($ARR_SCAN, 759,436, 841,694, "xu2.bmp", -1, 100)

$ARR_NUM = 0
WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
   $X = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   $Y = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   INC($xu2, 1)

   WAITMS(100)
END_CYC
UNDEFINE($ARR_SCAN)


GETSCREEN
SCANPICTURE($ARR_SCAN, 759,436, 841,694, "xu3.bmp", -1, 100)

$ARR_NUM = 0
WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
   $X = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   $Y = $ARR_SCAN [$ARR_NUM]
   INC($ARR_NUM,1)
   INC($xu3, 1)

   WAITMS(100)
END_CYC
UNDEFINE($ARR_SCAN)

LOGWRITE ("федя яблок: ", $xu1,"шт" ) // 10
LOGWRITE ("вася яблок", $xu2,"шт" ) // 20
LOGWRITE ("валера яблок ", $xu3,"шт")  //30



4
Приветствую решил тут рулетку на ютубе сделать помогите оптимизировать и чтоб RND не повторялась
(знаю много GOTO но мне так проще)

sk:
WAITMS(50)

IF (ISKEYDOWN(#Z)=1) // смена клипа при нажатии на Z
WAITMS(200)
KEYDOWN(#CTRL)
KEYDOWN(#W)
WAITMS(200)
KEYUP(#CTRL)
KEYUP(#W)
WAITMS(200)
GOTO(sk1)
ELSE
WAITMS(50)
GOTO(sk)
END_IF

/////////////////////////////////////////////
sk1:
WAITMS(200)
$pes = rnd(1,3)  /// выбор случайного числа (нужно чтоб не повторялось число которое выпало ранее)
WAITMS(200)

IF($pes = 1)
GOTO(sk2)
END_IF

IF($pes = 2)
GOTO(sk3)
END_IF

IF($pes = 3)
GOTO(sk3)
END_IF


/////////////////////////////////////////////////////////////клипы
sk2:
EXECUTE("https://youtu.be/EqSclLcbvCA")
WAITMS(1200)
LCLICK(699,565)
WAITMS(1200)
GOTO(sk)

sk3:
EXECUTE("https://youtu.be/M95iEQx20Ag")
WAITMS(1200)
LCLICK(699,565)
WAITMS(1200)
GOTO(sk)

sk4:
EXECUTE("https://youtu.be/Joz1xBi7ex8")
WAITMS(1200)
LCLICK(699,565)
WAITMS(1200)
GOTO(sk)

5
sk:

GETSCREEN
WAITMS(RND(50,60))
IF_PIXEL_IN(805,460, 879,475, 205044)
   $check1 = $check1 - 70
   LOGWRITE("минус" $check1)
   GOTO(sk1)
ELSE
   WAITMS(RND(20,40))
   GOTO(sk5)
END_IF

sk5:
GETSCREEN
WAITMS(RND(50,60))
IF_PIXEL_IN(720,460, 804,475, 205044)
   $check1 = $check1 + 135
   LDOWN(1054,475)
   WAITMS(RND(1500 + $check1, 1550 + $check1))
   LUP(1054,475)
   LOGWRITE("плюс" $check1)
   GOTO(sk5)
ELSE
   WAITMS(RND(20,40))
   GOTO(sk)
END_IF

6
Как сделать если оба цвета в диапазонах найдены выполняется

GETSCREEN
IF_PIXEL_IN(10,20, 30,40, 255) & (IF_PIXEL_IN(50,60, 70,80, 155)
END_IF


IF(PXL(100,100) = 255) не предлагать  нужны площади а не пиксели

7
Почему 1 поток продолжает работу яж его поставил на паузу   а он работает :( объясните 



THREAD(potok1, 1)
LOGWRITE("POTOK1 VKL")
WHILE($var=0)
GETSCREEN
IF_PIXEL_IN(408,444, 1026,739, 1279830)
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF
else
WAITMS(100)
END_CYC
END_THREAD

THREAD(potok2, 1)
LOGWRITE("POTOK2 VKL")
WHILE($var1=0)
GETSCREEN
IF_PIXEL_IN(408,444, 1026,739, 2511295)
   LCLICK($_return1, $_return2)
   WAITMS(100)
   SetThread (potpk1, 2)
   LOGWRITE("POTOK1 PAUZA")
END_IF
else
WAITMS(100)
END_CYC
END_THREAD

8
Общие вопросы / вопросы
« on: April 12, 2018, 10:31:21 AM »
№1 есть треугольник

 как сделать условие которое  срабатывает  если найдены все 3 пикселя на вершинах
как кто так?    if (pxl(738,445)=914939) & (799,547)=3600122) & (674,543)=61178)

№2 есть радар

как его про сканировать и в случаи нахождения красного круга повернутся в его сторону
кликнуть по кругу нельзя

Pages: [1]