Создание игры "Морской бой"

Автор работы: Пользователь скрыл имя, 26 Октября 2010 в 17:19, Не определен

Описание работы

Игрушка, созданная на языке Delphi

Файлы: 26 файлов

BMBACK.bmp

— 111.40 Кб (Скачать файл)

BMBMENU.jpg

— 12.91 Кб (Скачать файл)

morb.cnt

— 74 байт (Скачать файл)

morb.GID

— 10.57 Кб (Скачать файл)

morb.HLP

— 1.15 Мб (Скачать файл)

morb.ico

— 766 байт (Скачать файл)

Project1.cfg

— 434 байт (Скачать файл)

Project1.dof

— 2.24 Кб (Скачать файл)

Project1.dpr

— 419 байт (Скачать файл)

Project1.res

— 876 байт (Скачать файл)

Project1.~dpr

— 263 байт (Скачать файл)

Unit1.dcu

— 31.99 Кб (Скачать файл)

Unit1.ddp

— 51 байт (Скачать файл)

Unit1.dfm

— 5.70 Кб (Скачать файл)

Unit1.pas

— 35.84 Кб (Скачать файл)

Unit1.~ddp

— 51 байт (Скачать файл)

Unit1.~dfm

— 5.70 Кб (Скачать файл)

Unit1.~pas

— 35.86 Кб (Скачать файл)

Unit2.dcu

— 4.08 Кб (Скачать файл)

Unit2.ddp

— 51 байт (Скачать файл)

Unit2.dfm

— 29.88 Кб (Скачать файл)

Unit2.pas

— 798 байт (Скачать файл)

Unit2.~ddp

— 51 байт (Скачать файл)

Unit2.~dfm

— 29.72 Кб (Скачать файл)

Unit2.~pas

— 658 байт (Скачать файл)

Курсовая по Delphi.doc

— 487.00 Кб (Скачать файл)

Министерство  образования и науки Российской Федерации,

Федеральное агентство по образованию.

Государственное образовательное учреждение

высшего профессионального образования.

Пермский  Государственный Технический Университет

Чайковский  филиал

Кафедра Информационных Технологий 
 
 
 
 
 
 

Курсовая  работа 

по дисциплине: Программирование и основы алгоритмизации

Тема: «создание игры «Морской бой»» 
 
 
 
 
 
 
 

                Выполнил  студент гр. БА-03 дн.

                Широков В. Е.

                Принял  преподаватель

                Пушкарёв  А.В. 
                 
                 
                 
                 
                 
                 
                 

г. Чайковский

2004 г.

 

Содержание

 

Введение

    Все, кто имеет дело с компьютером, так или иначе сталкивались  с  компьютерными играми, и подавляющее большинство может сходу назвать несколько игр, которые им особенно понравились. Те, кто уже совсем наигрался, почти наигрался или еше не наигрался, но в процессе общения с компьютером уже начал совмещать игры с чем-нибудь более полезным, возможно, хотели бы придумать какие-нибудь свои, не похожие ни на какие другие игры (1).

    Многое  захватывает в таком творчестве. И не сам процесс игры, а разработка игровой вселенной, ее проектирование и реализация. Когда можно слить воедино сценарий, графику, музыку, искусно задуманный и умело запрограммированный алгоритм — создать единый фантастический мир, живущий по законам, которые ты же для него и придумал.

    В данной курсовой работе речь пойдет о  создании несложной игровой программы  «Морской бой», которая и будет  являться объектом исследования.

    В первой главе данной курсовой работы рассматриваются аспекты программирования игр с использованием визуальных компонентов, в пункте 1.1. приводится аналитический обзор игрового программного обеспечения, классификация игр. В пункте 1.2. приводится описание компонентов, используемых при реализации практической части курсовой работы. В пункте 1.3. показываются возможности использования визуальных компонентов.

    Во  второй главе приведены этапы  разработки программы, такие как  постановка задачи, алгоритм реализации и описание пользовательского интерфейса.

    В заключении приведены выводы по курсовой работе, достоинства и недостатки визуальных методов программирования.

    Список  использованных источников содержит полный перечень технической литературы, использованной для написания данной курсовой работы.

    Приложения  содержат блок-схемы всех процедур программы, и текст самой программы.

Delphi

    Целью моей курсовой работы является программирование с помощью Delphi 5. Прежде чем начать выполнять свое задание рассмотрим эту систему программирования, в общем.

    Delphi - это греческий город, где жил дельфийский оракул. И этим именем был назван новый программный продукт с феноменальными характеристиками.

    Hадо  отметить, что к моменту выхода  продукта обстановка вокруг компании Borland складывалась не лучшим для нее образом. Поговаривали о возможной перепродаже компании, курс акций компании неудержимо катился вниз. Сейчас уже можно без всяких сомнений утверждать, что период трудностей позади. Hеверно, конечно, было бы говорить, что только Delphi явился причиной восстановления компании; кроме Delphi, у Borland появились и другие замечательные продукты, так же, как и Delphi, основывающиеся на новых, появившихся недавно у компании Borland,  технологиях. Я имею в виду новые BDE 2.0, BC++ 4.5, Paradox for Windows 5.0, dBase for Windows 5.0, BC++ 2.0 for OS/2.

    Тем не менее, именно Delphi стал тем продуктом, на примере которого стало ясно, что у Borland есть еще порох в пороховницах, и что один единственный продукт может настолько удачно сочетать несколько передовых технологий.

    Delphi - это комбинация нескольких важнейших технологий:

  • Высокопроизводительный компилятор в машинный код
  • Объектно-ориентированная модель компонент
  • Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов
  • Масштабируемые средства для построения баз данных

    Компилятор, встроенный в Delphi, обеспечивает высокую производительность, необходимую для построения приложений в архитектуре “клиент-сервер”.  Этот компилятор в настоящее время является самым быстрым в мире, его скорость компиляции составляет свыше 120 тысяч строк в минуту на компьютере 486DX33. Он предлагает легкость разработки и быстрое время проверки готового программного блока, характерного для языков четвертого поколения (4GL) и в то же время обеспечивает качество кода, характерного для компилятора 3GL.  Кроме того, Delphi обеспечивает быструю разработку без необходимости писать вставки на Си или ручного написания кода (хотя это возможно).

Компоненты  Delphi используемые в программе

    Компонент TMainMenu

 TMainMenu позволяет поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка. Иконки данного типа называют невидимым (невизуальным) компонентом, поскольку они невидимы во время выполнения программы. Создание меню включает три шага:

1) помещение  TMainMenu на форму, 

2) вызов  Дизайнера Меню через свойство Items в Инспекторе Объектов,

3) определение  пунктов меню в Дизайнере Меню.

     Этот  компонент доступен из модуля MENUS, и находится на странице Палитры компонентов Standard

      Этот компонент представляет главное меню формы и наследует все методы и свойства TMenu. Особенность его в том, что в нем реализован сложный механизм объединения меню. Это необходимо по следующим причинам:

  1. Если в приложении имеется несколько форм со своими меню, то для упрощения работы целесообразно соединить их в одно и управлять меню из главной формы.
  2. Объединение меню нужно при работе с интерфейсом MDI и его подокнами.
  3. Механизм объединения меню используется серверами OLE, запускаемыми по месту нахождения объекта OLE. Загружаясь, сервер дописывает осуществляемые им операции к меню другого приложения.

      Для того чтобы реализовать объединение  меню, у тех форм, меню которых будут присоединены к главному, необходимо установить в True свойство: (Рb) property AutoMerge: Boolean.

    При этом у главного меню оно должно оставаться равным False, иначе главное меню будет вообще невидимым. Объединение будет происходить автоматически при активизации новых форм или серверов OLE. Кроме автоматического режима, объединение меню можно выполнить при вызове метода: procedure Merge(Menu: TMainMenu).

    Компонент TLabel

TLabel служит для отображения текста на экране. Можно изменить шрифт и цвет метки, если дважды щелкнуть на свойство Font в Инспекторе Объектов. Видно, что это легко сделать и во время выполнения программы, написав всего одну строчку кода.

     Этот  компонент доступен из модуля STDCTRLS, и находится на странице Палитры компонентов Standard.

      Компонент представляет собой статический  текст. С помощью этого компонента на рабочей поверхности формы можно отобразить информацию, сделать пояснения и показать названия других компонентов. Но он имеет и другую важную функцию — если в составе текста TLabel есть символы-акселераторы, информация об их нажатии может передаваться от TLabel другому элементу управления.

      Свойства  компонента приведены в табл.1:

 

Таблица 1

Свойства  компонента TLabel 

Свойство Описание
(Pb) property Caption: TCaption; TCaption = string[255]; Содержит строку с выводимым текстом.
(Pb) property Alignment: TAlignment; Устанавливает правило выравнивания текста — по правому, левому краю или по центру клиентской области.
(Pb) property AutoSize: Boolean; В случае True происходит автоматическое приведение размеров компонента к размерам текста и высоте шрифта.
(Pb) property FocusControl: TWinControl; Определяет  оконный компонент, которому посылаются сообщения о вводе акселератора.
(Pb) property Transparent: Boolean; Прозрачность  фона компонента. Если свойство установлено  в True, то при перерисовке элемента управления не происходит закрашивание клиентской области. В противном случае — происходит закрашивание кистью bsSolid и цветом Color.
(Pb) property WordWrap: Boolean; Определяет  возможность разрыва слов в случае, если длина выводимого текста превышает  ширину компонента.

    Компонент TPanel

TPanel - управляющий, похожий на TGroupBox, используется в декоративных целях. Чтобы использовать TPanel, просто поместите его на форму и затем положите другие компоненты на него. Теперь при перемещении TPanel будут передвигаться и эти компоненты. TPanel используется также для создания панели инструментов и окна статуса.

      Этот  компонент доступен из модуля EXTCTRLS, и находится на странице Палитры компонентов Standard.

      Этот  компонент — является несущей  конструкцией для размещения других элементов управления. В отличие от простой рамки (TBevel) панель сама является оконным элементом управления и родителем для всех размещенных на ней компонентов. Часто ее используют для создания панелей инструментов, строк состояния и т. п.

      За  внешнее оформление панели отвечают свойства:

(Pb) property Bevel Inner: TPanelBevel;

(Рb) property BevelOuter: TPanelBevel;

TPanelBevel = (bvNone, bvLowered, bvRaised) ;

(Pb) property BevelWidth: TBevelWidth;

TBevelWidth = 1..Maxint;

(Pb) property BorderWidth: TBorderWidth;

TBorderWidth = 0..Maxint ;

      На  границах панели размещаются две  специальные окаймляющие рамки (bevels): Bevellnner и BevelOuter. При помощи комбинации белого и серого цветов они имитируют трехмерность — приподнятость (bvRaised) или утоп-ленность (bvLowered). Обе рамки имеют ширину BevelWidth. Наружная — BevelOuter — расположена прямо по периметру панели, вторая — Bevellnner — внутри на расстоянии BorderWidth от нее. Обе могут быть невидимыми (bvNone), приподнятыми или утопленными.

      Комбинируя  сочетания bvLowered/bvRaised, можно создать вокруг панели "ров" или "вал".

      Иллюзию трехмерности может подчеркнуть  также стиль обрамления компонента:

(Pb) property BorderStyle: TBorderStyle;

TBorderStyle = bsNone .. bsSingle;

      Значение  bsSingle означает, что панель будет окаймлена черной линией единичной толщины (по периметру, снаружи от обеих рамок).

      Выравнивание  текста заголовка панели определяется при помощи свойства:

(Pb) property Alignment: TAlignment;

    Компонент TImage

TImage - отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.

Информация о работе Создание игры "Морской бой"