Невозможно пройти тесты, в окне с вопросами пусто |
Многоуровневые игры
Цель работы: Освоить идеи разработки многоуровневых игр и конструкторов уровней
21.1. Организация многоуровневой игры
В предыдущих работах мы занимались созданием примеров компьютерных игр, которые состояли из одного игрового уровня. Реальные же игры обычно состоят из нескольких уровней. В этой лабораторной работе мы займемся разработкой многоуровневых игр и вопросами, связанными с созданием конструктора игровых уровней.
В рамках этой лабораторной работы мы создадим игру – клон популярной игры Arkanoid. Наша игра будет обладать следующим набором характеристик.
- Имеется 2 вида блоков – один из них уничтожается при попадании в него мяча, причем, мяч отскакивает, второй – не уничтожается.
- При уничтожении всех блоков текущего уровня осуществляется переход на следующий уровень.
- После того, как мяч выйдет за пределы поля – игра окончится и произойдет загрузка первого уровня.
- Игрок может играть в стандартном режиме и в режиме пользовательского уровня. Пользовательский уровень создается игроком самостоятельно с помощью конструктора уровней.
Здесь мы создадим каркас игры и конструктор уровней для создания пользовательских уровней.
Создадим новый проект – P15_1. На рис. 21.1 вы можете видеть окно Обозреватель решений этого проекта.
Игровая функциональность и функциональность конструктора уровней реализована в классе Game1. Класс gBaseClass используется в качестве базового класса для игровых объектов. В предыдущих работах мы уже пользовались подобным классом, здесь мы расширили его функциональность для того, чтобы он позволял размещать на экране объекты, которым соответствуют спрайты различных размеров.
Классы Ball, Bat, Brick1, Brick2 – это игровые компоненты, соответственно, для мяча (Ball), биты (Bat), и двух видов блоков – обычного, который уничтожается при попадании в него мяча (Brick1), и неуничтожимого (Brick2).
Класс BrickBuilder используется для создания указателя, который применяется в конструкторе уровней.
На рис. 21.2 вы можете видеть изображения графических ресурсов, примененных в игре.
Изображения BrickBuild используются в конструкторе уровней. Указатель с изображением BrickBuild0.png очищает ячейку игрового поля, расположенную под ней. Указатель с BrickBuild1.png устанавливает в текущую позицию игрового поля объект Brick1, указатель с изображением BrickBuild2.png устанавливает в текущую ячейку объект Brick2.
Изображение Arrows используется для управления конструированием игры. Оно выполнено полупрозрачным и в режиме конструктора выводится на экран. Изображения ToCinstr и ToGame выводятся в верхней части экрана и служат для перехода из игрового режима в режим конструктора и наоборот.
На рис. 21.3 вы можете видеть игровой экран.
На рис. 21.4 представлен экран в режиме конструктора уровней.