Последние недели — практически большую часть времени с предыдущего поста про мой алхимический кликер — я пилил игру в жанре match3 по туториалу Феронато — Complete Bejeweled prototype made with jQuery. Кстати, Феронато — абсолютно бомбовый (в значении классный) чувак, который пишет тонны простых статей и туториалов для нубов.
Статья про то, как сделать на JQuery. Я делал на Phaser (и то, и то JavaScript — примечания для потомков). Отсюда первые затруднения — перенос кода. Но это не главное, а главное то, что у меня другие алгоритмы. Эмануэль (не знаю, как точно его зовут) сделал клон Bejeweled, в котором есть комбинации только по вертикальным и горизонтальным линиям. Я хотел сделать групповые.
Комбо группами сложнее, потому что в линейных ты просто перебираешь соседей во вертикали и горизонтали, а в групповых — надо рекурсивно перебирать соседей фишки, отбирая друзей одного цвета. Немного позже напишу, как реализовал.
Сделал прототип на квадратах в виде компонента и выложил его как рабочее демо сюда. Выглядит вот так:
Сейчас навожу полиш, дизайн другой. Прицепил фишки на тему Нового года — купил их на бирже ассетов GraphicRiver. Нашел музыку и эффекты на OpenGameArt.org, вставил.
Сейчас полирую баги и делаю минимальную обвязку — таблицу рекордов, настройки.
А почему тебе просто при обнаружении 3 совпаений, просто не проверять всех соседей этого совпадения (рекурсивно)
p.s. Посмотрел демо, у тебя правило 3 срабатывает даже если три кубика в видде г буквы, так и задумывалось?
Да
я выложу кусок кода попозже, тогда можно будет точнее обсудить
у меня примерно рекурсия и сделана, только через цикл
Zaxx это конечно пробный проект, но если тебе интерестно то там вроде странно себя ведет подсказка. Иногда когда я на нее нажимаю она подсказывает и делает ход, а иногда просто показывает и возвращает кубики назад. А так понравилось, даже поиграл и чем отличается этот тип игры, было сложно остановится =) Думал, вот еще пару кубиков и точно все…
Да, там баг — из-за того, что подсказка по сути это обычное выделение
буду чинить