IPB
ЛогинПароль:

2 страниц V < 1 2  
 Ответить  Открыть новую тему 
> Игрушка змейка., Курсавая работа. Срок месяц.Спасайте :)
сообщение
Сообщение #21


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Lapp @ 21.02.2009 7:20) *

TarasBer, на мой взгляд неправильно учить новичка использовать прямое обращение к системной и аппаратной памяти. Это, кроме всего прочего, вызовет удивление преподавателя (это скорее слова к DarkMoonSIde). Очень рекомендую переделать на обращение через DOS и стандартные модули.


Ну хорошо, допустим ради системного времени можно подключить модуль DOS и использовать функцию GetTime, ради вывода на экран символа можно использовать GotoXY и WriteLn, но что делать со считыванием с экрана? Помню, в конце 9 класса, когда мой "стаж" был 2-3 месяца, тоже мучался с этим, не мог лабиринтик доделать. Или заводить отдельный массив, который бы хранил состояние поля (а я, кажется, тогда так и выкручивался)? Но это же перерасход жуткий.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #22


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Женский
Реальное имя: Дианка

Репутация: -  0  +


Поправилась. Вроде и силы появились. Я хочу задать несколько вопросов. Пожалуйсто, если сможете smile.gif
1) Как сделать игровое поле? т.е. сделать часть экрана полем для "действий змейки" и часть для отоброжения очков и количества жизней (пример кода)
2)Как сделать рандомное появление квадратиков на этом поле, и увеличение змейки на один квадратик, если она "кушает" этот квадратик.
3)Как сделать ,что бы если длина змейки была 14 квадратиков, то начинался новый уровень (скорость змейки увеличивалась)
4) Как сделать несколько уровней и что-бы можно было ставить припятствия, и если змейка в него врезалась=смерть smile.gif)
5)Как прописать сами движения змейки, на экране.
Пожалуйсто приведите примеры...потому что сухой код я не могу еще воспринимать, и без комментариев к коду я мало что понимаю sad.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #23


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Ну игровое поле так и делаешь. Просто принудительно пишешь, что если HeadY < 2 то типа всё - врезались.
Чтоб змейка росла - на самом дела надо просто, чтобы он именно в момент поедания яблока НЕ сдвигала хвост.
Препятствия - ну просто на экране рисуешь плюсики, и в то место, где проверяется самопересечение (а там проеряется, что на месте головы стоит определённый символ), добавляешь ещё и символ стенки.
Чтобы уровень начинался - ну считай длину, потом когда достигла определённой длины, увеличиваешь сложность и всё заново начинаешь.
Коментарии - гм, в 100-строчном коде, неслабо наполненном водой?

Кстати, я тут подумал - а ведь будет зрелищнее, если задать режим не 80х50, а 40х25.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #24


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Женский
Реальное имя: Дианка

Репутация: -  0  +


TarasBer а можеш написать примерную реализацию кодов к моим пунктам ? все равно не могу понять как написать.. sad.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #25


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(DarkMoonSide @ 21.02.2009 22:45) *

TarasBer а можеш написать примерную реализацию кодов к моим пунктам ? все равно не могу понять как написать.. sad.gif

Ты бы все-таки хоть что-то свое тут привела.. Хотя бы неудачные попытки. А то игра в одни ворота быстро надоедает smile.gif


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #26


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Lapp @ 22.02.2009 17:06) *

Ты бы все-таки хоть что-то свое тут привела.. Хотя бы неудачные попытки. А то игра в одни ворота быстро надоедает smile.gif


Кстати да, я всё жду хоть одного вопроса типа "мне непонятен в коде такой-то оператор, что он делает". А тут видимо совсем анализ кода даже не предпринимался.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #27


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Женский
Реальное имя: Дианка

Репутация: -  0  +


Было, и сама пыталась сделать что то, хотя бы что бы двигалось подобие на червячек.
Буду сегодня вечером дома- напишу что не понятно из кода Lapp'a
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #28


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(DarkMoonSide @ 23.02.2009 15:17) *
Буду сегодня вечером дома- напишу что не понятно из кода Lapp'a
Польщен smile.gif
Давай поактивнее. Месяц - это, более, чем достаточно. Но только если делать)).


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #29


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Мне всё-таки непонятно, что в моём коде непонятно.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #30


Знаток
****

Группа: Пользователи
Сообщений: 346
Пол: Мужской
Реальное имя: Иван

Репутация: -  7  +


эм... задам вопрос: для замедления змейки использовать gettime и подключать лишний модуль, или всётаки использовать delay? ато ответа утвердительного так и не увидел unsure.gif


--------------------
Считающий себя единственым здравомыслящим человеком сумасшедший? Если да, возможно я псих...
Пусть умолкнет всякий критик!
Я - системный аналитик!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #31


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(RathaR @ 6.07.2009 18:54) *
для замедления змейки использовать gettime и подключать лишний модуль, или всётаки использовать delay?
Если программа предназначается хоть сколько-то для запуска на других машинах, то использовать delay крайне не рекомендуется. GetTime вполне приемлемый способ. В подключении модуля DOS особых проблем не вижу, но в принципе есть и другие методы.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

2 страниц V < 1 2
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 18.04.2024 13:34
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name