Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.22;
Скачать: CL | DM;

Вниз

Алгоритм созжания карты   Найти похожие ветки 

 
S.W.I.N.E.   (2004-04-26 19:14) [0]

Пытаюсь с помощью DelphiX создать маленькую аркаду-платформер. Первая проблемма: как создавать карты? То есть, какой алгоритм необходим для того, чтобы проверять, стоит ли игрок перед препятствием, может ли он его перепрыгнуть и т.д.?


 
OSokin ©   (2004-04-26 19:23) [1]

Если используешь DelphiX, то там все просто - создаешь кучу спрайтов, соответствующи этим препятствиям, игроку и т. д. и проверяешь у игрока OnCollision (не забудь поставить проверку). Если это препятствие, то запрещаешь движение.


 
S.W.I.N.E.   (2004-05-06 19:18) [2]

Не, слишком сложно. Проще координаты запоминать. Создать какой-нибудь массив координат, да только как? Тут хитропопо как-то надо.


 
Thor ©   (2004-05-06 19:25) [3]

про карты уже много раз было.
самый простой выход - создать массив, в котором прописать значения всех ячеек карты.
тогда спрайт игрока будет перемещаться по этому массиву.
а там уже смотри - игрок нажал налево - проверяем, если там есть препятствие, которое игрок не должен пройти, то не делаем ничего, иначе пропускаем игрока и т.п. :)


 
S.W.I.N.E.   (2004-05-06 20:07) [4]

Не, то, что это  массив я понял, но какой? Двумерный, трехмерный, записей... Что он из себя представляет?
2Thor: Если уже много раз было, то подкинь ссылку...


 
Thor ©   (2004-05-06 20:28) [5]

дпустим, для аркады с картой 64х64 это будет 4096 ячеек.
вот что-то типа того:
var map: array [0..64, 0..64] of Integer;
ну и соответственно при создании карты заполняешь его нужными тебе значениями.

mirgames.ru - пример про платформенную аркаду с Астериксом.


 
Mihey ©   (2004-05-06 20:45) [6]

Буквально здесь человек изложил свои мысли грамотно и понятно:
http://delphimaster.net/view/9-1083832794/


 
woolf/psycho ©   (2004-05-07 13:49) [7]

Я как-то делал стрелялку-прыгалку вид с боку. И вот к чему я пришел: создавать массив структур, описывающих каждую ячейку карты неудобно, да и не выгодно. Я создал список всех объектов карты, и просто работал с этим списком. Так, вроде, эффективнее, поскольку объект карты может занимать любой размер, а не только кратный размеру ячеек...


 
Mihey ©   (2004-05-07 20:07) [8]

2 woolf/psycho:

А я точно так же сделал в изометричексом движке. Круто, без проблем, только упорядочивать надо каждый раз - долго это, но ничего, мощности хватает.


 
хм ©   (2004-05-08 18:22) [9]

>var map: array [0..64, 0..64] of Integer;
зачем ограничевать себя интегером? лучше записи использовать



Страницы: 1 вся ветка

Текущий архив: 2004.08.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
14-1090614306
Piter
2004-07-24 00:25
2004.08.22
Magic Forum beta7 - клиент этого форума:


1-1091642248
Роман
2004-08-04 21:57
2004.08.22
А можно использовать ListView для отображения данных из БД вместо


11-1079638623
nester
2004-03-18 22:37
2004.08.22
Как пользоваться KOLTabControl.


14-1091757883
Думкин
2004-08-06 06:04
2004.08.22
С днем рождения! 6 августа


6-1087482978
P@vel
2004-06-17 18:36
2004.08.22
Socket Messages





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский