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.


Messages - Altraster

Pages: [1]
1
if(pxl($x2,$y1) = 16777215, 16251893) это тоже самое что и написать if(2 = 1 , 3), как это понимать?

правильно - if( (pxl($x2,$y1) = 16777215) | (pxl($x2,$y1) =16251893) )
Спасибо поправил.
если раскомментировать твои "goto", то цикл во второй раз уже  не выполнится, так как при завершении цикла ранее $b=1
goto осталось от страрого варианта, просто потереть коментарии забыл:)

2
Снова я:) вот что получилось и очень даже работает. Спасибо за терпение:)

Code: (clickermann) [Select]
$a=19
$b=0
$x1=1272 
$x2=287
$y1=258

//start:
while($b=0)
getscreen

if(pxl($x1,$y1) = 0)
dblclick(770,$y1)
wait(15)
ldown(382,47)
waitms(50)
move(382,13)
lup(382,13)
waitms(50)
lclick(789,112)
wait(10)
lclick(423,364)
wait(60)
lclick(923,12)
wait(60)
lclick(1592,214)
waitms(100)
getscreen
else
$y1=$y1+$a
end_if
getscreen
if(pxl($x2,$y1) = 16777215, 16251893)
$b=1
end_if
end_cyc
//goto(start)

lclick(27,1060)
halt

3
Снова я XDXDXD
Задача немного изменилась, теперь в заданном пикселе может не попасться нужный цвет, + изменился цвет поиска. Написал вот так:
Code: (clickermann) [Select]
$a=19
$x=1272
$y=258 //+19

getscreen
if(pxl($x,$y) = 0)
dblclick(770,$y)
wait(15)
ldown(382,47)
waitms(50)
move(382,13)
lup(382,13)
waitms(50)
lclick(789,112)
wait(10)
lclick(423,364)
wait(30)
lclick(923,12)
wait(30)
lclick(1592,214)
waitms(100)
getscreen
else
$y=$y+$a //пробовал inc($y,19) тот же эффект.
end_if

lclick(27,1060)
halt
если в заданном пикселе цвет = 0 то он работает. А вот смещение по $y не срабатывает. Хотя почитал форум, написано все правильно...

4
Code: (clickermann) [Select]
getscreen
while(pxl($x,$y) = 3984108) //тык в строчку
dblclick(770,$y)
wait(15)
ldown(382,47)
waitms(50)
move(382,13)
lup(382,13)
waitms(50)
lclick(806,112)
wait(5)
lclick(826,134)
wait(5)
rclick(1183,340)
waitms(100)
lclick(1273,450)
waitms(100)
lclick(1284,265)
wait(30)
lclick(923,12)
wait(90)
getscreen
end_cyc

lclick(27,1060)
halt
Не верный синтаксис! Я ж тебе исправлял.
selffix
^_^ Я заметил что неправильный кусок кинул, но переписать сообщение времени небыло:)
за else & goto спасибо.

5
Вообщем всем спасибо за ответы. Буду изучать программку дальше, ибо очень полезно)))
В результате получилось вот что:
Code: (clickermann) [Select]
$x=287  //фиксированно
$y=278 //+19

go:
getscreen
while(pxl($x,$y = 3984108)) //либо тык сразу, либо смешение в центр следующей строчки.
dblclick(770,$y)
wait(15)
ldown(382,47)
waitms(50)
move(382,13)
lup(382,13)
waitms(50)
lclick(806,112)
wait(5)
lclick(826,134)
wait(5)
rclick(1183,340)
waitms(100)
lclick(1273,450)
waitms(100)
lclick(1284,265)
wait(30)
lclick(269,76)
wait(60)
getscreen
           else
                $y=$y+19
               goto(go)
end_cyc

lclick(27,1060)
halt
Последнее: Обращение к GO: из тела While сработает или нет?(просто пока все шло без выполнения Else)

6
В первом примере цикл выполняется до тех пор пока $a=0, но так как переменная по умолчанию ноль то цикл сразу пропускает.
Разве не наобарот? пока a=0 то while работает?
Синтаксис не верен, да еще и ошибки в написании команд. Бери команды из шаблонов, не ошибешься. Также  getscreen в не цикла, если пиксел изначально найден то цикл никогда не завершится, потому как новый снимок не делается.
Ну дык дата скрипта 17.01.2018 ;D учусь.
Спасибо за развернутый ответ.

Code: (clickermann) [Select]
$a=0
while($a=0)
   getscreen
   if(pxl(493,261) = 16777215)
      DBLCLICK(697,260)
      wait(15)
      ldown(374,45)
      WAITMS(50)
      move(374,14)
      WAITMS(50)
      lup(374,14)
      waitms(500)
      lclick(780,113)
      wait(5)
      lclick(414,387)
      wait(30)
      lclick(274,77)
      wait(60)
      lclick(1592,214)
      waitms(500)
   else
      $a = 1
   end_if
end_cyc
 
lclick(31,1052)
 
halt
Сработало! Спасибо!
ещё вопрос: где можно посмотреть мануал по IF? и ещё точнее какие переменные можно писать в условие IF?

7
Доброго времени суток!
Недавно познакомился с программой, почиал учебники(видимо както косо почитал :-[), решил попробовать.
так вот решил сделать цикл с поиском определнного пикселя(не картинки) в списке, если кликер его не находит, то останавливается. Так вот, написал конструкцию вида
Code: [Select]
// 17.01.2018
#name "Прием по цвету"

$a=0
getscreen
while($a=0)
if( pxl(493,261 16777215))
dbclick(697,260)
wait(15)
ldown(374,45)
move(374,14)
lup(374,14)
waitms(500)
lclick(780,113)
wait(5)
lclick(414,387)
wait(30)
lclick(274,77)
wait(60)
lclick(1592,214)
waitms(500)
else
inc($a,1)
end_if
end_cyc
$a=0
lclick(31,1052)
halt
она не срабатывает, сразу уходит в
Code: [Select]
lclick(31,1052)
halt
но если написать вот так:
Code: [Select]
// 17.01.2018
#name "Прием по цвету"

getscreen
if( pxl(493,261 16777215) )
dblclick(653,257)
wait(10)
ldown(382,45)
move(390,18)
lup(390,18)
waitms(1000)
lclick(777,115)
wait(5)
lclick(409,366)
wait(30)
lclick(274,80)
wait(60)
lclick(1590,215)
waitms(1000)
то все работает :o, но не останавливается когда не видит этот пиксель. ЧЯННЕТ? :'(
Просьба, по возможности, обьяснить нубяре что там не так. Заранее спасибо!

Pages: [1]