Майкл Моррисон - Создание игр для мобильных телефонов

Здесь есть возможность читать онлайн «Майкл Моррисон - Создание игр для мобильных телефонов» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Создание игр для мобильных телефонов: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Создание игр для мобильных телефонов»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Книга «Создание игр для мобильных телефонов» – это практическое руководство, которое поможет разработать и реализовать игру для мобильного телефона.
Книга написана простым языком, не содержит сложной и скучной теории программирования и шаг за шагом знакомит с методикой создания технологии «plug-and-play» применительно к созданию огромного количества игр.
В издание включены подробные описания и примеры кодов для четырех игр, а также информация, необходимая для реализации вашей собственной задумки.
Если вы любите играть в игры и занимаетесь программированием, то эта книга – для вас! Перевод: К. Михалкин

Создание игр для мобильных телефонов — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Создание игр для мобильных телефонов», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

int keyState = getKeyStates();

if ((keyState & FIRE_PRESSED) != 0)

// старт новой игры

newGame();

// игра закончена, не нужно обновлять что либо

return;

}

Чтобы начать новую игру, необходимо вызвать метод newGame(), о котором вы узнаете чуть позже в этой главе. Обратите внимание, что метод update() завершает свою работу сразу после вывода метода newGame(), поскольку нет необходимости обновлять что-либо в игре, которая только начата. Этот метод прекратит свою работу даже в случае, если не будет нажата клавиша Огонь, поскольку игра окончена и нет необходимости обновлять игру. Если игра не окончена, метод update() продолжает отвечать на пользовательский ввод. Приведенный ниже код отвечает на нажатия клавиш Влево и Вправо, которые управляют автомобилем, а нажатием клавиши Огонь запускается ракета:

int keyState = getKeyStates();

if ((keyState & LEFT_PRESSED) != 0) {

playerSprite.setXSpeed(-2);

}

else if ((keyState & RIGHT_PRESSED) != 0) {

playerSprite.setXSpeed(4); //Автомобиль игрока движется вправо быстрее, чем влево, поскольку для движения влево включается задний ход. Это интересный штрих к игре

}

if ((keyState & FIRE_PRESSED) != 0) {

// воспроизвести звук огня

try {

Manager.playTone(ToneControl.C4 + 12, 10, 100);

}

catch (Exception e) {

}

addMissile(playerSprite);

}

playerSprite.update();

Если вы вспомните дизайн игры Space Out (рис. 18.1), то автомобиль игрока располагается у нижней границы экрана и может перемещаться по горизонтали влево или вправо. Код обработки нажатий клавиш устанавливает скорость автомобиля по оси X, таким образом, автомобиль перемещается в ответ на нажатие клавиши. Важно отметить, что скорость в направлении влево меньше скорости направления вправо. Эта разница объясняется тем, что автомобиль направлен вправо, следовательно, при движении влево он движется назад. В реальности автомобиль движется назад медленнее, чем вперед.

...

В копилку Игрока

Кроме того, что в игру Space Out добавлена доля реализма, такое различие скоростей несколько усложняет игру. Так, при движении влево сложнее скрыться от ракет.

Код обработки ввода реагирует на нажатие клавиши Огонь тоновым сигналом и вызовом метода addMissle(). О том, как работает этот метод, вы узнаете позже в этой главе, а пока важно отметить, что в этот метод передается спрайт игрока. Идея метода addMissle() заключается в том, что он запускает ракету спрайта, который передается в него в качестве параметра. Итак, вы можете вызвать метод addMissle() и передать в него спрайт игрока или пришельца, в результате будет запущена ракета.

Основная работа метода update() – это обновление спрайтов. Приведенный ниже код обновляет спрайты пришельцев и взрывов:

for (int i = 0; i < 3; i++) {

if (blobboSprite[i].isVisible()) {

blobboSprite[i].update();

blobboSprite[i].nextFrame();

}

if (jellySprite[i].isVisible()) { //Обновляются только видимые спрайты

jellySprite[i].update();

jellySprite[i].nextFrame();

}

if (timmySprite[i].isVisible()) {

timmySprite[i].update();

timmySprite[i].nextFrame();

}

if (explosionSprite[i].isVisible()) {

if (explosionSprite[i].getFrame() < 3) //Этот код создает анимацию взрыва, после чего спрайт взрыва исчезает

explosionSprite[i].nextFrame();

else

explosionSprite[i].setVisible(false);

}

}

Этот код достаточно прост, здесь обновляются и перемещаются спрайты пришельцев и взрывов. Важно понять, что обновляются только видимые спрайты. Возможно, также важным является и то, что спрайты взрыва скрываются после того, как все фреймы показаны.

...

Совет Разработчику

Чтобы сделать игру более эффективной и не создавать и не удалять объекты динамически, все спрайты создаются в начале игры, а затем скрываются и отображаются, чтобы создать эффект разрушения. В любой момент в игре «существуют» только видимые спрайты.

Следующий фрагмент метода update() достаточно велик, поскольку в нем реализуется большая часть игровой логики.

Код, о котором я говорю, – это код обновления ракет. Он очень важен, поскольку ход игры зависит от того, с каким спрайтом столкнется ракета – со спрайтом игрока или пришельца. Ниже приведен код, работающий со спрайтами ракет:

for (int i = 0; i < 10; i++) {

if (missileSprite[i].isVisible()) {

// ракета игрока?

if (missileSprite[i].getFrame() == 0) { //Индекс фрейма спрайта ракеты используется для определения типа ракеты

for (int j = 0; j < 3; j++) {

// ракета попала в пришельца Блоббо?

if (blobboSprite[j].isVisible())

if (missileSprite[i].collidesWith(blobboSprite[j], false)) {

// Воспроизвести звук разрушения

try {

Manager.playTone(ToneControl.C4 – 6, 100, 100);

}

catch (Exception e) {

}

// создать взрыв

addExplosion(blobboSprite[j]);

// спрятать спрайт и увеличить счет

blobboSprite[j].setVisible(false); //При столкновении спрайта ракеты игрока со спрайтом пришельца оба спрайта исчезают

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Создание игр для мобильных телефонов»

Представляем Вашему вниманию похожие книги на «Создание игр для мобильных телефонов» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Создание игр для мобильных телефонов»

Обсуждение, отзывы о книге «Создание игр для мобильных телефонов» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x