Помощь - Поиск - Пользователи - Календарь
Полная версия: Первая игра
Форум «Всё о Паскале» > Pascal, Object Pascal > Написание игр
klem4
Все на этой планете уже написали змейку кроме меня smile.gif

Это вообще моя первая игра и насколько она плохая получилась ? Ну на 3- я бы ее оценил smile.gif)

Исходник лучьше не смотрите - находка для оптимизатора, торопился хотелось побыстрее закончить smile.gif еще бы надо регулировку скорости добавить, но вот что-то уже сил нет.

Счастливые обладатели FPC могут это сделать, подправив dalay в процедуре Play smile.gif

Так как это моя первая игра, строго не судить и сильно не глумиться smile.gif)
Бравый генерал
Ну сам "движок" готов smile.gif Можно приукрасить игру, сделав части змейки спрайтами (чтобы было видно что это змея), и нарисовать всяких там яблок-груш, и камней, об которые змея зубы ломает, и поле побольше!
GoodWind
бесит:
1) моргание
2) исчезание "яблок" перед самым носом
3) такое большое окно и такое маленькое игровое поле
4) high-score записывается по выходу из игры
klem4
Учту, сделаю по интересне наверное дальше ... со спрайтими и яблоками, единственное - моргание, когда змейка уже "выросла" - очень заметно, я и так перерисовыаю только змейку, на стирая весь экран, setactivepage тут поможет ?
Бродяжник
Змейку тоже не нужно перерисовывать (имхо). Все, что нужно, это а) всегда рисовать голову и б) затирать хвост, если змейка не растет.
При этом тело змейки организовываем, как стек - голова все время находится в конце массива, а хвост в начале. Если змейка растет, то просто добавляем в конец стека новые координаты головы. Если не растет - сдвигаем все элементы стека на 1 к началу, теряя текущий хвост, и добавляем в конец стека новые координаты головы.
И чего так мрачно-то? Готика?
Бравый генерал
Ну насчет
Цитата
исчезание "яблок" перед самым носом

по-моему в том и фишка, что игрок так должен действовать точнее, чтобы успеть схватить яблоко! klem4, сделай еще так, что если игрок не успевает взять яблоко, то это запоминается и в конце игры помимо набранных очков в таблице будет фигурировать процент собранных яблок, от общего кол-ва появившихся (типа точность).
А вот
Цитата
моргание

это да, бесит! Все таки 32-битный компилер! Сделай через видеостраницы. Не знаю как на FPC, а на ТурбоПаскале главный цикл через видеостраницы я организовываю так:

Var
v: Byte;

...

v:=0;
SetVisualPage(0);
REPEAT
Inc(v);
if v > 5
then v:=0;
SetActivePage(v);

ClearDevice;
{рисуем все что надо}
SetVisualPage(v)
UNTIL KeyPressed;


Получается что мы сначала отрисовываем все на невидимой странице, а потом делаем ее видимой, и не надо ничего перерисовывать.
klem4
Спасибо всем за мнения и подсказки, постараюсь все реализовать, только вот когда ... сессия приближается sad.gif-+
Гелла
я как совсем начинающий и неопытный программист могу сказать:Так классно!!
Анна
Если не секрет - сколько времени у тебя ушло на написание этой игры?
Начинал писать с нуля? или использовал какие-нибудь исходники?
Altair
Мне очень понравилось!
И еще фирменный стиль клемыча - такое же поле он использовал в жизни smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.