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 - doushy

Pages: [1]
1
Общие вопросы / Autoclick с переключением
« on: December 20, 2020, 07:04:45 PM »
Привет. подскажите, можно ли сделать, чтобы скрипт, например работал по toggle начатию клавиши. По русски: Нажал F5, скрипт работает, нажал ещё раз, скрипт не работает, и так по кругу.

сам скрипт работает так: "Нажимаешь правую кнопку(прицел) и он кликает(стреляет), пока не отпустишь правую кнопку"

Code: (clickermann) [Select]
$var0 = 0

IF(ISKEYDOWN(#L)=1)
$var1 = 1
   WHILE(($var0 = 0)& ($var1 = 1))
      IF(ISKEYDOWN(2)=1)
         IF(ISKEYDOWN(1)=1)// 1 клик на левую мышь, после чего начнет долбить с интервалом 20 мс
         $var = 1
            WHILE($var = 1)
               LCLICK($_xmouse,$_ymouse)
               WAITMS(20)
                  IF(ISKEYDOWN(2)!1)// 1 клик на правую мышь, чтоб выключить
                  $var = 0
                  END_IF
            END_CYC
         END_IF
      END_IF
   END_CYC
END_IF

2
Такой вопрос...у меня Кликер, спустя время, начинает хуже работать...через пару часов, вообще 1 цикл выпорнят в 100 раз медленее...и если нажать стоп и заново запустить, то всё хорошо...Если ли здравое решение этой проблемы, типо обнуление данных или что то типо того...В скрипте много работы с пикселями...Когда скрипт 2500 циклов делает, то скорость цикла падает в 3 раза...когда 100000 циклов, скорость падает в 100-1000 раз, и получается цикл по 10 сек выполняется...и вариант как вторым кликером перезапускать первые - нету...а это не много туповато)))

Code: (clickermann) [Select]
IF($time_6 < $_time_t) //Окно (разрешение обязательно 1920x1080)
   wndpos( wndfind("CTA"), 1396, 0)
   wndsize( wndfind("CTA"), 487, 1040)
   LCLICK(1638,20)
   WAITMS(500)
   $time_6 = $_time_t + 3600
END_IF

DEFINE($var, 2)

GETSCREEN
IF_PIXEL_IN(1400,234, 1877,265, 48111)
   LCLICK($_return1, $_return2)
   WAITMS(500)
   
   GETSCREEN
   IF_PIXEL_IN(1562,491, 1710,573, 16760320)
      LCLICK($_return1, $_return2)
      WAIT(61)
      KEYPRESS(#ESC)
      WAIT(2)
      KEYPRESS(#F1)
      WAIT(1)
      KEYPRESS(#F1)
      WAIT(1)
     
      GETSCREEN
      IF_PIXEL_IN(1659,487, 1659,487, 13291479) //4 кри
         DEFINE($var_1, 4)
      END_IF
      IF_PIXEL_IN(1654,491, 1654,491, 12765393) //2 кри
         DEFINE($var_1, 2)
      END_IF
      IF_PIXEL_IN(1642,490, 1642,490, 15330286) //10 кри
         DEFINE($var_1, 10)
      END_IF
     
      LOGWRITE(" ", $var_1)
      UNDEFINE ($var_1)
      LCLICK(1644,582)
      WAITMS(1500)
      LCLICK(1644,582)
      WAITMS(500)
      LCLICK(1644,582)
      WAIT(1)
     
      GETSCREEN
      IF_PIXEL_IN(1820,57, 1840,64, 1195122) //Крестик
         LCLICK($_return1, $_return2)
         WAITMS(500)
      END_IF
      WAIT(1)
      GETSCREEN
      IF_PIXEL_IN(1555,653,1557,655, 6622) //Крестик красный на закрытик
         LCLICK(1558,655) // 6622
         WAITMS(500)
      END_IF
     
   END_IF
END_IF

IF($time_1 < $_time_t)
   GETSCREEN
   IF_PIXEL_IN(1795,448, 1795,448, 4953)
      WAITms(300)
      LCLICK($_return1, $_return2)
      WAIT(61)
     
      KEYPRESS(#ESC)
      WAIT(2)
      KEYPRESS(#F1)
      WAIT(1)
      KEYPRESS(#F1)
      WAIT(1)
     
      LCLICK(1644,582)
      WAITMS(1500)
      LCLICK(1644,582)
      WAITMS(500)
      LCLICK(1644,582)
      WAIT(1)
     
      GETSCREEN
      IF_PIXEL_IN(1820,57, 1840,64, 1195122) //Крестик
         LCLICK($_return1, $_return2)
         WAITMS(500)
      END_IF
      WAIT(1)
     
      GETSCREEN
      IF_PIXEL_IN(1555,653,1557,655, 6622) //Крестик красный на закрытик
         LCLICK(1558,655) // 6622
         WAITMS(500)
         
         $time_1 = $_time_t + 1200
      END_IF
   END_IF
END_IF

IF($time_2 < $_time_t)
   GETSCREEN
   IF_PIXEL_IN(1429,866,1431,868, 0) //АФК
      LCLICK($_return1, $_return2)
      WAITMS(500)
      GETSCREEN
      IF_PIXEL_IN(1590,577, 1688,623, 14470400)
         LCLICK($_return1, $_return2)
         $time_2 = $_time_t + 600
      END_IF
   END_IF
END_IF

If ($var = 2)
   IF($time_3 < $_time_t)
      GETSCREEN
IF_PIXEL_IN(1435,925,1437,927, 931432)    //завис
      else
         KEYPRESS(#home)
         WAIT(2)
         KEYPRESS(#F1)
         WAIT(1)
         LDOWN(1670,934)
         WAIT(1)
         LCLICK(1615,823)
         LCLICK(1615,823)
         WAITMS(1500)
         LCLICK(1446,765)
         Wait(15)
         
         GETSCREEN
         IF_PIXEL_IN(1587,545, 1694,608, 14470144, 14668032) //Синие окно
            LCLICK(1644,582)
            WAITMS(500)
         END_IF
         Wait(1)
         GETSCREEN
IF_PIXEL_IN(1820,57, 1840,64, 1195122) //Крестик
            LCLICK($_return1, $_return2)
            WAIT(1)
         END_IF
         
         GETSCREEN
         IF_PIXEL_IN(1587,545, 1694,608, 14338048) //Синие окно
            LCLICK(1644,582)
            WAITMS(500)
         END_IF
         
         LCLICK(1720,1000)
         WAITMS(500)
      END_IF
     
      $time_3 = $_time_t + 600
   END_IF
END_IF

GETSCREEN
IF_PIXEL_IN(1587,545, 1694,608, 14470144) //Синие окно
   LCLICK(1644,582)
   WAITMS(500)
   GETSCREEN
END_IF

IF_PIXEL_IN(1820,57, 1840,64, 1195122) //Крестик
   LCLICK($_return1, $_return2)
   WAIT(1)
   GETSCREEN
END_IF

IF_PIXEL_IN(1830,244, 1830,244, 1195122) //Крестик
   LCLICK($_return1, $_return2)
   WAIT(1)
END_IF

DEFINE($time, $_time_t + 600)
IF($time < $_time_t)
   LCLICK(42,718)  // 4777089
   $time = $_time_t + 600
END_IF

WAITMS(100)

3
Условия: в течение 60 секунд он ищет цвет в области...первый не нашёл, дальше ищёт, если второй не нашёл, дальше...и так в течение 60 секунд, если он в какой то момент находит, то он ждём в определённое место и цикл завершён. Если по истечению времени он не находит, то жмёт тоже в другое место...(Для наглядности: в игре есть реклама, которая длиться от 20 до 59 секунд. хочу чтобы он отслеживал крестики и закрывал рекламу по истечению времени. если он всё таки не найдёт, то просто по истечению сам закрывал рекламу.)
п.с. Объединять цвета нельзя, потому что так могут быть не цвета, а файлы.

вот, начал, но запутался(
Code: (clickermann) [Select]
$time = $_time_t + 60
WHILE($time > $_time_t)
   GETSCREEN
   IF_PIXEL_IN(1491,58,1532,100, 3092272)
      LCLICK($_return1, $_return2)
      $time = 0
      WAIT(1)
   else
 IF_PIXEL_IN(1491,58,1532,100, 1665435)
      LCLICK($_return1, $_return2)
      $time = 0
      WAIT(1)
   else
      IF_PIXEL_IN(1470,56,1541,110, 6513764)
         LCLICK($_return1, $_return2)
         $time = 0
         WAIT(1)
      else
         WAITMS(50)
      END_IF
   END_IF
END_CYC
 
HALT

4
Подскажите, как сделать так, чтобы первое действие выполнялось всегда, а второе, которое "//", каждые 20 минут...или в идеале, чтобы когда второе выполнялось, первое временно переставала работать.


GETSCREEN
IF_PIXEL_IN(1072,247, 1543,284, 2410228)
   LCLICK($_return1, $_return2)
   WAITMS(1000)
   LCLICK(1307, 535)
   WAITMS(40000)
   LCLICK(1512,65)
   WAITMS(1000)
   LCLICK(1312,584)
   WAITMS(1000)
   LCLICK(1331,341)
END_IF



/ //
    LCLICK(1111,111)
    WAITMS(1000)
    LCLICK(345,111)
    WAITMS(1000)
    LCLICK(561,111)
   WAITMS(120000)
   
 ///
   

Pages: [1]