Приставки
Nintendo (Dendy)
Nintendo 64
Sega Genesis
Sega CD / 32x
Master System
Super Nintendo
Turbo Grafx 16
Sega Saturn
Sony PlayStation
GameBoy Advance
GameBoy / Color
Game Gear
Atari
Другие

Утилиты
Системные утилиты
GoodXXXX
Sega CD / 32x
Nintendo 64
Переводы, хакинг
Музыка

Мир приставочных игр

Версия 2.00a

Leonis © 2002-2009
Команда Новости Помощь Ссылки
ПОМОЩЬ
Литература про игры
Предыдущая Следующая

Последнее графическое нововведение в игре касается изменения режима паузы. Ранее в этом режиме мы писали на экране слово Пауза. Теперь вместо этого слова на экране будет появляться

Рис. 14.2. Информационные таблички

218 Добавляем в игру новые уровни

Проект NewLevels 219

Рис. 14.3. Табличка перехода с уровня на уровень

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

14.3.1. Изменения в классе Game1

Рис. 14.4. Табличка для режима паузы

Начинаем работать над новым проектом и

классом Gamel. Прежде всего добавим в область глобальных переменных этого класса несколько новых переменных.

private int totalScore; private int endScore; private bool gameState; private bool levelState; private int level; private int tempLevel; private Texture2D gameLevel; private Texture2D pausedTexture;

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

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

Следующие две переменные в этом блоке кода - level и tempLevel - представляют текущий уровень игры. Зачем нужны сразу две переменные для представления одного уровня? Дело в том, что переменная level будет изменяться по прошествии одного из уровней (увеличиваться на единицу), но для информационной таблички, появляющейся между уровнями, нам понадобится показать, какой из уровней был пройден только что, а переменная level к этому времени уже увеличится на единицу. Поэтому и применяется дополнительная переменная tempLevel.

Два последних объекта gameLevel и pausedTexture класса Texture2D представляют соответственно междууровневую табличку (рис. 14.3) и табличку режима паузы (рис. 14.4). В методе LoadGraphicsContent() мы загрузим эти два графических файла, которые по традиции располагаются в рабочем каталоге проекта в папке \Content\Textures, после явного добавления их в проект.

В конструкторе класса Game1 происходит инициализация объявленных переменных.

level = 1; tempLevel = level; gameState = false; levelState = false;

На начальном этапе игры мы задаем значение переменной level, равное единице, для того чтобы игрок мог начать играть непосредственного с первого уровня. Если в игре предусмотрена система сохранения прошедших уровней, то это как раз то место, где можно прочитать из памяти сохраненные данные и присвоить переменной level уровень, с которого пользователь должен продолжить играть.


Предыдущая Следующая

Горяченькое

Друзья

Hosted by uCoz