выпуск 26
Flash на практике часть-7
В прошлом выпуске мы познакомились с загрузкой
данных и самостоятельных swf клипов в основной проект. Но далеко не всегда
загрузка дополнительного swf файла ограничивается его простым, дальнейшим
просмотром.
Если у Вас сложный проект с множеством
подгружаемых частей, содержащих собственные объекты, которыми необходимо
управлять или обеспечить необходимую последовательность воспроизведения.
Даже если у Вас нет подгружаемых частей, но в проекте имеются клипы,
содержащие кнопки, которые управляют объектами, находящимися в других
клипах, или их параметрами и данными, то необходимо каким-то образом
это осуществить. Говоря официальным языком программистов "Необходимо
осуществить обращение к Timeline дочерних объектов и их данным из других
дочерних объектов или родительского проекта". Но прежде, чем это сделать
на практике, познакомимся с действием Tell Target.
Определение клипа для его управления и изменения его данных.
Предположим, что у нас на рабочей сцене имеется
кнопка и клип, состоящий из 40 кадров, в первом кадре которого стоит
действие Stop (т.е. клип остановлен на первом кадре). При нажатии на
кнопку клип начинает проигрываться. Назначим кнопке скрипт производящий
запуск клипа.
Для этого, как обычно, откроем окно
Instance Properties и щелкнем на закладке Actions.
- Из списка действий выберите Tell Target.
- В правом части появится поле со списком имеющихся на сцене клипов.
Если Вы задали данное действие уже находясь в клипе, то при наличии в
нем других клипов, они будут отражены. Если же Вы хотите обратиться из
клипа к другому клипу, но находящемуся на основной сцене или в другом
клипе, Вам придется самостоятельно указать его местонахождения -путь
(см.ниже).
- Выберете необходимый объект, дважды щелкнув по нему правой кнопкой
мыши.
- В поле Target появится его название, а точнее путь к данному
объекту (клипу), например
/MovieClip
Теперь Вам будет доступно управление проигрывания
клипа или его данными. В нашем примере, для запуска клипа movie скрипт
будет выглядеть следующим образом:
On (Release)
Begin Tell Target ("/movie")
Play
End Tell Target
End On
Очень удобно применять Tell Target, когда нужно
показывать поочередно, по одному местоположению, множество различных клипов.
В этом случае достаточно все клипы разместить в одном, но в разных кадрах
и управлять именно им, например, задавая в команде Go to and Stop
необходимый кадр.
Впрочем, если вы хотите изменить какие то
параметры объекта, то прибегать к Tell Target не обязательно. Действия,
требующие указания пути, уже содержат необходимый пункт, в котором Вам
необходимо его указать. Например, изученное в прошлом выпуске действие
Load/Unload Movie или Set Property.
Пути к объектам
К сожалению, далеко не всегда есть возможность
указать объект (клип) просто щелкнув мышкой. Очень часто нужно
самостоятельно вводить путь к объекту. Если у Вас есть опыт создания
сайтов с несколькими папками, то Вы знаете принцип ссылок на страницы
находящиеся в других папках. Во Flash указание пути происходит подобным
образом. Что бы, не говорить понапрасну давайте, рассмотрим несколько
возможных ситуаций:
Указание пути со сцены к клипу Movie:
/Movie
Указание пути со сцены к клипу Happy находящемуся в клипе Movie:
/Movie/Happy
Указание пути к сцене из клипа Movie
../
Указание пути к клипу Table из клипа Movie
../Table
Указание пути к клипу Happy находящемуся в клипе Movie из клипа Table:
../Movie/Happy
Разумеется, перечисленные варианты не
охватывают всех возможных случаев адресации, которые могут встретиться,
но надеюсь, что теперь сам принцип для Вас понятен и как видите, не так
уж страшен, как мог показаться вначале.
Учебный пример можно скачать на сайте
"Учебный курс Flash" в разделе скачать. В нем вы увидите принцип
управления клипом из выпадающего меню и звуковое сопровождение объектов
(в одном из эпизодов применен синтез речи с использованием программного
обеспечения Microsoft).
Домашнее задание
На сей раз, сделайте - телевизор с
видеомагнитофоном. Проигрывание фильма производится с дистанционного
пульта, на котором имеются кнопки перехода по эпизодам. В видеомагнитофоне
стоит кассета с фильмом-сказкой "Приключение Колобка".
Сценарий фильма:
Жил, да был лысый выпускник ПТУ, прозванный
Колобком. И решил он уйти от своих стареньких предков в поисках легкой
наживы. И первое, что пришло в его стриженую голову - стать виртуальным
наркобароном.
И встретился ему крупный специалист по
втягиванию в сети криминала - Заяц, больше известный под страшной кличкой
Косой, которая приводит всех работников уголовного розыска и защитников
авторского права в священную ярость.
И начал он свой черный бизнес - сбывая самый
жуткий наркотик именуемый в официальных рекламных проспектах "время доступа
в интернет". Но не сладко жилось Колобку. Матерый провайдер "Серый Волк"
придушивший за свою деятельность немало колобков, мешал ему развиваться.
Но не только сбытчики "ВДИ" (время доступа в
интернет) мешали Колобку развернуться во всю силу, но и профессиональный
рэкетир - налоговый инспектор Медведь Бурый в униформе, старался наложить
свою мохнатую лапу.
Долго ли, коротко ли существовало частное
предприятие "KolobokNet" никто не знает. Но за свою деятельность оно
подсадило на сеть не одну сотню наивных владельцев компьютеров. Так и
процветал бы Колобок, так бы и румянились его щечки, и толстел кошелек,
если бы не пришла однажды Лиса из министерства связи, и не рассказала бы
всем о том, как замечательно будет жить при поминутной оплате. И начались
тогда ломки страшные, и взбунтовались сетяне...
А чем закончилась сказка, милый внучек, никто
не ведает, потому, как и не сказка это, а страшная правда.
Технические требования:
Пульт и телевизор - клипы. Показываемые сцены
могут быть загружаемыми или находится непосредственно в проекте.
Допускается применение звукового сопровождения.
Работы принимаются до 10 ноября 2000, объем
zip архива не более 500 кб.
Павел Г.Лапин
E-mail: murmik@mail.ru
Россия Мурманск
|