Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: Zimon on September 02, 2017, 10:25:56 PM

Title: Ребята помогите скрипт составить.
Post by: Zimon on September 02, 2017, 10:25:56 PM
Помогите написать, так замудренно у меня не получается.


Суть такова, есть 5 кнопок старт в разных координатах, напротив одной из них появляются звезды.

код должен работать так...

Первый этап:
Если одна из звед появилась напротив кнопки s1.bmp, то нажимать на s1.bmp и перейти ко второму этапу.
Если одна из звед появилась напротив кнопки s2.bmp, то нажимать на s2.bmp и перейти ко второму этапу.
Если одна из звед появилась напротив кнопки s3.bmp, то нажимать на s3.bmp и перейти ко второму этапу.
Если одна из звед появилась напротив кнопки s4.bmp, то нажимать на s4.bmp и перейти ко второму этапу.
Если одна из звед появилась напротив кнопки s5.bmp, то нажимать на s5.bmp и перейти ко второму этапу.

(http://s018.radikal.ru/i503/1709/9f/bb3083e1aabct.jpg) (http://radikal.ru/big/jh03g1oghu0jn)

Второй этап:
Есть кнопки LEFT.bmp и RIGHT.bmp, вот под которой одна из звезд появилась, на ту и нажимать, а после на кнопку krug.bmp

(http://s019.radikal.ru/i621/1709/0e/846381af3b2ft.jpg) (http://radikal.ru/big/w0run7g2hi8m5)
Title: Re: Ребята помогите скрипт составить.
Post by: Vint on September 02, 2017, 11:00:45 PM
Появляется только одна звезда?
На одном расстоянии от кнопки или свой цвет на разном как нарисовано?
Какой фон на месте где звёзды?
Кнопки старт в разных местах?
Title: Re: Ребята помогите скрипт составить.
Post by: Zimon on September 02, 2017, 11:20:58 PM
Появляется одна звезда из 5-ти.
На одном растоянии от кнопки, один из 5-ти цветов.
Фон всегда белый.
Да кнопки старт в разных местах, приблизительно как на изображении.
Title: Re: Ребята помогите скрипт составить.
Post by: Vint on September 03, 2017, 12:34:41 AM
ищешь все картинки 'старт' через scanpicture.
Получаешь массив координат найденных. Пробегаешь по массиву, где для каждой кнопки проверяешь область справа. Или контрольную сумму или количество белых пикселов. Как только сумма не совпала или пикселов меньше нужного значения, то там что-то есть, кликаем по этой кнопке и прерываем перебор.
В коде это с телефона не дам. Или в понедельник или жди других.
Title: Re: Ребята помогите скрипт составить.
Post by: Zimon on September 03, 2017, 12:40:43 AM
Подожду... :)
Title: Re: Ребята помогите скрипт составить.
Post by: Zimon on September 05, 2017, 12:23:48 AM
up!
Title: Re: Ребята помогите скрипт составить.
Post by: Zimon on September 19, 2017, 02:52:10 AM
Помогите доработать.
У меня ищет одну звезду(b1) в строке, и кликает на START в той же строке.
А нужно что бы искал одну из пяти звезд в строке, и если нашел, то  кликал на START, после выход из цыкла.
Если не нашел, то обновить, и опять искать звезду.
Все это в один цыкл.

Code: [Select]
$zvezdy=0
WHILE($zvezdy=0)
   GETSCREEN
   IF_PICTURE_IN (239,273, 1079,306, "b1.bmp", -1, 95)   // - тут что бы искал одну из b1, b2, b3, b4, b5
      $zvezdy=1
   ELSE
      GETSCREEN    // кнопка "Обновить"
      IF_PICTURE_IN (1803,151, 1915,201, "Obnovit.bmp", -1, 95)
         LCLICK($_return1, $_return2)
         WAITMS(RND(5000,8000))
      END_IF
   END_IF
END_CYC

WAITMS(RND(900,1000))

GETSCREEN
IF_PICTURE_IN (16,286, 35,304, "START.bmp", -1, 95)
   LCLICK($_return1, $_return2)
   WAITMS(RND(500,1500))
END_IF
Title: Re: Ребята помогите скрипт составить.
Post by: Vint on September 19, 2017, 09:35:44 AM
Code: (clickermann) [Select]
GETSCREEN
FOR($i=1, $i < 6)
    IF_PICTURE_IN(239,273, 1079,306, STRCONCAT("b", $i, ".bmp"), -1, 95)
        WAITMS(RND(900, 1000))
        IF_PICTURE_IN(16,286, 35,304, "START.bmp", -1, 95)
            LCLICK($_return1, $_return2)
            WAITMS(RND(500, 1500))
        END_IF
        $i = 100
    ELSE
        WAITMS(20)
    END_IF
END_CYC

IF($i < 100)
    IF_PICTURE_IN(1803,151, 1915,201, "Obnovit.bmp", -1, 95)
        LCLICK($_return1, $_return2)
        WAITMS(RND(5000,8000))
    END_IF
END_IF

Если там ещё код идёт и тебе нужно обновлять до потери пульса пока не появится, то можно так
Code: (clickermann) [Select]
$zvezdy = 0
WHILE($zvezdy = 0)
    GETSCREEN
    FOR($i=1, $i < 6)
        IF_PICTURE_IN(239,273, 1079,306, STRCONCAT("b", $i, ".bmp"), -1, 95)
            $i = 100
            $zvezdy = 1
        ELSE
            WAITMS(20)
        END_IF
    END_CYC
   
    IF($i < 100)
        IF_PICTURE_IN(1803,151, 1915,201, "Obnovit.bmp", -1, 95)
            LCLICK($_return1, $_return2)
            WAITMS(RND(5000,8000))
        END_IF
    END_IF
END_CYC

WAITMS(RND(900, 1000))

GETSCREEN
IF_PICTURE_IN(16,286, 35,304, "START.bmp", -1, 95)
    LCLICK($_return1, $_return2)
    WAITMS(RND(500, 1500))
END_IF

Но поиск и клик по START можно оставить прямо внутри условия, как в первом варианте. Тогда всё будет в одном месте.