Что нового

Усовершенствование бота для флеш-игры.

Radik

Новичок
Сообщения
71
Репутация
1
Есть простенькая игра: 64 кружочка лежат в 8 рядов и 8 столбцов, выражаясь по "карточному", "рубашкой вверх". Кликая на кружок мышкой, разворачиваем ее, там картинка. Если находим 2-ю такую же картинку, то кружки пропадают. Надо убрать все кружки за минимальное время. Я могу дать ссылку на сайт с игрой, http://www.esseclub.ru/game, но: 1. Надо зарегаться, 2. Без введенного кода играть не дают. Мой бот - примитивен, кликает на 1-й и 2-й кружок, проверяет не исчез ли 1-й, потом кликает на 1-й и 3-й, опять проверяет, если 1-й исчез переходит ко 2-му, кликает 2-й и 3-й, и т.д. Тупой перебор. Лучшее время, что я показал - 1 мин. 20 сек. А лучший результат у соперников - 25 сек. Я, понимаю, как они это делают: пробегаешься по всем кружкам, запоминаешь группу пикселей, а потом ищешь одинаковые и открываешь их. Но то ли лыжи не едут, то ли еще что, только у меня не получается такой вариант. У одинаковых картинок, почему-то разные пиксели. Как-будто я "Данаю" с "9-м валом" сравниваю. В чем мой косяк?
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 596
Репутация
938
логин и пароль в студию
 
Автор
R

Radik

Новичок
Сообщения
71
Репутация
1
Кинул вам в личку
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 596
Репутация
938
Это не мне надо, а тем, кто вдруг решит посмотреть что это и помочь.
 

leon001

Новичок
Сообщения
22
Репутация
1
может я не прав, но логика проста:
тебе надо создать массив 8*8
регистрироваться там лениво, посему... я так понимаю, что количество картинок на фишках ограничено...
если да, то: используй PixelSearch (если на фишках есть уникальные цвета после переворачивания) или есть функции сравнивания изображений (если на фишках нет уникальных цветов)
дальше алгоритм простой:
запускаешь 2 цикла и заполняешь массив:
тыкнул на 1 фишку -- записал в массив пометку
тыкнул на вторую -- записал пометку
...
после того как массив заполнен делаешь проверку массива на одинаковые значения
нашел совпадение вызвал функцию перевернуть 2 одинаковые фишки (та в свою очередь тыкает на уже известные координаты 1 и 2 фишки)

это самый простой вариант да и достаточно шустро будет все делать)
 
Верх