Поле боя в пошаговой игре
|
|
dArti | Дата: Среда, 22 Января 2014, 19:27 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Я никакой литературы по игрострою не читал и потому не имею никакого представления о реализации различных игровых элементов в коде, но когда я чисто из интереса стал подумывать, к примеру о том, как можно создать поле для пошаговой игры, мне пришла в голову только такая мысль - создать двумерный массив 100х100 каждый элемент которого будет отвечать за одну клетку поля, в противоположных концах поля разместить 2 группы юнитов для сражения, при этом каждый юнит будет иметь свой уникальный идентификатор который будет вписываться вместо стандартного значения пустой клетки(к примеру 0 если массив состоит из int'ов) и соответственно если юнить будет передвигатся по полю то будут изменятся стандартные значения клетки на идентификатор юнита, а в клетку с его прошлого места перебывания будет возвращатся стандартное значение(0). Насколько будет удобным такое поле в плане удобности использования и есть ли какие-либо альтернативы созданию таких боевых полей(для примера взять тех же 3 героев)?
Сообщение отредактировал dArti - Среда, 22 Января 2014, 19:34 |
|
| |
lvovand | Дата: Среда, 22 Января 2014, 19:44 | Сообщение # 2 |
старожил
Сейчас нет на сайте
| скорее в клетке не просто 0 или число, а клетка будет собой также массив представлять, - тип поверхности - занята или свободна - если занята, то чем или кем занято
и т.д.
Разработка и продвижение сайтов. Дизайн
|
|
| |
Sanoraag | Дата: Среда, 22 Января 2014, 20:33 | Сообщение # 3 |
почетный гость
Сейчас нет на сайте
| можно сделать так: 1)создать массив 100 на 100; 2)проверять если занята ли клетка 3) а номер дать как они в памяти (пример: 1 перс. с коор. (0 1) и так в столбик)Добавлено (22.01.2014, 20:33) --------------------------------------------- это я пока не все расписал тока первые наброски
|
|
| |
OpenGOO | Дата: Среда, 22 Января 2014, 23:54 | Сообщение # 4 |
почти ветеран
Сейчас нет на сайте
| dArti, держи ссылку на сайт движка для третьих героев
Мои проекты: - Свободный и открытый клон World Of Goo - TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)
[GameMaker: Studio v1.4.9999]
|
|
| |
vicmad | Дата: Четверг, 23 Января 2014, 01:24 | Сообщение # 5 |
постоянный участник
Сейчас нет на сайте
| Мне кажеться тут многое зависит от синтаксиса языка или движка на котором пишеш. Я щас на FreeBasic пробую делать пошаговую тактику, и решил создать одномерный массив из типа клетки, мне кажеться так будет память экономится, но мож я не прав. В моем массиве 35 клеток созданых по типу или скак в др яп структурах, тоесть я создал поле 5х7, у каждой клетки есть свой порядковый номер, значения Х и У ну и остальные необходимыек мне пораметры. Рекомендую почитать статьи про волновой алгоритм, самый простой алгоритм поиска пути, мну думает что для пошаговых стратегий что надо.
|
|
| |
Sanoraag | Дата: Четверг, 23 Января 2014, 01:33 | Сообщение # 6 |
почетный гость
Сейчас нет на сайте
| я писал относительно С++
|
|
| |
dArti | Дата: Четверг, 23 Января 2014, 03:06 | Сообщение # 7 |
был не раз
Сейчас нет на сайте
| OpenGOO, спасибо конечно за ссылку, но я имел ввиду саму суть создания поля сражения подобного 3 героям Sanoraag, если я не ошибаюсь то данный момент в С++ и в Java делается приблизительно одинаково
|
|
| |
Sanoraag | Дата: Четверг, 23 Января 2014, 17:54 | Сообщение # 8 |
почетный гость
Сейчас нет на сайте
| Честно не знаю. Я учусь программированию только на C++ (основательно (pascal только для школы)) (и вопрос java сложный яп?)
|
|
| |
Eldrine | Дата: Четверг, 23 Января 2014, 18:31 | Сообщение # 9 |
заслуженный участник
Сейчас нет на сайте
| Цитата Sanoraag ( ) и вопрос java сложный яп? легче чем C++
Модели оружия для CS:S
|
|
| |
dArti | Дата: Воскресенье, 26 Января 2014, 02:18 | Сообщение # 10 |
был не раз
Сейчас нет на сайте
| Sanoraag, если переходить с С++ сначала может казаться немного непривычно, но в принципе легче
|
|
| |
Saitei | Дата: Воскресенье, 26 Января 2014, 10:09 | Сообщение # 11 |
старожил
Сейчас нет на сайте
| Цитата lvovand ( ) скорее в клетке не просто 0 или число, а клетка будет собой также массив представлять, - тип поверхности - занята или свободна - если занята, то чем или кем занято
и т.д. dArti, сделай массив структур ака struct map { ...; }; map[100][100];
|
|
| |