Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 16.11.2011, 01:52   #1
VmanMaslov
Форумчанин
 
Аватар для VmanMaslov
 
Регистрация: 12.06.2011
Адрес: Украина, Львов
Сообщений: 115
Репутация: 10

skype: v-manmaslov
Печаль Создаю игру, проблема с массивом в С++

Доброго времени суток.
Пришла интересная идея по созданию консольной игры в С++, однако столкнулся с проблемой...
Прежде делал игры с продвижением только вперед, для чего мне нужен был трехмерный массив, и инициализировал я его подобным образом:
Код:

char map[levels][23][70] = {"XXXXX", // 69 иксов в каждой строке
                                       "X     X", // 22 столбца
                                       "XXXXX", // и снова 69 иксов в каждой строке после всех столбцов
                                       "XXXXX",
                                       "X      X",
                                       "XXXXX", // после чего повторяем такую штуку levels - раз.
                                       };

Однако теперь мне нужно, чтобы игрок двигался во все стороны карты. Как по бокам, так и вверх\вниз. Прежде для передвижения с одной карты в другую и назад просто меняв параматр level, теперь как поступить? Четырехмерный массив? Тогда как инициализировать его подобным образом? Заранее спасибо.
VmanMaslov вне форума   Ответить с цитированием
Старый 17.11.2011, 18:47   #2
VintProg
not
Профессионал
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Адрес: В сети
Сообщений: 1,398
Репутация: 144

icq: 646-858-802
По умолчанию

Цитата:
для чего мне нужен был трехмерный массив
Вот именно зачем он нужен . Когда двух мерного хватит.

Код:

char char gcMap[50][50];

к примеру. Вообще я люблю так инициализировать.

Код:

void Init() {
  for (byte b=0; b < 50; b++)
        gcMap[b][b] = 0, 0;  //тут тебе решать чем инициализировать 
};


а вот тут ты должен очистку карты сделать и также сделать что-бы не которые загруженные символы не очищались

Код:

void ClearMap() {
 ...
};

__________________
GTA моды

Последний раз редактировалось VintProg; 17.11.2011 в 20:20.
VintProg вне форума   Ответить с цитированием
Старый 17.11.2011, 23:46   #3
VmanMaslov
Форумчанин
 
Аватар для VmanMaslov
 
Регистрация: 12.06.2011
Адрес: Украина, Львов
Сообщений: 115
Репутация: 10

skype: v-manmaslov
Смех

О_О никогда подобного не видел... можешь кинуть ссыль на какую нибудь статью, где подобное пордобно описываеться?
VmanMaslov вне форума   Ответить с цитированием
Ответ

Опции темы

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создаю игру (ищу команду) Михаил К Gamedev - cоздание игр: Unity, OpenGL, DirectX 81 10.11.2015 18:27
Создаю игру AndreyX Фриланс 12 06.07.2010 17:13
Создаю 2D игру файтинг, нужен фотошопер Deamonig Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 21.09.2009 15:34
Создаю 2D игру Deamonig Gamedev - cоздание игр: Unity, OpenGL, DirectX 22 20.09.2009 17:23


17:14.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru