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

В конце метода update() вы обнаружите код, обновляющий фрагменты слоя с изображением воды. Счетчик waterDelay контролирует, что обновление будет выполняться на каждом четвертом цикле. Счетчик принимает значения 0, 1, 2, затем выполняется обновление, и счетчик обнуляется. А изображения воды изменяются от 1 до 4 (рис. 11.5). Этот код создает эффект движения воды во всех элементах замощенного слоя с индексом -1.

Несомненно, стоит рассмотреть и последний простой фрагмент кода мидлета Wanderer 2. Чтобы понять, о чем я говорю, посмотрите листинг 11.2.

Листинг 11.2. Метод draw() в менеджер слоев, одной строкой кода

private void draw(Graphics g) {

// вывести слои

layers.paint(g, 0, 0); //Вывод спрайтов и слоев

// вывести содержимое буфера

flushGraphics();

}

Приведенный листинг содержит код метода draw() мидлета Wanderer 2, этот код отвечает за вывод графики на холст мидлета. Как вы видите, этот метод вызывает лишь один метод рисования, метод paint() менеджера слоев. Поскольку в окне вида уже установлена выводимая на экран область слоев, то вы можете передать в метод paint() координаты (0,0).

Изменения кода по сравнению с мидлетом Wanderer не столь значительны, однако эффект, как вы увидите далее, велик.

Тестирование готового приложения

Мидлет Wanderer 2 – это скромное подобие мобильной игры, в которой вы управляете героем, проводите его через лабиринт и исследуете виртуальный мир. Все, что остается сделать, – это усложнить лабиринт и добавить спрайты врагов. Даже если считать, что Wanderer 2 мало похож на мобильную игру, этот мидлет очень интересен с точки зрения применения замощенных слоев и их эффективного использования.

На рис. 11.7 показано, как выглядит экран при первом запуске мидлета Wanderer 2; игровой экран центрирован относительно замощенных слоев, а спрайт героя находится в центре лабиринта.

Рис. 11.7. В мидлете Wanderer 2 герой пробирается через лабиринт, расположенный поверх фонового слоя

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

Рис. 11.8. Некоторые из элементов слоя с изображением воды – анимационные, они создают более реалистичный эффект

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

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

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

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

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

Финансы / Программирование, программы, базы данных
iOS. Приемы программирования
iOS. Приемы программирования

Книга, которую вы держите в руках, представляет собой новый, полностью переписанный сборник приемов программирования по работе с iOS. Он поможет вам справиться с наболевшими проблемами, с которыми приходится сталкиваться при разработке приложений для iPhone, iPad и iPod Touch. Вы быстро освоите всю информацию, необходимую для начала работы с iOS 7 SDK, в частности познакомитесь с решениями для добавления в ваши приложения реалистичной физики или движений — в этом вам помогут API UIKit Dynamics.Вы изучите новые многочисленные способы хранения и защиты данных, отправки и получения уведомлений, улучшения и анимации графики, управления файлами и каталогами, а также рассмотрите многие другие темы. При описании каждого приема программирования приводятся образцы кода, которые вы можете смело использовать.

Вандад Нахавандипур

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