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

for (int i = 0; i < landMap.length; i++) {

int column = i % 24;

int row = (i – column) / 24;

landLayer.setCell(column, row, landMap[i]);

}

После того как слои суши и воды были успешно созданы, можно перейти к спрайтам. Если вы вспомните, в игре есть пиратский корабль, управляемый игроком, два пирата, две бочки, пять мин и пять осьминогов. Спрайт игрока – это объект класса Sprite, поскольку ему не требуется выполнять особых функций. В то же время остальные спрайты – это объекты класса DriftSprite, нового класса, ранее созданного в этой главе. Ниже приведен код, создающий эти спрайты:

try {

playerSprite = new Sprite(Image.createImage("/PlayerShip.png"), 43, 45);

int sequence2[] = { 0, 0, 0, 1, 1, 1 };

int sequence4[] = { 0, 0, 1, 1, 2, 2, 3, 3 };

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

pirateSprite[i] = new DriftSprite(Image.createImage("/Pirate.png"), //Четвертый и пятый параметры конструктора DriftSprite – это скорость спрайта и слой-барьер соответственно

29, 29, 2, landLayer);

pirateSprite[i].setFrameSequence(sequence2);

placeSprite(pirateSprite[i], landLayer);

barrelSprite[i] = new DriftSprite(Image.createImage("/Barrel.png"),

24, 22, 1, landLayer);

barrelSprite[i].setFrameSequence(sequence4);

placeSprite(barrelSprite[i], landLayer); //Метод placeSprite случайным образом размещает спрайт на карте

}

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

mineSprite[i] = new DriftSprite(Image.createImage("/Mine.png"),

27, 23, 1, landLayer);

mineSprite[i].setFrameSequence(sequence2);

placeSprite(mineSprite[i], landLayer);

squidSprite[i] = new DriftSprite(Image.createImage("/Squid.png"),

24, 35, 3, landLayer);

squidSprite[i].setFrameSequence(sequence2);

placeSprite(squidSprite[i], landLayer);

}

}

catch (IOException e) {

System.err.println("Failed loading images!");

}

Спрайт игрока создается в тот момент, когда размер фрейма передается конструктору. Остальные спрайты – это объекты класса DriftSprite, они имеют различные скорости. Например, спрайты пиратов имеют скорость 2, а спрайты мин и бочек перемещаются со скоростью 1. Смысл в том, что пираты могут плавать, поэтому они должны перемещаться быстрее бочек и мин, которые на самом деле просто дрейфуют. Аналогично, спрайты осьминогов имеют скорость 3. Важно отметить, что переменная landLayer выполняет функции барьера для всех спрайтов.

...

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

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

Замощенные слои и игровые спрайты объединяются менеджером слоев, который заботится об их упорядочивании и создании. Следующий код добавляет спрайты в менеджер слоев:

layers = new LayerManager;

layers.append(playerSprite);

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

layers.append(pirateSprite[i]);

layers.append(barrelSprite[i]);

}

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

layers.append(mineSprite[i]);

layers.append(squidSprite[i]);

}

layers.append(landLayer);

layers.append(waterLayer); //Последним добавляется слой воды, он будет выведен под остальными элементами

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

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

С компьютером на ты. Самое необходимое
С компьютером на ты. Самое необходимое

Рассказывается о работе в операционной системе Windows (на примере версий XP и 7), текстовом редакторе Word 2010 и других приложениях, необходимых каждому пользователю: архиваторах, антивирусах и программах для просмотра видео и прослушивания музыки (Winamp, QuickTime Pro). Большое внимание уделяется работе в Интернете. Рассказывается о программах для просмотра Web-страниц, об электронной почте, а также о различных полезных приложениях для работы в сети — менеджерах закачек файлов, ICQ, Windows Live Messenger, MSN и многих других. Во втором издании рассмотрена новая ОС — Windows 7, а также последние версии приложений для пользователей.Для начинающих пользователей ПК.

Андрей Александрович Егоров , Андрей Егоров

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT
От «кирпича» до смартфона
От «кирпича» до смартфона

Перед вами уникальное исследование мира мобильной индустрии, превращенное его автором Эльдаром Муртазиным, ведущим аналитиком Mobile Research Group и главным российским специалистом по мобильным телефонам, в захватывающий бизнес-триллер. Гигантские компании — Nokia, Motorola, Samsung бросают на мобильный фронт колоссальные силы, создают альянсы, охотятся за лучшими специалистами, шпионят друг за другом. Разработки ведутся в обстановке строжайшей секретности. Цель — выпустить на рынок новую, уникальную модель раньше конкурентов или даже полностью изменить наше представление о мобильном телефоне, как это недавно удалось Apple со своим iPhone.Эта книга предназначена для тех, кто видит в мобильном телефоне не просто средство связи, а чудо инженерной мысли, смелое воплощение дизайнерских фантазий, символ нашей эпохи.

Эльдар Викторович Муртазин , Эльдар Муртазин

Справочная литература / Прочая компьютерная литература / Прочая справочная литература / Книги по IT / Словари и Энциклопедии