Помогите реализовать механику игр типа "match 3"
|
|
AntiAlianKiller | Дата: Суббота, 13 Апреля 2013, 00:57 | Сообщение # 1 |
постоянный участник
Сейчас нет на сайте
| Как реализовать механику игр типа "match3"? Нужно, чтобы при условии того, что рядом стоят 2 и более ячеек, они становились "единым целым", а не считались по отдельности.
В своем исходнике, каждой ячейке я сделал свой личный ID, а при нажатии на кнопку "enter" сортируются все ячейки, и если специальный объект над ними (стороны которого могут соприкасаться с соседними ячейками) касается других ячеек, то они принимают его-же ID. (Так, стоящие рядом ячейки будут принимать один и тот-же ID. Но по непонятным причинам этого не происходит)
Чтобы лучше понять, что мне надо, смотрите этот исходник: скачать
Предположительно, такая проблема происходит из-за того, что строка номер 11 выполняется только один раз (а не пока закончятся все доступные варианты соприкосновений). Поэтому, объект успевает "покрыть" только сам себя. Если что-то не понятно, пишите в комментариях.
Проблема решена. Спасибо xxxShade за это!
╔Искусственный интеллект - EVAbot ╠Убийственная музыка - EpicMus ╠Roguelike - Watcher of Dungeon ╠Однокнопочная стратегия - One Button Epic Battle ╠Он-лайн шутер - You Can Not win ╠Текстовый квест - TimeLess ╚Уникальный кликер - MineClick
Сообщение отредактировал AntiAlianKiller - Понедельник, 15 Апреля 2013, 19:06 |
|
| |
Nick_Rimer | Дата: Суббота, 13 Апреля 2013, 12:10 | Сообщение # 2 |
заслуженный участник
Сейчас нет на сайте
| AntiAlianKiller, я таких игр никогда не делал, хотя желание было и есть, может ещё займусь.. я когда думал о механике, то предполагал проверку поля по соответствию массиву этого поля.. для этого нужно написать спец алгоритм.. но так как я ещё этим не занимался, то подсказать ничего не могу.. а так всё это, по идее, я видел так: перемещаешь фишки - меняется соответственно и массив, идёт поиск комбинаций, в зависимости от этого происходят определённые операции в массиве и соответствующая анимация на поверхности.. вот
- Доброе утро, Агент Пи!
|
|
| |
DimOk | Дата: Суббота, 13 Апреля 2013, 15:04 | Сообщение # 3 |
ONG studio
Сейчас нет на сайте
| на scirraconstruct.ru я видел исходник "match 3"
Активно пользуюсь Godot Engine
|
|
| |
BESS55555 | Дата: Суббота, 13 Апреля 2013, 16:09 | Сообщение # 4 |
Three Dollar Bill Y'All$
Сейчас нет на сайте
| AntiAlianKiller, Цитата (DimOk) на scirraconstruct.ru я видел исходник "match 3" Исходник Match3
|
|
| |
DimOk | Дата: Суббота, 13 Апреля 2013, 20:01 | Сообщение # 5 |
ONG studio
Сейчас нет на сайте
| Цитата (BESS55555) Исходник Match3 посмеяться решил? это ПРИМЕР, не исходнк. А нужен исходник.Добавлено (13.04.2013, 20:01) --------------------------------------------- а вот исходник только там без массивов, всё с помощью спрайто, вроде.
Активно пользуюсь Godot Engine
|
|
| |
AntiAlianKiller | Дата: Суббота, 13 Апреля 2013, 21:45 | Сообщение # 6 |
постоянный участник
Сейчас нет на сайте
| Думаете я его не видел? В моей игре другая механика.
Вот тут нужная мне механика.
╔Искусственный интеллект - EVAbot ╠Убийственная музыка - EpicMus ╠Roguelike - Watcher of Dungeon ╠Однокнопочная стратегия - One Button Epic Battle ╠Он-лайн шутер - You Can Not win ╠Текстовый квест - TimeLess ╚Уникальный кликер - MineClick
|
|
| |
xxxShade | Дата: Суббота, 13 Апреля 2013, 22:49 | Сообщение # 7 |
почетный гость
Сейчас нет на сайте
| AntiAlianKiller, хм ... вроде бы ты сам нашёл ошибку. Или overlaps вместо On collision between что-то портит?!
|
|
| |
Matou | Дата: Суббота, 13 Апреля 2013, 22:54 | Сообщение # 8 |
Исходный коТ
Сейчас нет на сайте
| Про сцыру не знаю ничего, разрабатываю игру со схожей механикой на юньке. Просто рекурсивно обходишь верхний, нижний, левый и правый элементы, расставляя флажок что тут уже был, от и вся наука.
|
|
| |
xxxShade | Дата: Суббота, 13 Апреля 2013, 23:37 | Сообщение # 9 |
почетный гость
Сейчас нет на сайте
| AntiAlianKiller, кстати, а не проще так.
|
|
| |
BESS55555 | Дата: Воскресенье, 14 Апреля 2013, 00:17 | Сообщение # 10 |
Three Dollar Bill Y'All$
Сейчас нет на сайте
| Цитата (DimOk) посмеяться решил? это ПРИМЕР, не исходнк. А нужен исходник. Упс, извиняюсь, не внимательность...
|
|
| |
DimOk | Дата: Воскресенье, 14 Апреля 2013, 10:40 | Сообщение # 11 |
ONG studio
Сейчас нет на сайте
| AntiAlianKiller, я понял о чём идёт речь, просто думал для примера показать
Активно пользуюсь Godot Engine
|
|
| |
AntiAlianKiller | Дата: Понедельник, 15 Апреля 2013, 19:05 | Сообщение # 12 |
постоянный участник
Сейчас нет на сайте
| Цитата (xxxShade) AntiAlianKiller, кстати, а не проще так.
Спасибо! То, что надо!
╔Искусственный интеллект - EVAbot ╠Убийственная музыка - EpicMus ╠Roguelike - Watcher of Dungeon ╠Однокнопочная стратегия - One Button Epic Battle ╠Он-лайн шутер - You Can Not win ╠Текстовый квест - TimeLess ╚Уникальный кликер - MineClick
|
|
| |