×
Traktatov.net » Создание игр для мобильных телефонов » Читать онлайн
Страница 211 из 246 Настройки
Рис. 18.4. Изображение пришельца Jelly состоит из пяти фреймов, имитирующих движение щупалец

► изображение пришельца Timmy (рис. 18.5);

Рис. 18.5. Изображение пришельца Timmy состоит из трех фреймов, имитирующих его полет

► изображение ракеты, содержащее различные фреймы, – ракеты игрока и ракеты пришельца (рис. 18.6);

Рис. 18.6. Изображение ракеты состоит из нескольких фреймов, каждый из которых соответствует определенному типу ракеты

► анимационное изображение взрыва (рис. 18.7);

Рис. 18.7. Изображение взрыва

► маленькое изображение автомобиля (рис. 18.8).

Рис. 18.8. Маленькое изображение автомобиля используется для отображения числа оставшихся жизней

Эти изображения определены самим дизайном игры, речь о котором шла ранее, поэтому здесь не должно быть ничего удивительного. Стоит отметить, что спрайты пришельцев являются анимационными (рис. 18.3—18.5), что делает героев интереснее. Другой традиционный для игр спрайт – это анимационный спрайт взрыва (рис. 18.7).

В игре Space Out используется традиционный анимационный спрайт и для изображения ракеты (рис. 18.6). Изображение содержит несколько фреймов анимации, но каждый фрейм – это отдельный тип ракеты, а не кадр анимации. Иначе говоря, фреймы изображения ракет никогда не выводятся последовательно, как в случае с обыкновенными анимационными изображениями. Напротив, каждый фрейм изображения – это отдельный тип ракеты. Четыре типа ракеты – это ракеты игрока и трех пришельцев.

Другие важные элементы игры Space Out – это счет, который необходимо вести во время игры, а также число жизней (автомобилей). Игра завершается, когда уничтожены все четыре автомобиля. Сложность игры хранится в переменной и увеличивается по мере уничтожения пришельцев игроком. Другое важное хранилище информации – это переменная булевского типа, которая отслеживает, завершена ли игра.

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

► число оставшихся жизней (автомобилей);

► счет;

► булевская переменная, отслеживающая окончание игры.

Эта информация отражает ядро игровых данных, которые необходимо отслеживать во время игры. Помните, что игровые спрайты – очень важный компонент состояния игры. Зная это, вы можете перейти к проработке кода игры Space Out. Так же, как и игра High Seas, созданная в главе 12, игра Space Out потребует значительных сил, но труд будет вознагражден! Вы увидите!

Реализация игры

Структура игры аналогична структуре игр, разработанных ранее. В следующих разделах вы разработаете код и ресурсы игры.

Создание движущихся спрайтов

Разработку игры Space Out начнем с создания нового класса спрайтов, который будет использоваться в игре для реализации движущихся спрайтов. Этот класс MovingSprite аналогичен классу DriftSprite из главы 12 за исключением того, что в первом будут использоваться компоненты X и Y скорости, а также обрабатываться столкновения спрайта со стенкой экрана.

Любой спрайт в итоге может достичь края экрана, и в этом случае возможны несколько вариантов. Например, в игре Pong спрайт, достигающий границы экрана, отскакивает от нее. В игре Asteroids при достижении границы экрана спрайт может появиться у противоположной стороны. В некоторых играх спрайт просто замирает или уничтожается (скрывается). Все эти возможности реализует класс MovingSprite. Давайте перечислим эти возможности снова: