Автор: Пользователь скрыл имя, 06 Февраля 2013 в 11:19, курсовая работа
Цель данного курсового проекта – это создание сетевого игрового программного средства «Морской бой». Средством разработки является среда разработки Borland Delphi.
Тема данного проекта является актуальной, так как игра «Морской бой» достаточно хорошо известна и популярна. Практически каждый школьник в тот или иной период своей жизни играл в эту игру. В связи с появлением компьютеров и новых обучающих и развивающих программ к ней вновь возрос интерес.
Введение ………………………………………………………………………… 4
Руководство программиста…………………………………………….…5
1.1 Техническое задание……………………………………………….…5
1.2 Технические требования ………………………………………….…5
1.3 Описание подпрограмм ……………………………………………...6
Руководство пользователя……………………………………………..…7
Заключение………………………………………………………………………14
Список литературы……………………………………………………………...15
ПРИЛОЖЕНИЕ А Таблица 1 – Описание подпрограмм……………………..16
Содержание
Введение ………………………………………………………
Заключение……………………………………………………
Список литературы…………………………………
ПРИЛОЖЕНИЕ А Таблица 1 – Описание подпрограмм……………………..16
Введение
Цель данного курсового
Тема данного проекта является актуальной, так как игра «Морской бой» достаточно хорошо известна и популярна. Практически каждый школьник в тот или иной период своей жизни играл в эту игру. В связи с появлением компьютеров и новых обучающих и развивающих программ к ней вновь возрос интерес.
Игра может применяться для развлечения. Для ее использования не требуется специальных знаний в области компьютерных технологий, достаточно лишь наличие начальных умений в использовании компьютера и знания правил игры «Морской бой», благодаря чему программой могут пользоваться представители различных возрастных категорий.
Правила игры: задача игрока - уничтожить все корабли противника. Участники поединка делают ходы поочередно, причем, если один из игроков попадает по кораблю соперника, то он получает право следующего хода.
1 Руководство программиста
В соответствии с учебным планом по специальности АОИ-09 (230102) была поставлена задача, выполнить курсовой проект по дисциплине «Сетевые технологии».
Основные функции игрового программного средства «Морской бой»:
˗ наличие звуковых эффектов;
˗ графическое обеспечение;
˗ учет истории игр;
˗ сетевой интерфейс.
Игровое программное средство «Морской бой» работает в операционных системах Windows 98/2000/XP/ME/NT/7.
Минимальные требования:
˗ операционная система семейства Windows;
˗ 2 Мбайт свободного места на жестком диске;
˗ манипуляторы: компьютерная мышь, клавитура;
˗ LAN сеть. Скорость соединения от 128 Кбит/сек.
1.3 Описание подпрограмм
Для создания сетевой игры «Морской бой» была использована интегрированная среда разработки Borland Delphi.
Сетевого игровое программное средство «Морской бой» состоит из двух программных модулей: Unit1, Unit2. Unit1– основная функциональная часть программы, в котором реализуются основные функции приложения. Unit2 – учет истории игр.
Модуль Unit1содержит подпрограммы для конфигурирования формы приложения и ее элементов, организации игрового процесса, обработки нажатий клавиш и вызовов пунктов меню.
Перечень основных подпрограмм с указанием выполняемого действия приведен в таблице 1 (ПРИЛОЖЕНИЕ А).
Для запуска игрового программного средства «Морской бой» необходимо запустить приложение «МорскойБой.exe». После того как игрок запустит данное приложение на экране появиться окно, представленное на рисунке 1.
Рисунок 1 – Главное окно
После запуска главного окна, для того чтобы игра началась, игроку необходимо ввести в поле своё имя, а так же создать сервер игры, либо подключиться к уже созданному серверу игры, прописав при этом локальный IP адрес.
При нажатии на кнопку:
˗ «Начать игру» - появляется игровое окно (Рисунок 2);
˗ «Выход» - происходит закрытие приложения.
Рисунок 2 – Игровое окно
В игровом окне слева расположено игровое поле пользователя, в середине панель «Расстановка кораблей» и чат. Вверху окна расположено главное меню с вкладками: «Файл», «Настройки», «История».
После открытия главного окна в чат добавляется сообщение с информацией (IP адрес пользователя, который подключился) (Рисунок 2).
Прежде чем начать игру, пользователю нужно расставить корабли на игровом поле. Для этого необходимо выбрать положение корабля (горизонтально, вертикально) и вид корабля (1, 2, 3, 4 палубный). Корабли на поле игрока расставляются с помощью курсора мыши, они будут изображены серым цветом (Рисунок 3).
Рисунок 3 – Расстановка кораблей
Если игрок ставит корабль за пределами игрового поля, либо в пересечении с другим кораблем, то на экране появляется ошибка (Рисунок 4).
После того как игрок расставит все корабли, ему необходимо нажать на кнопку «Готов». Если его соперник так же нажал эту кнопку, то появляется сообщение о начале игры (Рисунок 6) и игровое поле соперника становится видимым. Иначе, если второй игрок не готов начать игру, происходит ожидание второго игрока (Рисунок 5).
Ход игрока делается также при помощи мыши – ей отмечается выбранная пользователем для удара клетка на правом игровом поле. Если промах – то она отмечается серым цветом, если попадание – оливковым, уничтоженные корабли отмечаются красным цветом. Клетки, прилежащие непосредственно к кораблю, выделяются (Рисунок 6).
У игроков есть возможность передавать сообщения друг другу через мемо-поле (чат), в котором также отражаются все ходы, сделанные в игре.
Рисунок 4 – Окно ошибки при расстановке кораблей
Рисунок 5 – Ожидание второго игрока
Рисунок 6 – Начало игры
Игра заканчивается, если один из игроков
«убивает» все корабли противни
При окончании игры на экране появляется главное окно и у игрока есть возможность начать новую игру.
На рисунке 9 показано главное меню, при нажатии на:
˗ «Файл» появляются следующие подпункты:
˗ «Настройки» - в данном меня игрок может воспользоваться такой функцией, как отключение звука;
˗ «История» - учет истории игр (Рисунок 10).
Рисунок 7 – Сообщение о победе
Рисунок 8 – Сообщение о проигрыше
Рисунок 9 – Главное меню
На рисунке 10 показано окно учета истории игр.
Рисунок 10 – История игр
Заключение
Основываясь на собственные знания и информацию, полученную из литературных источников, в данном курсовом проекте была проделана работа по созданию сетевого игрового программного средства «Морской бой».
В курсовом проекте рассмотрены такие разделы как «Руководство пользователя» и «Руководство программиста». Раздел «Руководство пользователя» содержит краткие сведения по управлению игровым процессом. В разделе «Руководство программиста» кратко описаны основные подпрограммы главного модуля Unit1, краткое описание программы и внешнего вида приложения.
Результатом разработки, проведенной
в данном курсовом проекте, стала система,
˗ разработанная система полностью реализует основные возложенные на нее функции;
˗ система оснащена дружеским интерфейсом;
˗ разработанная система является интегрированной;
˗ программа имеет хороший дизайн;
˗ оптимизирована для использования ее на компьютере со средней производительностью.
В целом цель, поставленная в начале проектирования, была достигнута. В программе были реализованы все основные функции.
Список литературы
ПРИЛОЖЕНИЕ А
Таблица 1 – Описание подпрограмм
Название |
Назначение |
Exit_Click |
Закрытие приложения |
FormShow |
Воспроизведение аудио файла при запуске приложения |
FormCreate |
Формирование игрового поля |
Image1Click |
Обработка клика. Воспроизведение аудио файла ставится на паузу |
NameClientChange |
При введении данных (имя игрока, IP адрес) кнопки подключения становятся активными |
NClientConnect |
Отправление имени игрока на сервер, запрос имени соперника |
SendPoint |
Отправка координат игроку |
NewGameClick |
Обнуление переменных, начало новой игры |
NClientRead |
Получение от сервера имени игрока |
Вывод на экран сообщения о том, что игра началась. Игровое поле второго игрока становится видимым. | |
Проверка на попадание в корабль. Проверка на уничтожение корабля | |
Вывод на экран сообщения о победе. Запись в файл logs.log данных о результате игры. Переход на главную панель с подключением или созданием сервера. | |
NServerAccept |
Сообщение о подключении клиента |
NServerClientDisconnect |
Сообщение об отключении клиента |
NServerClientRead |
Получение от клиента имени игрока, получение координат расположения кораблей от клиента, запись о готовности одного из игроков |
ParserIp |
Коррекция ввода IP адреса |
ReadyClick |
Ожидание второго игрока, кнопка начала игры становится неактивной |
RunGamesClick |
Проверка IP адреса, запись имени игрока, запуск сервера |
SendKeyPress |
Вывод в чате имен игроков |
ArightShips |
Коррекция расстановки кораблей |
Продолжение таблицы 1
CreatShips |
Расстановка кораблей на игровом поле |
User1Click |
Определение позиции (горизонталь, вертикаль) и вида корабля |
User1DrawCell |
Определение цвета корабля, заливка |
NClientDisconnect |
Вывод сообщения в чат при отключении от сервера одного из игроков |
Информация о работе Создание сетевого игрового программного средства "Морской бой"