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

Клип «sideObject» содержит сценарий, двигающий объект вниз и в сторону от центра. Для каждого следующего кадра значение _y увеличивается, а _x – изменяется. Оба параметра используют переменную speed для характеристики этого изменения, но _х использует коэффициент dx, который может быть равен 1 или -1. Объект перемещается соответственно вправо или влево.

Когда объект достигает значения 600 по вертикали, что на 200 пикселов ниже границы экрана, он возвращается назад к значению 200, то есть вновь появляется на горизонте. С вероятностью 50/50 он помещается слева или справа от дороги. Именно в этот момент определяется значение переменной dx.

И наконец, масштаб объекта определяется в соответствии со значением _y. Это означает, что объект становится больше по мере приближения.

onClipEvent(enterFrame) {

// Движемся вниз.

this._y += _root.speed;

// Движемся в стороны.

this._x += dx*_root.speed;

// Возвращаем объект на исходную озицию, если он проехал за

// нижнюю границу экрана.

if (this._y > 600) {

this._y = 200;

if (Math.random() < .5) {

// Объект слева.

this._x = Math.random()*170;

dx = -1;

} else {

// Объект справа.

this._x = 550-Math.random()*170;

dx = 1;

}

}

// Задаем масштаб в соответствие со значением _y.

this._xscale = this._y/4;

this._yscale = this._y/4;

}

Обратите внимание, что клип «sideObject» не взаимодействует с машиной. Это делает только клип «bonus». Но объекты по сторонам дороги направляют взгляд игрока так, что создается ощущение глубины. Центральная линия движется, как и камни, но, поскольку она находится в центре экрана, она не передвигается ни вправо, ни влево. Она просто движется вниз и изменяет масштаб.

onClipEvent(enterFrame) {

// Движемся вниз.

this._y += _root.speed;

// Возвращаемся к горизонту.

if (this._y > 400) {

this._y = 200;

}

// Устанавливаем масштаб.

this._xscale = this._y/4;

this._yscale = this._y/4;

}

Бонусные звезды ведут себя более похоже на объекты по сторонам. Однако они не появляются где попало. Они появляются с равной вероятностью в одном из двух мест на дороге. Таким образом, двигаясь вниз по экрану, бонусная звезда движется в сторону со скоростью вполовину меньшей, чем вниз. Это позволяет создавать более точную перспективу, поскольку звезды находятся ближе к центру дороги.

onClipEvent(enterFrame) {

// Движемся вниз.

this._y += _root.speed;

this._x += dx*_root.speed;

// Возвращаемся к горизонту.

if (this._y > 600) {

this._y = 200;

if (Math.random() < .5) {

// Переходим на левую сторону дороги.

this._x = 250;

dx = -.5;

} else {

// Переходим на правую сторону дороги.

this._x = 300;

dx = .5;

}

}

// Устанавливаем масштаб в соответствии с вертикальным

// положением.

this._xscale = this._y/4;

this._yscale = this._y/4;

}

Клип «actions» расположен вне экрана и содержит игровые часы. Он замечает время начала и производит обратный счет до 0. В клипе-примере игра очень короткая, всего 15 секунд. Вы можете увеличить ее до минуты или двух. Когда обратный отсчет доходит до 0, главная временная шкала отправляется к кадру "game over". Параметр speed становится равным 0, и машина замирает на месте.

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

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

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

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

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

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

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

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