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

Сценарий, назначенный клипу, использует программу-обработчик подобно сценарию кнопки в предыдущем занятии. Чтобы задать программу обработки, вместо командной строки on введите строку onClipEvent, которая определяет события для клипов ролика. В данном случае событие будет следующим: enterFrame. Это автоматическое событие, происходящее при каждом обращении к данному кадру [6] . Если ролик должен воспроизводиться со скоростью 12 кадр/с, оно должно посылаться в программу обработки 12 раз в секунду.

Подобно программе on(press) в сценарии кнопки, команды реакции на событие onClipEvent(enterFrame) заключаются в фигурные скобки.

В данной программе будет только одна команда, перемещающая клип на один пиксел влево. Давайте взглянем на сценарий и проанализируем, какие действия в нем выполняются.

OnClipEvent(enterFrame) {

this._x – ;

}

Команда this._x –, вероятно, будет совершенно непонятной для людей, не знакомых с языками программирования, поэтому разберем ее по частям.

Команда this обозначает обращение команды к объекту, который ее содержит. В данном случае this используется для обращения к клипу, которому назначен этот сценарий.

За командой this следует точка, обозначающая обращение к свойству объекта. В нашем примере _x относится к горизонтальному положению клипа.

Итак. this._x определяет горизонтальное положение клипа. Символ – является декрементом (командой уменьшения значения). Он уменьшает значение стоящей перед ней величины на 1 (пункт). Таким образом, команда this. _x – берет значение горизонтального положение клипа и вычитает 1, благодаря чему клип перемещается влево.

Если клип необходимо переместить вправо, используется команда ++, которая называется инкрементом (это команда увеличения значения). Если вы хотите переместить клип вправо или влево сразу на несколько пикселов, используйте соответственно += или -=:

OnClipEvent(enterFrame) {

this._x -= 5;

}

Данная команда переместит клип сразу на пять пикселов.

<p>Урок 7. Возможность управления клипами пользователем</p>

Исходный файл: Usercontrol.fla

А теперь давайте сделаем так, чтобы клип двигался вслед за курсором.

В предыдущем занятии мы узнали, как получить доступ к горизонтальной позиции клипа. При помощи параметра _y так же легко оперировать изменением координаты по вертикали. Теперь все, что нам нужно, – это привязать данные координаты к курсору.

Местоположение курсора определяется двумя параметрами: _xmouse и _ymouse, которые представляют собой координаты курсора по вертикали и горизонтали. Возникает следующий вопрос: чьи это параметры?

Это могут быть параметры любого клипа или самого ролика. Например, команда this._xmouse определяет горизонтальное положение мыши по отношению к центру текущего клипа.

Нам нужно установить положение клипа по отношению к рабочему полю. Для того чтобы получить параметры рабочего поля, вместо идентификатора this следует использовать _root. Так, переменная _root._xmouse определяет горизонтальное расположение мыши относительно левого верхнего угла рабочего поля.

Для того чтобы привязать координаты клипа к координатам курсора, необходимо изменить параметры _x и _y клипа в соответствии с параметрами _xmouse и _ymouse рабочего поля. Вот как будет выглядеть программа:

OnClipEvent(enterFrame) {

this._x = _root._xmouse;

this._y = _root._ymouse;

}

На рис. 2.10 показан «собранный» ролик Usercontrol.fla. Он состоит из одного кадра со скриптом, содержащим команду stop(). Клипу назначен вышеописанный сценарий. Это все, что требуется. При воспроизведении ролика клип с лисой будет следовать за курсором.

Рисунок 2.10. По сценарию данный клип перемещается вслед за курсором

Теперь, когда вы умеете управлять воспроизведением ролика и перемещением клипа, давайте рассмотрим основные элементы программирования в ActionScript.

<p>Урок 8. Использование переменных</p>
Перейти на страницу:

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

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

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

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

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

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

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

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