Author Topic: Прошу помочь со скриптом  (Read 3416 times)

0 Members and 2 Guests are viewing this topic.

Keo

  • Зашел в гости
  • *
  • Posts: 5
    • View Profile
Прошу помочь со скриптом
« on: January 12, 2017, 04:41:53 PM »
Пытаюсь написать скрипт под рыбалку в Neverwinter Online. Суть в том что последовательно загараются иконки по которым последовательно надо нажимать.
Но почему-то работает он через раз и не все условия видит. Подскажите что не правильно. Спасибо.


Code: (clickermann) [Select]
/// закинуть

$check = 0
WHILE($check = 0)
   GETSCREEN
   IF_PIXEL_IN(1546,938, 1564,962, 16736463)
      $check = 1
      LCLICK($_return1, $_return2)
      WAITMS(100)
   ELSE
      WAITMS(50)
   END_IF
END_CYC

/// вытащить

$check = 0
WHILE($check = 0)
   GETSCREEN
   IF_PIXEL_IN(1581,938, 1603,965, 16738012)
      $check = 1
      RCLICK($_return1, $_return2)
      WAITMS(100)
   ELSE
      WAITMS(100)
   END_IF
END_CYC

///Тянуть

$check = 0
WHILE($check = 0)
   GETSCREEN
   IF_PIXEL_IN(1463,944, 1487,959, 16367459)
      $check = 1
      KEYDOWN(#E) 
      WAITMS(1500) 
      KEYUP(#E)
      WAITMS(100)
   ELSE
      WAITMS(50)
   END_IF
END_CYC

///Достать

$check = 0
WHILE($check = 0)
   GETSCREEN
   IF(PXL(1481,885) = 8505893)
      $check = 1
      KEYDOWN(#3) 
      WAITMS(1500) 
      KEYUP(#3)
      WAITMS(100)
   ELSE
      WAITMS(50)
   END_IF
END_CYC
« Last Edit: January 12, 2017, 07:05:11 PM by Oraven »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Прошу помочь со скриптом
« Reply #1 on: January 12, 2017, 05:14:49 PM »
Минимум не хватает трёх END_CYC, или три WHILE($check = 0) лишние.


Keo

  • Зашел в гости
  • *
  • Posts: 5
    • View Profile
Re: Прошу помочь со скриптом
« Reply #2 on: January 12, 2017, 05:19:29 PM »
Ага, да это я поправил. В остальном правильно?
Дело в том что периодически не работают какие-то условия может картинками правильней сделать?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Прошу помочь со скриптом
« Reply #3 on: January 12, 2017, 06:16:00 PM »
Ну смотря как поправил...

Правильней так, как будет находить. Условия работают - цвет не находит.


Keo

  • Зашел в гости
  • *
  • Posts: 5
    • View Profile
Re: Прошу помочь со скриптом
« Reply #4 on: January 12, 2017, 06:19:41 PM »
Видимо именно в этом проблема. В вк уже подсказали про цветокоррекцию. Буду пробовать.

Keo

  • Зашел в гости
  • *
  • Posts: 5
    • View Profile
Re: Прошу помочь со скриптом
« Reply #5 on: January 13, 2017, 12:42:05 AM »
Поправил цвета, уменьшил задержки. Срабатывает как часы но 1 раз. Почему-то не хочет вставать на цикл.

Code: (clickermann) [Select]
/// закинуть

$check = 0
WHILE($check = 0)
   GETSCREEN
   IF(PXL(1553,942) = 16439797)
      $check = 1
      LCLICK($_return1, $_return2)
   ELSE
      WAITMS(5)
   END_IF
END_CYC
/// вытащить

$check = 0
WHILE($check = 0)
   GETSCREEN
      IF(PXL(1589,946) = 16727231)
      $check = 1
      RCLICK($_return1, $_return2)
   ELSE
      WAITMS(5)
   END_IF
END_CYC
///Тянуть


$check = 0
WHILE($check = 0)
   GETSCREEN
      IF(PXL(1483,950) = 16435057)
      $check = 1
      KEYDOWN(#E) 
      WAITMS(1500) 
      KEYUP(#E)
   ELSE
      WAITMS(5)
   END_IF
END_CYC

///Достать

$check = 0
WHILE($check = 0)
   GETSCREEN
   IF(PXL(1487,885) = 12582719)
      $check = 1
      KEYPRESS(#3)
   ELSE
      WAITMS(5)
   END_IF
END_CYC
 
« Last Edit: January 13, 2017, 12:43:44 AM by Keo »

Keo

  • Зашел в гости
  • *
  • Posts: 5
    • View Profile
Re: Прошу помочь со скриптом
« Reply #6 on: January 13, 2017, 03:05:05 AM »
В таком вот виде заработало, осталось теперь сделать проверку 2х пикселей и при соблюдении цвета обоих нажатие.
По поиску нашел аналогию но не работает так, берет последнюю строчку только

$check = 0
GETSCREEN
IF(PXL(1483,950) = 16435057)
   IF(PXL(1507,943) = 15037495)
      $check = 1
      KEYDOWN(#E)
      WAITMS(2000)
      KEYUP(#E)

Code: (clickermann) [Select]
/// закинуть

$check = 0
GETSCREEN
IF(PXL(1553,942) = 16439797)
   $check = 1
   LCLICK($_return1, $_return2)
ELSE
   WAITMS(5)
END_IF
/// вытащить

$check = 0
GETSCREEN
IF(PXL(1589,946) = 16727231)
   $check = 1
   RCLICK($_return1, $_return2)
ELSE
   WAITMS(5)
END_IF
///Тянуть

$check = 0
GETSCREEN
IF(PXL(1483,950) = 16435057) ///??????
   IF(PXL(1507,943) = 15037495) ///??????
      $check = 1
      KEYDOWN(#E)
      WAITMS(2000)
      KEYUP(#E)
   ELSE
      WAITMS(5)
   END_IF
   
   ///Достать
   
$check = 0
GETSCREEN
IF(PXL(1489,885) = 10549560)
      $check = 1
      KEYPRESS(#3)
   ELSE
      WAITMS(5)
   END_IF
END_CYC
« Last Edit: January 13, 2017, 03:20:35 AM by Keo »