Автор работы: Пользователь скрыл имя, 10 Февраля 2015 в 12:14, курсовая работа
Разработка игры является очень интересным и захватывающим процессом. Ведь данное искусство заключает в себе и совмещает множество других видов искусств. Так как для создания игры нужно: написать сценарий со связным сюжетом (если это не казуальная аркада), придумать совершенно новый и необычный игровой процесс, подобрать или написать соответствующую музыку, нарисовать красивые графические файлы или же придумать совершенно новое графическое оформление и, в конце концов, написать связывающий все это в единое целое алгоритм и запрограммировать его на определенном языке программирования.
Введение
PASCAL
Модули Pascal, используемые в программе
Модуль Crt
Разработка Программы
Постановка задачи
Алгоритм реализации работы
Алгоритм реализации игровой программы
Процедуры и функции программы
Описание пользовательского интерфейса
Заключение
Литература
end; {Food draw}
end;Pausing;
begin
{Pause}
if pause=1 then
repeat
textcolor(7);
GotoXY(Xs div 2,Ys+3);
writeln('Game Paused');
GotoXY(1,Ys+4);
writeln(' Help: P - start/pause; Q - quit; W,A,S,D - moving;M - mute;');
c:=readkey;c:=upcase(c);
if c='Q' then pause:=0;
if c='M' then if snd=0 then snd:=1 else snd:=0;
{UnPause}
if c='P' then begin
pause:=0;
gotoXY(1,Ys+3); ClrEol;
gotoXY(1,Ys+4); ClrEol;
gotoXY(Xs div 2,Ys+3); write('Score: ',score:3);
end;
until (pause=0);
end;
Rec;{record read}
quit:=0;
snd:=1;
while quit=0 do begin
randomize;t:=0;rest:=0;
Clear;
X:=30+random(10);
Y:=5+random(10);
d:=1; f:=0; {Direction=1 and no food}
score:=0;
h:=0;
Labgen;
rs:=1; {restart screen}
pause:=1;
repeat {until restart}
repeat {until keypress}
randomize;
gotoXY(Xs div 2,Ys+3); write('Score: ',score:3);
t:=t+0.001;
if rs >= 5 then begin
Clear;
rs:=1;
Labgen;
end;
Mor;
Fset;
Scoring;
Pausing;
if h<30000 then delay(30000-h); {Speed of game}
until (keypressed) or (rest=1);
c:=readkey; c:=upcase(c);
case c of
'W': if d<>2 then d:=0;
'D': if d<>3 then d:=1;
'S': if d<>0 then d:=2;
'A': if d<>1 then d:=3;
'P': pause:=1;
'Q': quit:=1;
'M': if snd=0 then snd:=1 else snd:=0;
end;
until (rest=1) or (quit=1);
for n:=1 to nrec do
Rec;{Recordsfix}
end;{Quit from game}
end.