Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчет без титульника.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
583.09 Кб
Скачать

СОДЕРЖАНИЕ

ВВЕДЕНИЕ………………………………………………………………………… 4

1 ПОСТАНОВКА ЗАДАЧИ……………………………………………………... ...5

2 АЛГОРИТМИЧЕСКОЕ КОНСТРУИРОВАНИЕ……………………………. …6

ОБЩАЯ СХЕМА ФУНКЦИОНИРОВАНИЯ………………………………3

АЛГОРИТМЫ РАБОТЫ…………………………………………………..7

3 ПРОГРАММНОЕ КОНСТРУИРОВАНИЕ…………………………………… .12

ОПИСАНИЕ ТИПОВ………………………………………………………13

4 КОНТРОЛЬНЫЙ ПРИМЕР……………………………………………………. 14

5 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ…………………………… 19

ПРИЛОЖЕНИЕ А. ТЕКСТЫ ОСНОВНЫХ ПРОГРАММНЫХ МОДУЛЕЙ.20

ПРИЛОЖЕНИЕ Б. ТЕХНИЧЕСКОЕ ЗАДАНИЕ………………………………...36

ВВЕДЕНИЕ

Pac-Man — культовая компьютерная игра в жанре аркада, впервые вышедшая в 1979 г. в Японии. Её выпуск повлиял на различные сферы культуры: по игре был снят сериал и выпущен музыкальный альбом Pac-Man Fever, включавший треки с названиями популярных в те годы игр. До выхода Pac-Man большинство американских игр были космическими шутерами такими как Space Invaders или Defender. Pac-Man же оказался совершенно новым стилем игры, не предполагающей насилия, потому игра позиционировалась и для мальчиков и для девочек.

Была поставлена задача разработать программный продукт, моделирующий игру Pacman. Pac-Man [пэ́кмэн] - круглое жёлтое существо, состоящее из одного рта. Задача игрока — собрать все красные точки на уровне, избегая столкновений с привидениями. Уровень заканчивается, когда «съедены» все точки.

1 Постановка задачи

В процессе создания программного продукта были поставлены следующие задачи:

1) Расположить по середине экрана игровое поле, на котором и должны происходить игровые действия;

2) Создать объекты персонажей – Пэкмэна и Привидения;

3) Создать подпрограмму, контролирующую передвижение объектов по полю;

4) Разработать алгоритм «поедания» точек, а так же алгоритм «поедания» Пэкмэна привидениями;

6) Создать систему учета количества «съеденных» точек, количества жизней и уровня игры;

7) Создать подпрограмму, объединяющую все указанные подпрограммы;

8) Отобразить меню.

2 Алгоритмическое конструирование

2.1 Общая схема функционирования Функциональное назначение программного средства Предоставление пользователю возможности электронного прохождения игры «Pacman».

Рассмотрим работу этого средства, схема которой предоставлена на рисунке 1.

Рисунок 1 – Общая схема функционирования.

Рисунок 1 – Общая схема функционирования.

2.2 Алгоритмы работы

Когда пользователь запускает программу, в графическом окне (далее просто окно) отображается главный экран, представляющий из себя основное меню игры. Кнопка «New Game» запускает первый уровень игры.

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

Процедуру загрузки Меню(рис.2) Происходит установка числа жизней игрового персонажа, затем производиться вывод на экран фонового изображения с элементами меню.

Загрузка меню

Кол-во жизней

Вывод фона

New Game(кнопка)

Если клик на кнопке

Нет

NewGameProc

Да

Рисунок 2 – Процедура загрузки меню

Процедуру запуска игры(NewGameProc)(рис.3)Устанавливается флаг в положения “true”, который позволяет запуститься игровому процессу. После этого Происходит создание объектов - карты, персонажей и т.п

Запуск игры

Флаг game=true

Присвоение начальных координат объектов

Создание объектов

Создание Полосы для вывода статистики

Чтение карты из файла

Рисунок 3 – Процедура запуска игры

П роцедуру перехода на следующий уровень(NextLevel)(рис.4) Устанавливается флаг на “false”, и после увеличения счетчика уровней и добавления числа жизней персонажа, происходит проверка на условие конца игры. Если счетчик уровней имеет значение равное 4, то происходит вывод на экран изображения(Рис.10), если нет, то запускается следующий уровень.

Рисунок 4 – Процедура перехода на следующий уровень

Процедуру уменьшения жизней(LiveOfPacman)(рис.5) Процедура запускается если Игровой персонаж пересекся с врагом. Если количество жизней персонажа равно 0, то происходит вывод изображения(рис.13)

LifeOfPacman

Уменьшает кол-во жизней на 1

Удаляет объект класса pacman

Жизней=0

Вывод на экран «GameOver»

Создает объект класса pacman на стартовых координатах

Нет

Да

Рисунок 5 – Процедура уменьшения количества жизней Pacman-а

Процедуру движения врага(EnemyMove).(рис.6)

EnemyMove

Если pacman в прямой видимости

Нет

Да

Уменьшение(увеличение) координаты на 50, с шагом 2

Совпадения координат врага и пэкмена

Нет

Да

Запуск процедуры LifeOfPacman

Рисунок 6 – Процедура движения врага

Рассмотрим процедуру движения Pacman-а (RightMove, LeftMove,UpMove,DownMove).(рис.7)

Движение Pacman-а

Если координата +50 <> координате стены

Нет

Увеличение(уменьшение)координаты на 50, с шагом 2

Рисунок 7 – Процедура движения Pacman-а