Читаем Создание игр для мобильных телефонов полностью

sprite.setPosition(-sprite.getWidth(), sprite.getY());

if (sprite.getY() < -sprite.getHeight())

sprite.setPosition(sprite.getX(), getHeight());

else if (sprite.getY() > getHeight())

sprite.setPosition(sprite.getX(), -sprite.getHeight());

}

else {

// остановить спрайт у края экрана

if (sprite.getX() < 0)

sprite.setPosition(0, sprite.getY());

else if (sprite.getX() > (getWidth() – sprite.getWidth()))

sprite.setPosition(getWidth() – sprite.getWidth(), sprite.getY());

if (sprite.getY() < 0)

sprite.setPosition(sprite.getX(), 0);

else if (sprite.getY() > (getHeight() – sprite.getHeight()))

sprite.setPosition(sprite.getX(), getHeight() – sprite.getHeight());

}

}

}

Я надеюсь, что длина приведенного кода вас не испугала. Если вы потратите немного времени на его изучение, то поймете, что вы уже с ним знакомы. В этом листинге просто собраны все элементы кода, рассмотренные ранее.

Класс HenwayMIDlet – это класс мидлета, который создает экземпляр класса HCanvas. По этой причине я опущу рассмотрение кода класса мидлета. Помните, что полный код мидлета Henway, а также прочих программ, рассматриваемых в книге, можно найти на прилагаемом компакт-диске.

Тестирование игры

Игру Henway намного веселее тестировать, чем программу UFO. Henway – это первая созданная вами полноценная игра, что делает этот мидлет очень привлекательным для пользователя.

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

На рис. 7.5 показано начало игры, ваш храбрый цыпленок готов к переходу через шоссе.

Рис. 7.5. Игра Henway начинается с того, что цыпленок готов к переходу через шоссе

Чтобы начать игру, просто проведите вашего цыпленка через дорогу, для чего используйте клавиши со стрелками на мобильном телефоне (или клавиши со стрелками на клавиатуре). Если вы успешно перевели цыпленка через шоссе, ваш счет увеличится на 25 очков.

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

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

...

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

Если вы обнаружите, что реакция на нажатия клавиш на клавиатуре очень замедлена, попробуйте уменьшить значение переменной inputDelay до 1. Это поможет увеличить скорость обработки ввода на треть.

Если вы потеряете всех трех цыплят, то игра заканчивается. На рис. 7.7 показан конец игры, на экране просто выводится ваш счет и строка «game over» (игра закончена).

Рис. 7.7. Если вы потеряли всех цыплят, то игра закончена

Перейти на страницу:

Похожие книги

1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных
Язык программирования C++. Пятое издание
Язык программирования C++. Пятое издание

Лучшее руководство по программированию и справочник по языку, полностью пересмотренное и обновленное под стандарт С++11!Р'С‹ держите в руках новое издание популярного и исчерпывающего бестселлера по языку программирования С++, которое было полностью пересмотрено и обновлено под стандарт С++11. Оно поможет вам быстро изучить язык и использовать его весьма эффективными и передовыми способами. Р' соответствии с самыми передовыми и современными методиками изложения материала авторы демонстрируют использование базового языка и его стандартной библиотеки для разработки эффективного, читабельного и мощного кода.С самого начала этой книги читатель знакомится со стандартной библиотекой С++, ее самыми популярными функциями и средствами, что позволяет сразу же приступить к написанию полезных программ, еще не овладев всеми нюансами языка. Большинство примеров из книги было пересмотрено так, чтобы использовать новые средства языка и продемонстрировать РёС… наилучшие СЃРїРѕСЃРѕР±С‹ применения. Эта книга — не только проверенное руководство для новичков в С++, она содержит также авторитетное обсуждение базовых концепций и методик языка С++ и является ценным ресурсом для опытных программистов, особенно желающих побыстрей узнать об усовершенствованиях С++11.Стенли Р'. Липпман работал старшим консультантом в Jet Propulsion Laboratory, архитектором РіСЂСѓРїРїС‹ Visual С++ корпорации Microsoft, техническим сотрудником Bell Laboratories и главным инженером- программистом по анимации в кинокомпаниях Disney, DreamWorks, Pixar и PDI.Р–РѕР·и Лажойе, работающий ныне в кинокомпании Pixar, был членом канадской РіСЂСѓРїРїС‹ разработчиков компилятора C/C++ корпорации IBM, а также возглавлял рабочую группу базового языка С++ в составе международной организации по стандартизации ANSI/ISO.Барбара Э. Му имеет почти тридцатилетний опыт программирования. На протяжении пятнадцати лет она работала в компании AT&T, сотрудничая с Бьярне Страуструпом, автором языка С++, и несколько лет руководила РіСЂСѓРїРїРѕР№ разработчиков С++.• Узнайте, как использовать новые средства языка С++11 и стандартной библиотеки для быстрого создания надежных программ, а также ознакомьтесь с высокоуровневым программированием• Учитесь на примерах, в которых показаны передовые стили программирования и методики проектирования• Р

Барбара Э. Му , Жози Лажойе , Стенли Б. Липпман

Программирование, программы, базы данных