![]() |
Движок для игры "линии"
Всем привет.
Делаю сейчас игру, по типу "линий". Это когда собираешь три или больше кубика одного цвета в ряд - они исчезают. Ну, типа такой игры. И вот, собственно, у меня вопрос - как лучше всего сделать движок для этой игры? Учитывая что новые блоки могут появляться с разных сторон и соответственно - будут двигать ряды или столбцы. Все или выборочно. Я, поначалу, думал что легко сделаю эту игру, но как взялся за реализацию, понял что не всё тут просто. Я сделал так. Создаю стартовый массив: Код AS3:
Код AS3:
Подскажите, может есть более простые способы реализации подобной игры? Чтоб можно было легко отслеживать положение блока на экране и не терять его связь с данными в массиве? Ато что-то мне кажется что что-то я намудрил... Сложная какая-то конструкция получается. |
Я бы для начала использова вместо blank и startingPosition , 0 и 1, ну или тру / фэлсе.
А вообще конечно я бы использовал box2D и методом "сканирования" линий убивал не нужны. Тогда вообще не нужно было б знать что, где и куда ложить. Всё само б собиралось и рассыпалось. |
Цитата:
|
Вложений: 1
ndiezel хм...
|
Цитата:
Тогда можно про вот это поподробней: Цитата:
Это функция, которая будет находить от трёх и больше в одну линию? Или есть какая-то похожая в box2D? |
Не надо бокс2Д, это оверкил.
Посмотрите пример PiratePigs который в пакете демо проектов с OpenFL идет, там все просто сделано тут гайд по ковырянию в openFL Заметьте, я не предлагаю делать на Haxe, я предлагаю посмотреть реализацию (синтаксис языка очень похож на AS3, а openFL апи вообще почти копирует стандартный флешевсий) |
Эммммм.....
Бокс для лайнсов? Может пока не поздно курьером пойти работать и нуевонафиг это программирование? Добавлено через 3 минуты делаешь шаблоны вида: Код:
0, 0, 1Код:
1, 1, 1Код:
1Код:
1, 0, 0Это как самое очевидное и простое решение. Если мозги включить то можно и что-то поизящнее придумать. Мне сейчас этим заниматься не охота. И да. В любом случае или 0, 1 или тру/фолс. Но у тебя там скорее всего будут шарики разноцветные, так что тру фолс наверное нет, а вот номер цвета вполне может быть. Добавлено через 7 минут Еще одно простое решение - пройтись по всем ячейкам и посмотреть на +/- одну в каждую сторону от нее. если и + и - будут такими же как исходная - можно убирать. |
Простого прохода по столбцам и по строкам хватит за уши. Прикручивать что-то левое для такой задачи очень мощный изврат.
|
Я тут подумал.
Всё-таки склоняюсь к реализации через flex DataGrid + ItemRenderer. Метода лучше - для этой задачи не найти. |
Цитата:
Уже лет 7 как. |
| Часовой пояс GMT +4, время: 06:46. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.