Редактор карт - автоматический маппинг
|
|
Quad69 | Дата: Воскресенье, 03 Апреля 2016, 14:48 | Сообщение # 1 |
заслуженный участник
Сейчас нет на сайте
| Здравствуйте, я сейчас делаю редактор карт и столкнулся с не удобной проблемой. У меня есть набор тайлов стены. 1 тайл стена идёт слева на право, второй тайл сверху в низ, третий из низа в вправо(угол) и т.д. Как сделать что бы эти все тайлы сами менялись в нужных местах? Игра TDS
Может где то есть пример? В поиске ничего не нашёл.
Сообщение отредактировал maksim1221232 - Воскресенье, 03 Апреля 2016, 14:50 |
|
| |
Интернет | Дата: Воскресенье, 03 Апреля 2016, 15:55 | Сообщение # 2 |
постоянный участник
Сейчас нет на сайте
| Мммм что? Вообще самому менять. А так не понял, типо изометрия? Тут даже не понятно, что нужно проверять.
|
|
| |
Quad69 | Дата: Воскресенье, 03 Апреля 2016, 16:25 | Сообщение # 3 |
заслуженный участник
Сейчас нет на сайте
| Вид сверху
|
|
| |
gryz | Дата: Воскресенье, 03 Апреля 2016, 17:11 | Сообщение # 4 |
частый гость
Сейчас нет на сайте
| Я в гамаке не разбираюсь, но можно делать проверку ячеек, например если сверху и справа ячейки находятся элементы стены, то в этой ячейке создается угловая стена. Ну и по аналогии действуй дальше, суть думаю понял.
|
|
| |
Fill_Freeman | Дата: Понедельник, 04 Апреля 2016, 13:45 | Сообщение # 5 |
почетный гость
Сейчас нет на сайте
| Как я понял, ты делаешь именно редактор.
Я вижу тут два решения. Простое - это юзер берт нужный тайл и ставит куда надо. А дальше принцип "сам юзер - сам дурак". Т.е. если он сделал криво, то ты тут не причем.
Второй вариант посложнее, но изящнее. Если ты позволяешь быстро строить стену, т.е. провел линию - появилась стена, вторую провел - вторая. То тут логично то, что предложил gryz - пишешь скрипт, что каждый тайл стены проверяет с какой стороны у него еще есть стена, и соответственно выбирает нужный.
Еще добавлю: а зачем тебе 15 тайлов, если их можно вращать? вместо 2,3,10,11 - у тебя будет только 2 повернутый на 90, 180 и 270. Тоже самое с другими. Я, конечно, не силен в тайлах, но думаю такое можно сделать.
|
|
| |
TLT | Дата: Понедельник, 04 Апреля 2016, 14:47 | Сообщение # 6 |
Сейчас на сайте
| Объясни понятнее, нужно сделать флипинг тайлов от положения стены или что? Если так, то флип можно прописать даже на просчёт коллизий - положение стены проверяется наличием рядом других стен; либо ещё с относительностью прилегания и расположения.
Т.е. если к тайлу (или лучше использовать понятие макроблока) есть 2 касания снизу и справа, то он становится углом вида "Г", если к тайлу есть касания справа и сверху, то он становится углом вида "L", если к тайлу есть касания со всех четырех сторон, то он становится крестовиной вида "+" и т.д.
Т.е. прописываешь выбор тайла исходя из скрипта по проверке коллизий и определения относительного положения прилегающих блоков.
Дао, выраженное словами, не есть истинное Дао.
|
|
| |
Quad69 | Дата: Вторник, 05 Апреля 2016, 15:07 | Сообщение # 7 |
заслуженный участник
Сейчас нет на сайте
| Цитата Fill_Freeman ( ) их можно вращать? Тайлы вращать нельзя...
Цитата TLT ( ) Т.е. прописываешь выбор тайла исходя из скрипта по проверке коллизий и определения относительного положения прилегающих блоков. Пробовал так делать, но всё время получается по разному. То пол не ставится, то углы стен смотрят в другую сторону, то ещё что нибуть и так далее.
Вот что у меня получается - Скачать
|
|
| |
Raven84 | Дата: Вторник, 05 Апреля 2016, 16:29 | Сообщение # 8 |
старожил
Сейчас нет на сайте
| maksim1221232, Цитата Тайлы вращать нельзя... Это еще почему?! Все можно. К тому же у тебя под спойлером именно спрайты (я беру определения именно Game Maker'овские, там тайлы через бэкграунды делаются), а их тоже можно вращать.
Цитата Пробовал так делать, но всё время получается по разному. Значит "криво" код написал. Тебе привели пример алгоритма. Он по сути очень прост. Нужно просто учесть и прописать все варианты столкновений. Я лично сам точно с такой же проблемой сталкивался раз и все получилось. Или ты хочешь, чтобы за тебя готовый код выкинули?
Цитата Вот что у меня получается Качают тут редко. Ты лучше приведи кусок кода в форуме, так тебе быстрее помогут. Сам качать тоже не хочу. Выставишь код, подскажу что исправить.
Super Knight Story (в разработке) Idolzzz - игра доступна в Steam и Play Market Oliver's Adventures in the Fairyland
Сообщение отредактировал Raven84 - Вторник, 05 Апреля 2016, 16:32 |
|
| |
TLT | Дата: Вторник, 05 Апреля 2016, 22:03 | Сообщение # 9 |
Сейчас на сайте
| У тебя всё верно, просто ты не прописал основные варианты фигур – см. скрин.
Дао, выраженное словами, не есть истинное Дао.
|
|
| |