![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 25.12.2013
Сообщений: 91
|
![]()
Мой знакомый программист задал мне задачку написать простой тетрис, используя двумерные массивы и функции.
С чего посоветуете начать? Возможно у кого-то есть идеи. Особенно интересует, как "заставить" фигуры падать. |
![]() |
![]() |
![]() |
#2 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]()
Что-то начали писать?
Начните с того, чем у вас будут представляться фигуры и поле, по которому они движутся. Потом напишите функции: - проверки того, что фигура уперлась в дно (или то, что лежит на дне) - смещение фигуры вниз, вправо, влево, по диагонали влево/вправо - поворота фигуры Ну и все - тетрис почти готов. |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
![]()
У каждой фигуры есть координаты. Меняем координаты - фигура движется.
Каждая фигура выдает координаты своих "кусочков" относительно своей основной координаты. Каждую координату проверяем на предмет возможности передвижения - свободна ли нижняя клетка. Ну и само игровое поле - двухмерных массив состояний, типа свободно/занято/занято_такой_то фигурой. Проверяем заполнен ли весь ряд и если да, удаляем, все осталыные елементы "проваливаются" вниз. Как-то так. |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 25.12.2013
Сообщений: 91
|
![]()
Нет, я еще не начала писать эту программу )) Мне интересно узнать разные подходы разных людей. Вроде бы представляю себе немного, как и что делать. Но как-то еще все очень сложно для меня.
|
![]() |
![]() |
![]() |
#5 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]() Код:
Я писал под линуксом, но тебе под виндой не нужен getch (подключи conio.h - там уже встроен getch). Ну и system("clear"), надо заменить на system("cls"); - это очистка консоли в windows system("sleep 1") - заменить на Sleep(1000) и "windows.h" подключить - это даст задержку на одну секунду |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
![]()
marenko.lilia, а сможете нарисовать несколько картинок? Ваши фигуры же буду состоять из букв, значков и цифр? Я, если честно, вообще не представляю, как это будет выглядеть
![]() |
![]() |
![]() |
![]() |
#7 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]()
8Observer8
из звездочек у нее будут состоять фигуры (как в моей программе) Код:
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
![]()
Меня автор темы вдохновил на написание своего тетриса! Взял за основу пример, где кубик летает по окну, ударяется и отскакивает от стенок: ссылка
Пока мой кубик просто медленно двигается вниз. Стрелками я могу его перемещать влево и вправо. Он медленно улетает вниз ![]() ![]() P.S. Просто поделился информацией. Тему загаживать не буду. |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 25.12.2013
Сообщений: 91
|
![]()
rrrFer, ты мне задал эту задачу, ты мне и помог (наконец-то)
![]() у меня правда, еще слишком мало знаний, чтобы что-то такое самостоятельно написать. Буду разбираться сейчас с твоим кодом. 8Observer8, рада Вас вдохновлять ))) Но это не моя идея - написать свой тетрис. Ее мне подкинул rrrFer |
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
![]()
Лилия, ваша программа уже что-нибудь выводит?
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
C тетрис | Цукер | Помощь студентам | 0 | 21.11.2011 22:53 |
Тетрис на си | фыф123 | Помощь студентам | 1 | 22.06.2011 10:48 |
Тетрис | Александр123456 | Общие вопросы C/C++ | 1 | 02.12.2010 23:15 |
Тетрис | k1r1ch | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 2 | 02.01.2010 12:20 |
массив и тетрис | sid | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 04.04.2007 14:41 |