Автор работы: Пользователь скрыл имя, 28 Января 2011 в 12:02, курсовая работа
Задачей курсового проектирования ставится разработка игровой программы «Нарды», которая является виртуальным аналогом настольной игры. Перенос реальной игры на виртуальную основу имеет ряд преимуществ:
– позволяет немедленно приступить к игре без каких либо действий по ее подготовке;
– исключает возможность жульничества во время игры;
– исключает возможность случайных нарушений правил игры в связи с их незнанием;
– позволяет сохранять текущие результаты игры и продолжать партию в другое время.
Введение 2
1 Общая часть 4
1.1 Постановка задачи 4
1.2 Технико-математическое описание 6
1.3 Программное обеспечение 9
1.4 Состав и параметры технических и программных средств 12
2 Специальная часть 14
2.1 Описание алгоритмов 14
2.2 Описание работы программы 16
2.3 Инструкция по выполнению программы 18
2.4 Тестирование и отладка 22
2.5 Контрольный пример 24
Заключение 28
Список литературы 30
Приложение А. Текст программы 31
0: pic:=picpusto.Picture;
…
6: pic:=image8.picture;
end;
case i of
1: v1.picture:=pic;
…
4: v4.picture:=pic;
end;
end;
end;
end.
Модуль
LOAD содержит форму загрузки сохраненной
игры
uses main,
draw;
{$R *.dfm}
procedure TForm3.SpeedButton2Click(
begin
form3.Close;
end;
procedure TForm3.SpeedButton1Click(
var i,j:integer;
begin
if listbox1.Items.Count=0 then begin
form3.Close;
exit;
end;
form1.memo_save.Clear;
form1.memo_save.Lines.
with form1 do begin
i:=0;
status:=strtoint(memo_save.
i:=1;
player:=strtoint(memo_save.
i:=2;
for j:=1 to 4 do begin
main.bones[j]:=strtoint(memo_
i:=i+1;
end;
for j:=1 to 26 do begin
mas[j,1]:=strtoint(memo_save.
i:=i+1;
end;
for j:=1 to 26 do begin
mas[j,2]:=strtoint(memo_save.
i:=i+1;
end;
golova:=strtoint(memo_save.
i:=i+1;
z1:=strtoint(memo_save.Lines[
i:=i+1;
z2:=strtoint(memo_save.Lines[
case z1 of
1: leftbone.Picture:=b1.Picture;
…
6: leftbone.Picture:=b6.Picture;
end;
case z2 of
1: rightbone.Picture:=b1.Picture;
…
6: rightbone.Picture:=b6.Picture;
end;
draw.visible(sender);
draw.redraw(sender);
varbones(sender);
end;
form3.Close;
end;
procedure TForm3.FormActivate(Sender: TObject);
var
s:string;
SearchRec: TSearchRec;// структура SearchRec содержит информацию
// о файле, удовлетворяющем условию поиска
begin
ListBox1.Clear;
// сформировать список sav файлов
if FindFirst(Path+'\saves\' + '*.sav', faAnyFile, SearchRec) =0 then
begin
// в каталоге есть файл с расширением sav
// добавим имя этого файла в список
s:=searchrec.Name;
Delete(s, length(S)-3,4);
ListBox1.Items.Add(s);
// есть еще sav-файлы ?
while (FindNext(SearchRec) = 0) do begin
s:=searchrec.Name;
Delete(s, length(S)-3,4);
ListBox1.Items.Add(s);
end;
end;
ListBox1.ItemIndex := 0;
if listbox1.Items.Count=0 then begin
messagedlg('Нет сохраненной
form3.Close;
end;
form1.bones_click.Enabled:=
end;
end.
Модуль
SAVE содержит форму сохранения игры
uses main;
{$R *.dfm}
procedure TForm2.SpeedButton1Click(
begin
form1.memo_save.Lines.
form2.Close;
end;
procedure TForm2.SpeedButton2Click(
begin
form2.Close;
end;
procedure TForm2.FormShow(Sender: TObject);
var i:integer;
begin
with form1 do begin
memo_save.Clear;
memo_save.Lines.Add(inttostr(
memo_save.Lines.Add(inttostr(
for
i:=1 to 4 do memo_save.Lines.Add(inttostr(
for
i:=1 to 26 do memo_save.Lines.Add(inttostr(
for
i:=1 to 26 do memo_save.Lines.Add(inttostr(
memo_save.Lines.Add(inttostr(
memo_save.Lines.Add(inttostr(
memo_save.Lines.Add(inttostr(
end;
end;
end.
Модуль
EXIT содежит форму подтверждения выхода
из программы
uses main,
start;
{$R *.dfm}
procedure TForm4.SpeedButton1Click(
begin
form7.Close;
end;
procedure TForm4.SpeedButton2Click(
begin
form4.Close;
end;
end.