Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript

Здесь есть возможность читать онлайн «Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Данная книга посвящена программированию игр с помощью ActionScript. Здесь вы найдете подробные указания, необходимые для создания самых разных игр – аркад, головоломок, загадок и даже игровых автоматов. В тексте приведены исходные коды программ и детальные, доступно изложенные инструкции. Базовые принципы программирования ActionScript рассматриваются на примере игр, однако вы без труда сможете применить полученные знания и для разработки неигровых проектов, таких как Web-дизайн и реклама. Рекомендации Гэри Розенцвейга помогут вам не только придумывать занимательные игры и размещать их на Web-сайте, но и оптимизировать скорость их работы, а также защищать свои творения от несанкционированного копирования. Представленный в книге код несложно изменить для использования в других программах.
Книга предназначена для широкого круга читателей – создателей анимационных роликов, художников-оформителей, программистов и разработчиков Web-сайтов. Издание может также выступать в качестве практического пособия по изучению ActionScript.

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Функция moveBalloonsпроверяет, все ли шары созданы и все ли шары исчезли, что говорит об окончании игры.

function moveBalloons() {

// Перемещаем все шары.

for(i=balloons.length-1;i>=0;i–) {

// Определяем скорость шара

// и получаем ссылку на клип.

dx = balloons[i].d;

balloon = _root[balloons[i].clip];

// Перемещаем шар.

balloon._x += dx;

// При вылете за экран шар удаляется.

if ((dx < 0) and (balloon._x < -20)) {

balloon.removeMovieClip() ;

balloons. splice (i,1);

} else if ((dx > 0) and (balloon._x > 570)) {

balloon.removeMovieClip();

balloons.splice(i,1);

}

}

// Если шары закончились, игра завершается.

if ((nextBalloon >= numBalloons) and (balloons.length < 1)){

gotoAndStop("game over");

}

}

Функция moveFoxопределяет, нажаты ли клавиши со стрелками «влево» или «вправо», и перемещает лису на 10 пикселов влево или вправо при нажатии соответствующей клавиши. Как и в предыдущих играх, параметр _xscale клипа, содержащего лису, используется для поворота лисы. Функция также задает переход клипа к анимационной последовательности (изображает идущую лису и начинается в кадре 2), а также к кадру 1 (изображает стоящую лису).

function moveFox () {

// Подвинуть лису влево.

if (Key.isDown (Key.LEFT)) {

dx = -10;

fox._xscale = Math.abs(fox._xscale);

// Подвинуть лису вправо, перевернув ее клип по вертикали [12] .

} else if (Key.isDown(Key.RIGHT)) {

dx = 10;

fox._xscale = -Math.abs(fox._xscale);

// Иначе лиса не двигается.

} else {

dx = 0;

}

// Перемещаем лису.

fox._x += dx;

if ((dx == 0) and (fox._currentFrame != 1)) {

// Переходим к кадру, в котором лиса стоит.

fox.gotoAndStop(l);

} else if ((dx != 0) and (fox._currentFrame == 1)) {

// Переходим к кадру, где лиса бежит.

fox.gotoAndPlay(2);

}

}

Для того чтобы выстрелить, пользователь должен нажать на клавишу пробела. На нажатие клавиши реагирует скрытая кнопка, которая вызывает функцию shootBullet.Код кнопки будет рассмотрен далее, в разделе «К сведению».

Функция shootBulletпроверяет, прошло ли достаточно времени после предыдущего выстрела. Это не дает игроку возможности стрелять залпом по всем мишеням.

Подобно шарам снаряды представлены одновременно клипом и элементом массива, в данном случае массива bullets.Массив используется функцией moveBulletsдля осуществления выстрелов.

Обратите внимание, что движение клипа, содержащего снаряд, начинается в точке, расположенной в 2 пикселах вправо и 55 пикселах влево от центра клипа лисы. Эта точка соответствует кончику соломинки.

function shootBullet () {

// Проверяем, что с момента

// предыдущего выстрела прошло достаточно времени.

if (getTimer() > nextBulletTime) {

// Создаем новую пулю.

attachMovie("bullet","bullet"+nextBullet,nextBullet+9999);

// Устанавливаем ее координаты.

_root["bullet"+nextBullet]._x = fox._x+2;

_root["bullet"+nextBullet]._y = fox._y-55;

// Добавляем новую пулю к массиву.

bullets.push(nextBullet) ;

// Изменяем значение переменных, отвечающих

// за появление пуль.

nextBullet++;

nextBulletTime = getTimer()+1000;

}

}

Функция moveBulletsработает аналогично функции moveBalloons,но перемещает снаряды не вправо и влево, а вверх. Она проверяет одно из следующих условий: снаряд достиг верхнего края экрана либо попал в шар и вызвал функцию checkCollision.В обоих случаях и клип, и элемент массива удаляются.

function moveBullets() {

// Проверяем, попали ли пули в шар.

for(i=bullets.length-1;i>=0;i–) {

// Выбираем элемент.

bullet = _root["bullet"+bullets[i]];

// Передвигаем пулю вверх.

bullet._y -= 10;

// Выясняем, достигла ли она конца экрана.

if (bullet._y < 0) {

bullet.removeMovieClip();

bullets.splice(i,1);

// Определяем, не попал ли игрок по шару.

} else {

if (checkCollision(bullet)) {

bullet.removeMovieClip();

bullets.splice(i,1);

}

}

}

}

Функция checkCollision(она будет рассмотрена далее) проверяет все шары и определяет, не находится ли один из них вблизи данного снаряда. При помощи функции distanceоценивается расстояние от центра снаряда до центра шара. Если расстояние составляет менее 10 пикселов, что приблизительно равно диаметру шара, выстрел засчитывается как удачный. В клипе шара происходит переход к кадру 2, элемент массива, связанный с шаром, принимает значение true, а функция moveBulletполучает команду на удаление снаряда.

...

Совет

Почему для определения попадания используется функция distance,а не hitTest? Причина в том, что функция hitTest выдает значение true в случае, если снаряд попадет в любую часть шара, в том числе и в нитку, которая его держит.

function checkCollision(bullet) {

// Просматриваем все шарики.

for(j=balloons.length-1;j>=0;j–) {

balloon = _root[balloons!j].clip];

// Проверяем, попала ли пуля.

if (distance(bullet,balloon) < 10) {

// Переходим к кадру, в котором шар взрывается.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript»

Представляем Вашему вниманию похожие книги на «Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Аркадий Птицын - Чужие игры (СИ)
Аркадий Птицын
Аркадий Птицын - Чужие игры
Аркадий Птицын
Аркадий Аверченко - Друг
Аркадий Аверченко
Отзывы о книге «Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript»

Обсуждение, отзывы о книге «Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x