Тетрис |
Тетрис |
Fang |
Сообщение
#1
|
Гость |
Захотелось вот попробовать написать тетрис. Думал что просто а вот теперь даже не знаю с чего начать. В сети много исходников, но хотелось бы чтобы объяснили поподробнее. Алгоритм какой нибудь что ли...
|
AlienEmperor |
Сообщение
#2
|
Бывалый Группа: Пользователи Сообщений: 160 Пол: Мужской Реальное имя: Серый Репутация: 0 |
Ну ладно, ладно... Наскочили на человека... Злые вы все! На самом деле тетрис без графики - это как раз нормально. Короче, слухай сюды: все что происходит на экране всего лишь отображение того, что происходит в памяти: самый простой вариант тетриса: текстовый режим - есть у тебя массив, который и представляет собой "стакан":
|000000| Mas[I,J] = [0,0,0,0,0] |000000| [0,0,0,0,0] |000000| [0,0,0,0,0] |000000| ----- |000000| [0,0,0,0,0] Далее, есть фигура: 0,0,1,0,0 0,0,1,0,0 0,0,1,0,0 (столько нулей - для "вращения") 0,0,1,0,0 Так вот: берешь фигуру (тоже массив) и заполняешь ей "стакан" ("ставишь наверх"), затем, с задержкой опускаешь до того момента, когда ниже 1 есть другая 1, или когда фигура достигает самого "дна стакана". Остановилась - присваиваешь в стакане единицы фигуры. Далее - новая фигура. После остановки очередной фигуры проверяешь - есть ли линия в стакане: если есть - обнуляешь ее. В принцыпе, все: как уж ты сделаешь, с графикой, без (может у тебя фигуры будут из "*" состоять это уже не важно. Сообщение отредактировано: AlienEmperor - -------------------- Все в жизни ботва... Кроме пчел!
|
SmOuk |
Сообщение
#3
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Реальное имя: Юрий Репутация: 0 |
Люди, подскажите мне как сделать демо режим в тетрисе, т.е. чтоб комп играл сам с собой.... то я уже голову поломал..
|
Gothic_Snake |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 45 Пол: Мужской Реальное имя: Алексей Репутация: 0 |
Люди, подскажите мне как сделать демо режим в тетрисе, т.е. чтоб комп играл сам с собой.... то я уже голову поломал.. Как вариант: Пишешь процедурку, которая запоминает последовательность изменений массива твоего "стакана", далее.. Запоминаешь реакцию пользователя (твою реакцию).... Вообщем сам проиграй один уровень и запомни все твои действия в файл... Quake2 так и сделан... |
SmOuk |
Сообщение
#5
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Реальное имя: Юрий Репутация: 0 |
Как вариант: Пишешь процедурку, которая запоминает последовательность изменений массива твоего "стакана", далее.. Запоминаешь реакцию пользователя (твою реакцию).... Вообщем сам проиграй один уровень и запомни все твои действия в файл... Quake2 так и сделан... Не, мне надо чтобы фигуры выпадали рандомом..... |
Текстовая версия | 20.05.2024 0:07 |