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

Если необходимо переместить окно вида, то просто вызовите метод setViewWindow() снова, изменив два первых параметра. Вот и все, что необходимо для перемещения окна.

Анимация и замощенные слои

Я еще не рассказал вам о приеме, с помощью которого можно создавать анимацию слоев внутри замощенного слоя. Это делается так: в карте слоя вы задаете слои с отрицательными индексами -1, -2 и т. д. Эти индексы представляют особые анимационные слои, которые можно использовать в любой момент игры.

Например, вы хотите «оживить» воду в примере Wanderer, чтобы карта мира выглядела более реалистично. Некоторые из слоев карты вы можете обозначить индексом -1, а не 1 (1 – это индекс изображения воды). Затем в методе update() мидлета необходимо добавить код, обрабатывающий все слои с индексом -1. Я имею в виду, что этот код должен менять изображения, чтобы создавать иллюзию движения. Для этого вы можете использовать любые слои из множества замощенного слоя. Чтобы создать иллюзию движения воды, достаточно добавить еще несколько «водных» изображений в набор.

Анимация в замощенных слоях поддерживается двумя методами класса TiledLayer():

createAnimatedTile()  – создание анимации в замощенном слое;

setAnimatedTile()  – установление статического изображения для определенного элемента слоя.

Чтобы понять принцип работы, нужно объяснить значение некоторых терминов. Статическим элементом будем называть элемент слоя, имеющий индекс 1 или более. Индекс 0 означает пустой элемент замощенного слоя. Анимационным элементом будем называть элемент слоя, который может отображать последовательность статических изображений, и имеет индекс -1 и меньше. Итак, анимационный элемент слоя имеет отрицательный индекс, однако в любой момент времени этот элемент представляет собой статическое изображение – часть анимации.

Чтобы собрать все воедино, посмотрите на следующий код карты слоя:

1, 1, -1, 1,

–1, -1, 1, 1,

1, -1, 1, -1,

–1, 1, -1, -1

Перед тем как интерпретировать эту карту, важно отметить, что в ней четыре статических элемента, отображающих различные изображения воды. Если эти изображения показывать в определенном порядке, то создается иллюзия движения воды. Эти элементы имеют индексы 1, 2, 3 и 4. Элементы слоя с индексом 1 – это обычные элементы, с которыми вы работали прежде. Элементы с индексом -1 – это анимационные элементы, они отображают последовательность статических элементов с индексами 1, 2, 3, 4. Эта последовательность не отражена в карте, чуть позже вы узнаете, как она применяется к анимационным слоям. Если говорить на языке кода, сначала вы создаете анимационный слой, а потом карту замощенного слоя. Ниже приведен код, создающий анимационный слой для примера с водой:

waterLayer.createAnimatedTile(1);

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

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

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