Как выбрать нужную картинку из трех одинаковых?



  • Суть задачи в следующем - Есть три одинаковых кнопки в браузерной игре. Когда выделяешь одну кнопку, как графический элемент и выбираешь "Кликнуть по элементу", БАС будет всегда находить и кликать по первой из найденых трех одинаковых кнопок. Как сделать, чтобы БАС кликал по второй или по третей?



  • @NikKey said in Как выбрать нужную картинку из трех одинаковых?:

    Суть задачи в следующем - Есть три одинаковых кнопки в браузерной игре. Когда выделяешь одну кнопку, как графический элемент и выбираешь "Кликнуть по элементу", БАС будет всегда находить и кликать по первой из найденых трех одинаковых кнопок. Как сделать, чтобы БАС кликал по второй или по третей?

    Удаляйте первые два



  • @NikKey
    Получить координаты не нужных грф. элементов и удалить выполнить яваскрипт на элементе self.remove();



  • @Fox а как это сделать?



  • @denanotherday в программе вроде нельзя выполнить код на графическом элементе, нет такого пункта меню. Код можно выполнить на любом хтмл-элементе страницы, а у меня три кнопки внутри флэш-игры. Сама игра находится в контейнере >CSS> canvas Я могу удалить только весь этот элемент, т.е. окошко с игрой на веб-странице.



  • @NikKey said in Как выбрать нужную картинку из трех одинаковых?:

    @denanotherday в программе вроде нельзя выполнить код на графическом элементе, нет такого пункта меню. Код можно выполнить на любом хтмл-элементе страницы, а у меня три кнопки внутри флэш-игры. Сама игра находится в контейнере >CSS> canvas Я могу удалить только весь этот элемент, т.е. окошко с игрой на веб-странице.

    Посмотрите код страницы, кроме самого тега canvas наверняка найдутся html элементы внутри него.

    А так конечно можно придумать костыль на чистой графике. Делаем скриншот всей страницы, находим в этом скриншоте координаты необходимой картинки, создаём html элемент, чёрный квадрат по размерам необходимой картинки и с её координатами. В итоге закрываем первый элемент цензурой :D

    support233.gif

    Тестовый скрипт

    Так же в теории, что бы сосчитать, сколько этих элементов на скриншоте, можно в цикле искать изображение в скриншоте и закрашивать их квадратом, разумеется увеличивая переменную-счётчик в цикле.
    Поиск изображения идёт слева-направо (но это не точно)



  • @Fox said in Как выбрать нужную картинку из трех одинаковых?:

    Посмотрите код страницы, кроме самого тега canvas наверняка найдутся html элементы внутри него.

    В том то и дело, что нет. Есть только контейнер canvas, в котором флэш игра и все, никаких элементов больше нет.



  • @Fox said in Как выбрать нужную картинку из трех одинаковых?:

    Поиск изображения идёт слева-направо (но это не точно)

    Это точно! :) Потому что нажимается всегда самая левая кнопка из трех.
    Ладно буду думать, наверно, тогда, как через скриншот это реализовать.



  • @NikKey Через Match Селектор сколь он видит ?
    Если видит больше одного то и отсеять можно на нужные :)
    Бывает и в Коде вроде нету Различий но копнёшь глубжи и они всё же есть :)
    И опять же у кнопки должно быть описание и по ним тож можно найти.



  • @super84 Да откуда внутри канвас может быть html разметка.
    Тут только кликать по координатам, если кнопки статичные то проблем нет, а вот в противном случае придется напрячься немного )



  • @UserTrue Так вот не видя Где эти кнопки и тп. Только домыслы и получаются :)
    Я так понял он Игрушку Фармить некую собрался и палить мол не хочет :)))



  • @super84 Да какая разница, какая игрушка? :) Да я делаю автоматический сбор всех ништяков в ней и все рутинные операции, чтобы время не тратить на них. Но там нет дальше канваса никаких селекторов , ни Матч, ни Цсс, никаких. Просто окно канвас, а там дальше флеш игра, воспринимаемая браузером (программой) как картинка.

    Тыкать просто по конкретным координатам - хорошая идея! Там положение вроде всегда одно и то же у них.
    Просто я думал, что в программе есть некое стандартное решение такого вопроса, когда из двух или более совершенно одинаковых найденных объектов (картинок) можно просто выбрать нужный... а оказывается, что нет и приходится что-то придумывать самому.



  • @NikKey Поиск по изображению попробуйте применить.



  • @NikKey Не может быть что бы 2 элемента были абсолютно идентичны и у них не было никаких идентификаторов. Иначе как сервер поймет что вы сделали? или тогда вся работа происходит на стороне клиента. Что весьма себе чреватодля сервера, а для вас зачем вам тогда вообще весь этот флеш и прочее? Но возможно по координатам и это идентификаторы. Или вы не все просмотрели.



  • @f0cus Еще раз повторюсь, откуда взяться разметке в canvas или flash ? Скрипты отрисовывают элементы и разумеется они знают у какого элемента какое положение и потом просто отслеживают координаты кликов и тп



  • @UserTrue И? Значит идентификаторы это координаты. Правильно? Тогда зачем вы этот ликбез мне впариваете? Я такие вещи на пост гетах обхожу)) Потому что я ведь аккуратно написал про работу на стороне клиента.



  • Напишите свой модуль на основе действий модуля "Обработка изображений", алгоритм работы я выше описал:

    @Fox said in Как выбрать нужную картинку из трех одинаковых?:

    в цикле искать изображение в скриншоте и закрашивать их квадратом, разумеется увеличивая переменную-счётчик в цикле.

    Собирайте все результаты в массив (координаты каждого элемента и его размер)



  • @f0cus said in Как выбрать нужную картинку из трех одинаковых?:

    @UserTrue И? Значит идентификаторы это координаты. Правильно? Тогда зачем вы этот ликбез мне впариваете? Я такие вещи на пост гетах обхожу)) Потому что я ведь аккуратно написал про работу на стороне клиента.

    У вас голова вспухнет реверсить игру
    Много тут идентификатор видите?
    https://jsfiddle.net/userTrue/534nofmr/

    А в реальной игре будет далеко не такой простой код



  • @UserTrue Нет, не ну первую да. А так 99% из них одинаковые скрипты скопом скидывают арбузу ну обсфуцируют конечно Те кто поумнее. А основная масса не заморачивается и максимум это переименовывают элементы под свои хотелки. Или скрипты делят на части.
    раз вы дополнили то 64
    реальные игры с флешкодом если я правильно понимаю данную задачу это разные бонусные свистоперделки и прочие сатошисниматели в буксах/кранах и прочих халявах. Ну еще разные промокоды. И вот они как раз будут такими как я и описал. Бо я их больше десятка разбирал просто для интереса. И это были совсем не домашние буксы были. А табачки например ну и так всякое.
    upd Единственное что у крупных компаний какая никакая защита есть и резулт они клиенту не дают. Его вот надо запрашивать. Эта инфа на сервере. А у мелких я даже всю игру фактически встречал с резултом.



  • Для таких случаев было бы круто добавить настройку "по номеру" в поиске изображения.


Log in to reply