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

Не забудьте, что порядок, в котором вы добавляете спрайты в менеджер слоев, очень важен, первый добавленный спрайт будет выводится на экран поверх остальных объектов. Поэтому фоновые слои добавляются в последнюю очередь. Звуковые эффекты и музыка играют большое значение в оформлении большинства игр, и High Seas – не исключение. Приведенный ниже код устанавливает проигрыватели:

try {

InputStream is = getClass.getResourceAsStream("Music.mid");

musicPlayer = Manager.createPlayer(is, "audio/midi");

musicPlayer.prefetch;

musicPlayer.setLoopCount(-1);

is = getClass.getResourceAsStream("Rescue.wav");

rescuePlayer = Manager.createPlayer(is, "audio/X-wav");

rescuePlayer.prefetch;

is = getClass.getResourceAsStream("Mine.wav");

minePlayer = Manager.createPlayer(is, "audio/X-wav");

minePlayer.prefetch;

is = getClass.getResourceAsStream("GameOver.wav");

gameoverPlayer = Manager.createPlayer(is, "audio/X-wav");

gameoverPlayer.prefetch;

}

catch (IOException ioe) {

}

catch (MediaException me) {

}

Как видно, для музыки создается один MIDI-проигрыватель, а также три проигрывателя – по одному на каждый из воспроизводимых в игре звуков (звук спасения пирата, звук подрыва на мине и звук окончания игры). Последний фрагмент метода start начинает новую игру, для чего вызывается метод newGame:

newGame;

Чуть позже вы узнаете, как работает этот метод. А пока давайте перейдем к рассмотрению метода update, который выполняет всю основную работу мидлета.

Разработка метода update

Как вы знаете, метод update вызывается один раз за игровой цикл, он отвечает за обновление спрайтов, слоев, проверяет столкновения, именно он обеспечивает работу приложения. В игре High Seas этот метод начинается с проверки окончания игры. Если результат положительный, начинается новая игра, для чего пользователь должен нажать клавишу «огонь»:

if (gameOver) {

int keyState = getKeyStates;

if ((keyState & FIRE_PRESSED) != 0)

// Start a new game

newGame;

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

return;

}

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

int keyState = getKeyStates;

int xMove = 0, yMove = 0;

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

xMove = -4;

playerSprite.setFrame(3);

}

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

xMove = 4; //Чтобы корабль игрока передвигался быстрее, нужно изменить это значение

playerSprite.setFrame(1);

}

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

yMove = -4;

playerSprite.setFrame(0);

}

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

yMove = 4;

playerSprite.setFrame(2);

}

if (xMove != 0 || yMove != 0) { //Изменить положение окна вида и переместить спрайт игрока в соответствии с нажатой клавишей

layers.setViewWindow(xView + xMove, yView + yMove, getWidth,

getHeight – infoBar.getHeight);

playerSprite.move(xMove, yMove);

}

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

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

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

Рассказывается о работе в операционной системе 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 / Словари и Энциклопедии