Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование в широком смысле слова > Алгоритмика

Алгоритмика Об алгоритмах вообще; методы, обсуждения способов решения

Ответ
 
Опции темы
Старый 13.09.2010, 03:29   #1
JeanWinters
Знающий
 
Регистрация: 22.12.2007
Сообщений: 223
Написано 22 полезных сообщений
(для 51 пользователей)
алгоритм игры "Match3"

Делаю игру "match3". Возникли некоторые вопросы реализации, т.е. "как лучше?".
У меня есть три типа:
TMap , TTile , TItem .
Карта состоит из массива тайлов tile:TTile[8,8] , а элементы TItems обрабатываются вне этого массива и карты, т.е. не привязаны, находятся в списке TItemList и через него проверяются. Некоторые говорят, что это слишком усложнено, и можно было бы сделать просто через массивы, а как же тогда быть с элементами (объектами), ведь получается, что будет не просто управлять их движением?

Интересно узнать мнение тех, кто подобное реализовывал или знает как это сделать.
(Offline)
 
Ответить с цитированием
Старый 13.09.2010, 06:46   #2
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: алгоритм игры "Match3"

Для элементов (TItem) можно сделать аналогичный тайловому массив TItems[8,8].
Для них же можно сделать отдельно координаты рисования, которые будешь менять при анимации перемещения. А реальными "координатами" будут индексы в массиве, по ним проверку соседей делать.
Можно ещё сразу сделать "конечные координаты", которые будут представлять собой индексы в массиве для ячейки, которую займёт элемент после прекращения движения.
И после завершения можно текущие приравнять конечным.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
JeanWinters (25.09.2010)
Старый 13.09.2010, 16:42   #3
JeanWinters
Знающий
 
Регистрация: 22.12.2007
Сообщений: 223
Написано 22 полезных сообщений
(для 51 пользователей)
Ответ: алгоритм игры "Match3"

если честно, то ничего не понял
(Offline)
 
Ответить с цитированием
Старый 14.09.2010, 12:25   #4
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: алгоритм игры "Match3"

Сообщение от DTamaturg Посмотреть сообщение
Некоторые говорят, что это слишком усложнено
1. Оно вообще работает?
2. Зачем тебе проще?
(Offline)
 
Ответить с цитированием
Старый 15.09.2010, 04:20   #5
JeanWinters
Знающий
 
Регистрация: 22.12.2007
Сообщений: 223
Написано 22 полезных сообщений
(для 51 пользователей)
Ответ: алгоритм игры "Match3"

Да, работает, но приходится постоянно пробегать по всему списку объектов, если требуется найти нужный объект по индексам (они также содержатся в описании его типа). Я сейчас имею в виду даже не "match3" , а "lines" , хотя эти игры в чем-то похожи. Мне интересно, как можно сделать по-другому, чтобы постоянно не искать в списке нужный объект. Можно взять, к примеру жанр RTS, допустим, ведь там если в игре участвуют более сотни или тысячи юнитов, программа ведь не ищет каждого в списке..
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 03:28.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com