Author Topic: Dark Orbit сборщик коробок. Помогите дописать чуть чуть))  (Read 37245 times)

0 Members and 2 Guests are viewing this topic.

Vladinbox

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Вот тебе работоспособный, правда лучше переделай его чтоб поиск из центра был, ибо в этом он будет всегда пытаться левый верхний палик собрать . Для работы нужно все настройки графики убрать в ноль и использовать 2D.  А что бы он моба бил я сам пытаюсь. Бить то бьет(Не этот скрипт), но если их несколько то начинает метаться  от одного к другому. Короче пока еще не понял как нормально сделать.
Code: [Select]
GETSCREEN
WAITMS(20)

Thread(thr1)



$time = $_time_t + RND(20,30)
$check = 0
$check_out = 0
WHILE(($check_out = 0) & ($time > $_time_t))
   IF_PIXEL_IN(350,238, 980,685, 9557759, 10386009, 2964963 ) //350,238, 980,685,  область поиска, 9557759, 10386009, 2964963 цвета палика
      LDOWN ($_return1, $_return2)
      WAITMS(RND(80,100))
      LUP($_return1, $_return2)
      WAITMS(RND(100,120)) 
WAIT(rnd(1,2))
setThread(thr2,0)
 
     
   ELSE
      IF($check = 1)
         $check_out = 1
         setThread(thr2,1) 
      END_IF
     

     
      WAITMS(50)
   END_IF
 
END_CYC

WAITMS(RND(50,120))
//много задержек чтоб не пропускал

setThread(thr2,1) 
End_thread

Thread(thr2)


 LCLICK(RND(1315,1371),RND(800,813)) // область миникарты (у меня 1440х900 разрешение)
WAIT(5)
 
End_thread

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Зачем делать снимки каждые 20 миллисекунд? Это лишний и не нужный напряг на процессор! Снимок нужно делать непосредственно перед анализом.
Code: (clickermann) [Select]
Thread(thr1)
   $time = $_time_t + RND(20,30)
   $check = 0
   $check_out = 0
   WHILE(($check_out = 0) & ($time > $_time_t))
      GETSCREEN
      IF_PIXEL_IN(350,238, 980,685, 9557759, 10386009, 2964963 ) //350,238, 980,685,  область поиска, 9557759, 10386009, 2964963 цвета палика
         setThread(thr2,0)
         LDOWN ($_return1, $_return2)
         WAITMS(RND(80,100))
         LUP($_return1, $_return2)
         WAITMS(RND(100,120))
         WAIT(rnd(1,2))
      ELSE
         IF($check = 1)
            $check_out = 1
            setThread(thr2,1)
         END_IF
         WAITMS(50)
      END_IF
   END_CYC
   
   WAITMS(RND(50,120))
   //много задержек чтоб не пропускал
   
   setThread(thr2,1)
End_thread

Thread(thr2)
   
   LCLICK(RND(1315,1371),RND(800,813)) // область миникарты (у меня 1440х900 разрешение)
   WAIT(5)
   
End_thread

WAIT(1)

Vladinbox

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
У меня очень мощный комп, и он не встает даже если снимки  с 1 мс частотой. Именно в этом коде я соглашусь, что нету смысла , но в коде из которого  я его выдернул  такой ход оправдал себя,  ибо обеспечивается хорошая точность клика.

Vladinbox

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Если играете в дарк орбит, то попробуйте использовать скрипт постепенно увеличивая  задержку между  снимками. И вы поймете, что чем чаще обновляется экран тем меньше кликов ему потребуется чтоб собрать коробку