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

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 13.02.2015, 18:24   #1
NIKOLAYY2
Форумчанин
 
Регистрация: 24.12.2014
Адрес: Россия
Сообщений: 220
Репутация: 108
По умолчанию Массив трубы

Есть массив 24 х 16 такого вида:

--ss----ss----ss----ss--
--ss----ss----ss----ss--
--ss----ss----ss----ss--
--ss----ss----ss----ss--
--ss----ss----------ss--
--------ss----------ss--
--------ss----------ss--
--------ss----ss----ss--
--ss----ss----ss----ss--
--ss----------ss--------
--ss----------ss--------
--ss----------ss--------
--ss----ss----ss----ss--
--ss----ss----ss----ss--
--ss----ss----ss----ss--
--ss----ss----ss----ss--

Загружаю его из файла получаю на форме вот такую картину: зеленые трубы, черный фон.
Карта получает сдвиг скроллится влево. То есть птица у меня в проэкте не летит!
Она влево- вправо находится постоянно на одной координате X а вот по координате Y птица подлетает на определенный промежуток пискелей, затем падает, пока снова не сделает "взмах крыльями".

Вот в чем вопрос, я не хочу обрабатывать много данных, иначе я бы сделал массив 480 на 16 например.
"Новая труба" должна генерироваться автоматически по мере сдвига экрана, то есть массив справа должен дописаться какими то значениями через определенный промежуток времени.

Какой алгоритм можно придумать? У меня даже пока идей нету..

Если что-то непонятно сказал можно Flappy Bird в гугле набрать.
Миниатюры
Нажмите на изображение для увеличения
Название: 2222.jpg
Просмотров: 56
Размер:	67.1 Кб
ID:	73046  
Изображения
 

Последний раз редактировалось NIKOLAYY2; 13.02.2015 в 18:29.
NIKOLAYY2 вне форума   Ответить с цитированием
Старый 13.02.2015, 18:38   #2
ДралсяСошибками
Форумчанин
 
Аватар для ДралсяСошибками
 
Регистрация: 31.05.2011
Сообщений: 302
Репутация: 171
По умолчанию

У тебя птица под спайсом)))
ДралсяСошибками вне форума   Ответить с цитированием
Старый 13.02.2015, 19:16   #3
Sibedir
Тот ещё
Профессионал
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Адрес: г. Барнаул
Сообщений: 2,260
Репутация: 931
По умолчанию

не надо массивов. делай список
Sibedir вне форума   Ответить с цитированием
Старый 13.02.2015, 19:22   #4
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 717
Репутация: 76
По умолчанию

Трубы идут парами. Соответственно нужно описать каждый зазор. Чтоб описать зазор, нужно знать только его начало, и его длину. Хватит одного байта, если разложить на полубайты. А Вы под эти данные аж 16 символов отвели.
WinCoder вне форума   Ответить с цитированием
Старый 13.02.2015, 19:22   #5
Sibedir
Тот ещё
Профессионал
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Адрес: г. Барнаул
Сообщений: 2,260
Репутация: 931
По умолчанию

и еще, хранить нужно в повернутом виде. т.е. в строке Y, а следующая строка - это следующий X.
а вообще поддерживаю WinCoder'а.

Последний раз редактировалось Sibedir; 13.02.2015 в 19:25.
Sibedir вне форума   Ответить с цитированием
Старый 13.02.2015, 19:35   #6
NIKOLAYY2
Форумчанин
 
Регистрация: 24.12.2014
Адрес: Россия
Сообщений: 220
Репутация: 108
По умолчанию

ДралсяСошибками
Птица- это просто имага там

Sibedir
Цитата:
и еще, хранить нужно в повернутом виде. т.е. в строке Y, а следующая строка - это следующий X.
То есть я понял мне нужно развернуть записи в блокноте на 90 градусов?
А зачем так же неудобно наверно будет?

WinCoder
Вы имели ввиду добавлять трубы поштучно? Как на картинке типа сделать разные массивы под трубы с перемычками в разных местах и случайным образом из подгужать нужное количество в нужное время?

Цитата:
Трубы идут парами. Соответственно нужно описать каждый зазор.
Как зазор описать? в отдельных массивах или еще как?
Миниатюры
Нажмите на изображение для увеличения
Название: 3333.jpg
Просмотров: 51
Размер:	98.3 Кб
ID:	73049  

Последний раз редактировалось NIKOLAYY2; 13.02.2015 в 19:39.
NIKOLAYY2 вне форума   Ответить с цитированием
Старый 13.02.2015, 19:46   #7
Sibedir
Тот ещё
Профессионал
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Адрес: г. Барнаул
Сообщений: 2,260
Репутация: 931
По умолчанию

Цитата:
Сообщение от NIKOLAYY2 Посмотреть сообщение
Sibedir

То есть я понял мне нужно развернуть записи в блокноте на 90 градусов?
А зачем так же неудобно наверно будет?
куда удобнее. можно в один файл весь лабиринт записать. прочитал строчку - нарисовал столбик.
Цитата:
WinCoder
Вы имели ввиду добавлять трубы поштучно? Как на картинке типа сделать разные массивы под трубы с перемычками в разных местах и случайным образом из подгужать нужное количество в нужное время?
нет. wincoder имел в виду, что то, что можно хранить в одном байте, вы храните в куче байт.
Sibedir вне форума   Ответить с цитированием
Старый 13.02.2015, 19:50   #8
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 717
Репутация: 76
По умолчанию

Цитата:
Вы имели ввиду добавлять трубы поштучно? Как на картинке типа сделать разные массивы под трубы с перемычками в разных местах и случайным образом из подгужать нужное количество в нужное время?
Я имел в виду методику описания длины каждой трубы. Каждый промежуток времени в зависимости от скорости движения птицы программа получает один байт из массива, раскладывает его на полубайты, и рассчитывает характеристики новой пары труб. Первая пара труб удаляется, остальные пары смещаются влево на одну клетку, свежая пара отрисовывается согласно расчётам. Задача выполнена?
WinCoder вне форума   Ответить с цитированием
Старый 13.02.2015, 20:08   #9
NIKOLAYY2
Форумчанин
 
Регистрация: 24.12.2014
Адрес: Россия
Сообщений: 220
Репутация: 108
По умолчанию

Не сложновато че-то непонял.. (
NIKOLAYY2 вне форума   Ответить с цитированием
Старый 13.02.2015, 20:11   #10
Sibedir
Тот ещё
Профессионал
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Адрес: г. Барнаул
Сообщений: 2,260
Репутация: 931
По умолчанию

сам же писал
Цитата:
я не хочу обрабатывать много данных,
иначе я бы сделал массив 480 на 16 наприме
Sibedir вне форума   Ответить с цитированием
Ответ

Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нарисовать движущийся автомобиль: колеса при этом должны вращаться, и должен идти дым из выхлопной трубы. killere0 Паскаль 2 18.06.2012 15:36
Нарисовать домик из трубы идёт дым!!! (Турбо Си) ADATAS Помощь студентам 0 06.06.2012 13:01
завтра зачет трубы горят madelion74 Помощь студентам 1 27.12.2011 20:45
С# задан массив 5х5. сформировать массивы А и В. в массив А поместить элементы с четными индексами, в массив В с нечетны Koksa Помощь студентам 0 10.10.2011 11:26


23:32.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru