Author Topic: Прошу помочь с условием  (Read 6483 times)

0 Members and 2 Guests are viewing this topic.

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Прошу помочь с условием
« Reply #15 on: February 25, 2017, 10:05:30 PM »
Code: (clickermann) [Select]
getscreen
if_pixel_in(18,109,29,135,14847254)
   if(pxlcount(28,164,144,189, 0) > 0)
      lclick(88,176)
      waitms(200)
   end_if
   $a=0  //задал значение
   while($a=0)  //пока значение =0 цикл работает
      getscreen
      if_pixel_in(841,216,945,234,10066329)
         $a=1  //если найдено изменил значение выполнение сценария продолжится.
         lclick(901,175)
      else
         waitms(50)
      end_if
   end_cyc
   $a=0
   while($a=0)
      getscreen
      if_pixel_in(744,205,793,220,3355443)
         $a=0
         lclick(796,214)
      else
         waitms(50)
      end_if
   end_cyc
end_if
Можно использовать одну переменную.

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #16 on: February 25, 2017, 10:09:12 PM »
Спасибо огромное =) все заработало =)
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #17 on: February 25, 2017, 10:14:23 PM »
А данный кликер может найти ссылку в указанной области или найти начало ссылки допустим http:// ? Простите за назойливость(
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Прошу помочь с условием
« Reply #18 on: February 25, 2017, 10:20:32 PM »
Может. Данный кликер ооочень много может.

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #19 on: February 25, 2017, 10:24:04 PM »
Спасибо буду искать варианты ;) Мне очень понравился данный инструмент, как только появятся лишние $ обязательно поблагодарю разработчиков =)
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Прошу помочь с условием
« Reply #20 on: February 25, 2017, 10:27:35 PM »
Читайте справку, форум - найдете очень много интересного.

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #21 on: February 25, 2017, 10:29:59 PM »
а данный скрипт не получится запускать с терминала linux ?
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Прошу помочь с условием
« Reply #22 on: February 25, 2017, 10:41:19 PM »
От автора:
Честно говоря ни разу этим вопросом не интересовался по причине ну уж очень маленькой ЦА. Портировать ради 10-20 человек, когда основная аудитория измеряется тысячами - ну не знаю. К тому же в кликере очень много завязок именно на WinAPI, который, мне думается, в линуке отсутствует как класс.
И учитывая что раз никто до сих пор не сделал этого, хотя аналогов под винду пруд пруди а первые подобные проги начали появляться лет 15 назад, то все не так просто.

Выкручивайтесь. Wine там всякий, что там у вас есть на такие случаи.
Если какой порт и будет, то скорее всего под Андроид

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #23 on: February 25, 2017, 11:25:29 PM »
Ну так то почему нет о_О php скрипт запускается через xdotool почему этот не пойдет? Просто на php геморно писать, а чистого функционала у xdotool мало, да и заморочно всравнении clickermann
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #24 on: February 25, 2017, 11:54:13 PM »
От автора:
Честно говоря ни разу этим вопросом не интересовался по причине ну уж очень маленькой ЦА. Портировать ради 10-20 человек, когда основная аудитория измеряется тысячами - ну не знаю. К тому же в кликере очень много завязок именно на WinAPI, который, мне думается, в линуке отсутствует как класс.
И учитывая что раз никто до сих пор не сделал этого, хотя аналогов под винду пруд пруди а первые подобные проги начали появляться лет 15 назад, то все не так просто.

Выкручивайтесь. Wine там всякий, что там у вас есть на такие случаи.
Если какой порт и будет, то скорее всего под Андроид
Code: [Select]
$a=0  //задал значение
   while($a=0)  //пока значение =0 цикл работает
      getscreen
      if_pixel_in(841,216,945,234,10066329)
         $a=1  //если найдено изменил значение выполнение сценария продолжится.
         waitms(500)
         lclick(864,163) //клик по кнопке
         $b=0  //если кнопка не сработала задаем значение
         while($b=0)
            getscreen
            if(pxlcount(744,205,793,220,3355443) < 1) //если в областе меньше 1 пикселя делаем клик по той же кнопке
               lclick(903+rnd(1,3),175+rnd(1,3))
            end_if
            $b=1 //как только появляется нужный пиксель в областе выходим из цикла
            GOTO(skip)
         else
            waitms(500)
         end_cyc
      end_if
   end_cyc
   skip:
не посмотришь так можно? если да, то где ошибся?
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Прошу помочь с условием
« Reply #25 on: February 26, 2017, 10:01:04 AM »
Сначала ошибки:
Code: (clickermann) [Select]
$a=0  //
while($a=0)  //
   getscreen
   if_pixel_in(841,216,945,234,10066329) //ЕСЛИ ПИКСЕЛ НЕ НАЙДЕН ТО ВСЕ ЧТО НИЖЕ НЕ СРАБОТАЕТ ПОКА ОН НЕ ПОЯВИТСЯ.
      $a=1                               //Можно использовать цикл с таймером, если пиксель может и не появиться.
      waitms(500)
      lclick(864,163) //клик по кнопке
      $b=0  //если кнопка не сработала задаем значение
      while($b=0)
         getscreen
         if(pxlcount(744,205,793,220,3355443) < 1) //ЗАЧЕМ ИСКАТЬ ВСЕ ПИКСЕЛИ ЕСЛИ ДОСТАТОЧНО ОДНОГО
            lclick(903+rnd(1,3),175+rnd(1,3))    //ЭТО ТА_ЖЕ КНОПКА? КАКАЯ? ИЗ СТРОКИ № 7?
         end_if
         $b=1 //
         GOTO(skip)   //ВЫПРЫГИВАТЬ ИЗ ЦИКЛА ЗАПРЕЩЕНО-БУДУТ ПРОБЛЕМЫ!!!
      else   // ЭТО ДОЛЖНО БЫТЬ ВНУТРИ УСЛОВИЯ МЕЖДУ if И end_if.
         waitms(500)
      end_cyc
   end_if
end_cyc
skip:

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #26 on: February 26, 2017, 10:49:22 AM »
Да кнопка та же из строки 7, суть в том, что кнопка не всегда срабатывает на клик кликера, на клик реальной мыши реагирует отлично, при клике на кнопку открывается выпадающее меню, вот мне и надо кликать на кнопку пока не появится нужные пиксели из выподающего меню и кликнуть по кнопке из этого меню, почему не определенный пиксель а поиск по области -из за того что кнопка может периодически изменять положение на несколько пикселей, из за чего большая вероятность, что нужного пикселя там не будет((
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #27 on: February 26, 2017, 11:26:10 AM »
Сначала ошибки:
Code: (clickermann) [Select]
$a=0  //
while($a=0)  //
   getscreen
   if_pixel_in(841,216,945,234,10066329) //ЕСЛИ ПИКСЕЛ НЕ НАЙДЕН ТО ВСЕ ЧТО НИЖЕ НЕ СРАБОТАЕТ ПОКА ОН НЕ ПОЯВИТСЯ.
      $a=1                               //Можно использовать цикл с таймером, если пиксель может и не появиться.
      waitms(500)
      lclick(864,163) //клик по кнопке
      $b=0  //если кнопка не сработала задаем значение
      while($b=0)
         getscreen
         if(pxlcount(744,205,793,220,3355443) < 1) //ЗАЧЕМ ИСКАТЬ ВСЕ ПИКСЕЛИ ЕСЛИ ДОСТАТОЧНО ОДНОГО
            lclick(903+rnd(1,3),175+rnd(1,3))    //ЭТО ТА_ЖЕ КНОПКА? КАКАЯ? ИЗ СТРОКИ № 7?
         end_if
         $b=1 //
         GOTO(skip)   //ВЫПРЫГИВАТЬ ИЗ ЦИКЛА ЗАПРЕЩЕНО-БУДУТ ПРОБЛЕМЫ!!!
      else   // ЭТО ДОЛЖНО БЫТЬ ВНУТРИ УСЛОВИЯ МЕЖДУ if И end_if.
         waitms(500)
      end_cyc
   end_if
end_cyc
skip:
А можно сделать как-нибудь так?
Code: [Select]
$a=0  //задал значение
   while($a=0)
      lclick(900,179)//клик по кнопке
      waitms(500)
      //пока значение =0 цикл работает
      getscreen
      if_pixel_in(565,206,779,221,3355443)//поиск пикселя если после килка выпало меню с нужным пикселем
         $a=1  //если найдено изменил значение выполнение сценария продолжится.
         lclick(796,214)
      else
         waitms(50)
      end_if
   end_cyc
Только почему-то так вообще не заходит в цикл, вот целиком
Code: [Select]
getscreen
if_pixel_in(18,109,29,135,14847254)
   if(pxlcount(28,164,144,189, 0) > 0)
      lclick(88,176)
      waitms(200)
   end_if
   $a=0  //задал значение
   while($a=0)
      lclick(900,179)//клик по кнопке
      waitms(500)
      //пока значение =0 цикл работает
      getscreen
      if_pixel_in(565,206,779,221,3355443)//поиск пикселя если после килка выпало меню
         $a=1  //если найдено изменил значение выполнение сценария продолжится.
         lclick(796,214)
      else
         waitms(50)
      end_if
   end_cyc
end_if
LDOWN(1286,198)
waitms(500)
LUP(994,201)
KEYDOWN(#ctrl)
KEYDOWN(#c)
waitms(500)
KEYUP(#ctrl)
KEYUP(#c)
KEYPRESS(#delete)
waitms(50)
KEYPRESS(#delete)
waitms(1000)
DBLCLICK(585,222)
waitms(500)
KEYDOWN(#ctrl)
KEYDOWN(#v)
waitms(500)
KEYUP(#ctrl)
KEYUP(#v)
waitms(500)
lclick(316,172)
end_if
wait(2)
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

Qlloudy

  • Освоившийся
  • **
  • Posts: 27
    • View Profile
Re: Прошу помочь с условием
« Reply #28 on: February 26, 2017, 11:35:28 AM »
Спасибо всем кто помогал разобраться, последний вариант сработал, в цикл не заходил из-за низкого тайминга после предыдущего действия...а так теперь жмет на кнопку, пока не найдет нужный пиксель из выпадающего меню ;)
Если есть желание, нет ничего невозможного -все преграды лишь в нашей голове...

open_78

  • Активный участник
  • ***
  • Posts: 285
  • v4.13.014 x64
    • View Profile
Re: Прошу помочь с условием
« Reply #29 on: February 26, 2017, 11:43:55 AM »
Code: (clickermann) [Select]
getscreen
if_pixel_in(18,109,29,135,14847254) //  возможно не находит пиксел
   HINTPOPUP("Пиксел 14847254 найден")
   if(pxlcount(28,164,144,189, 0) > 0)  //почему тут не используешь - if_pixel_in ?
      lclick(88,176)
      waitms(200)
   end_if
   $a=0
   while($a=0)
      lclick(900,179)//кликать будет пока не найдет строчку-13
      waitms(500)
      getscreen
      if_pixel_in(565,206,779,221,3355443)//поиск пикселя если после килка выпало меню
         HINTPOPUP("Пиксел 3355443 найден")
         $a=1
         lclick(796,214)
      else
         waitms(50)
      end_if
   end_cyc
else
   HINTPOPUP("Пиксел 14847254 НЕ найден")
end_if   
LDOWN(1286,198)
waitms(500)
LUP(994,201)
KEYDOWN(#ctrl)
KEYPRESS(#c)
waitms(500)
KEYUP(#ctrl)
KEYPRESS(#delete)
waitms(50)
KEYPRESS(#delete)
waitms(1000)
DBLCLICK(585,222)
waitms(500)
KEYDOWN(#ctrl)
KEYPRESS(#v)
waitms(500)
KEYUP(#ctrl)
waitms(500)
lclick(316,172)
wait(2)
« Last Edit: February 26, 2017, 11:46:25 AM by open_78 »