Author Topic: помогите со сдвигом экрана  (Read 3690 times)

0 Members and 1 Guest are viewing this topic.

lDC512L

  • Освоившийся
  • **
  • Posts: 39
    • View Profile
помогите со сдвигом экрана
« on: April 10, 2016, 08:12:24 PM »
Code: [Select]
IF($time < $_time_t)
   lDown(636,517)                              // линк на экране
MOVE($_return1-60,$_return2-160)  // сдвиг влево и вверх
   lUp(680,565)
     $time = $_time_t + 20
END_IF)
,будет сдвигать слева направо и снизу вверх, как можно сделать чтобы сдвиг был в рандомном направлении экрана?

Кликермен

  • Активный участник
  • ***
  • Posts: 112
    • View Profile
Re: помогите со сдвигом экрана
« Reply #1 on: April 10, 2016, 09:18:18 PM »
может он в контру играет)

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: помогите со сдвигом экрана
« Reply #2 on: April 10, 2016, 09:19:37 PM »
Что то странный какой то у тебя код
Code: (clickermann) [Select]
IF($time < $_time_t)
   lDown(636,517)                              // линк на экране
   WAITMS(100)
   MOVE($_return1+RNDFROM(-60,60),$_return2+RNDFROM(-160,160))  // сдвиг влево или вправо, вверх или вниз
   WAITMS(100)
   lUp(-1,-1)
   WAITMS(100)
   $time = $_time_t + 20
END_IF
« Last Edit: April 10, 2016, 09:58:45 PM by Oraven »

lDC512L

  • Освоившийся
  • **
  • Posts: 39
    • View Profile
Re: помогите со сдвигом экрана
« Reply #3 on: April 10, 2016, 09:26:21 PM »
ну очевидно, что вместо чисто-конкретных координат нужно использовать рандомные
LDOWN(RND(0,$_xmax),RND(0,$_ymax))
LUP(RND(0,$_xmax),RND(0,$_ymax))
только непонятно какой смысл в рандомных двиганьях.
полный код
Code: [Select]
WAIT(1)
GETSCREEN
FOR($num = 1,$num < 26)
   IF_PICTURE_IN(242,70,1228,721, STRCONCAT($num,".bmp"))
      $num = 100
      LCLICK($_return1, $_return2)
   END_IF
END_CYC
IF($time < $_time_t)
   LCLICK(290,91)  // 530998
   LCLICK(290,91)  // 530998
   LCLICK(290,91)  // 530998
   LCLICK(290,91)  // 530998
   lDown(636,517)
MOVE($_return1-60,$_return2-160)
   lUp(680,565)
 
   
   $time = $_time_t + 20
END_IF
а смысл сдвига в том что если нет картинок то двигаем экран и снова ищем картинки и тыкаем в них )

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: помогите со сдвигом экрана
« Reply #4 on: April 10, 2016, 09:58:05 PM »
Вот это место вообще не понятно
Code: (clickermann) [Select]
  lDown(636,517)
MOVE($_return1-60,$_return2-160)
   lUp(680,565)

При чем тут ретурны? Обычно достаточно зажать мышь в одной точке и отпустить в другой. Если не работает то используем MOVE. Если и это не работает то скрипт плавного перемещения.
После кликов обычно пишут задержки.

Вот вариант.
Code: (clickermann) [Select]
GETSCREEN
FOR($num = 1,$num < 26)
   IF_PICTURE_IN(242,70,1228,721, STRCONCAT($num,".bmp"))
      $num = 100
      LCLICK($_return1, $_return2)
      WAITMS(100)
   END_IF
END_CYC

IF($num ! 100) // если не одна из картинок не найдена
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   lDown(636,517) // зажимам
   WAITMS(60)
   MOVE(636+RNDFROM(-60,60),517+RNDFROM(-160,160)) // передвигаем в рандомное направление
   WAITMS(60)
   lUp(-1,-1) // отпускаем
END_IF

WAIT(1)

lDC512L

  • Освоившийся
  • **
  • Posts: 39
    • View Profile
Re: помогите со сдвигом экрана
« Reply #5 on: April 10, 2016, 10:08:38 PM »
скрипт работает неправильно, получается он находит картинку 1, тыкает в нее, и не смотря на то что есть еще картинка 2 он все равно думает что ее нету, пробовал ставить задержку 2-3 секунды, но все равно он думает что нету картинки и делает сдвиг, что можно еще придумать?

lDC512L

  • Освоившийся
  • **
  • Posts: 39
    • View Profile
Re: помогите со сдвигом экрана
« Reply #6 on: April 10, 2016, 10:16:09 PM »
при нажатии на рисунки 11-26 выскакивает окно в котором может быть кнопки с рисунком 1-10, пробовал поставить условие ищи 1-10 если нету то ищи 11-26, но все равно не работает как надо, просто тыкает в сторону и делает сдвиг как будто рисунка такого нету, хотя ваша идея со сдвигом если нету рисунка намного практичнее моего со временем )
Code: [Select]
WAIT(1)
GETSCREEN
FOR($num = 1,$num < 10)
   IF_PICTURE_IN(242,70,1228,721, STRCONCAT($num,".bmp"))
      $num = 100
      LCLICK($_return1, $_return2)
WAIT(1)
else
FOR($num = 11,$num < 26)
   IF_PICTURE_IN(242,70,1228,721, STRCONCAT($num,".bmp"))
      $num = 100
      LCLICK($_return1, $_return2)
WAIT(1)
   END_IF
END_CYC
 
IF($num ! 100) // если не одна из картинок не найдена
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   lDown(636,517) // зажимам
   WAITMS(60)
   MOVE(636+RNDFROM(-60,60),517+RNDFROM(-160,160)) // передвигаем в рандомное направление
   WAITMS(60)
   lUp(-1,-1) // отпускаем
END_IF
 
WAIT(1)
« Last Edit: April 10, 2016, 10:18:18 PM by lDC512L »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: помогите со сдвигом экрана
« Reply #7 on: April 11, 2016, 07:54:26 AM »
скрипт работает неправильно...

Он работает именно так как написано.
Как ты думаешь для чего в условии поиска $num = 100 ?
Как только первая попавшаяся картинка будет найдена $num станет больше 26 и цикл не повторяется. Если ты хочеш по любому прогнать все картинки то писать нужно иначе.

Code: (clickermann) [Select]
$check = 0 // переменная флаг (0 не найдено, 1 найдено)
GETSCREEN
FOR($num = 1,$num < 26)
   IF_PICTURE_IN(242,70,1228,721, STRCONCAT($num,".bmp"))
      $check = 1 // помечаем что найдено
      LCLICK($_return1, $_return2)
      WAITMS(100)
   END_IF
END_CYC

IF($check = 0) // если не найдено
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   LCLICK(290,91)  // 530998
   WAITMS(50)
   lDown(636,517) // зажимам
   WAITMS(60)
   MOVE(636+RNDFROM(-60,60),517+RNDFROM(-160,160)) // передвигаем в рандомное направление
   WAITMS(60)
   lUp(-1,-1) // отпускаем
END_IF

WAIT(1)

lDC512L

  • Освоившийся
  • **
  • Posts: 39
    • View Profile
Re: помогите со сдвигом экрана
« Reply #8 on: April 11, 2016, 09:20:25 AM »
спасибо за помошь ) но все равно упорно не хочет работать как хотелось бы ) где то касяк запрятался) буду искать )