Macromedia Flash Professional 8. Графика и анимация
Шрифт:
Часть IV
Интерактивность
Глава 18
Основы программирования во Flash
Вот мы и добрались до программирования. Путь был долог и тяжел, но мы его преодолели, расправившись по дороге со статичной и анимированной графикой, импортированным видео и звуком. Перед нами высятся неприступные стены и грозные башни крепости под названием ActionScript. Могучие воины-действия натачивают мечи, а грозные маги-объекты извлекают из тайников древние артефакты… Однако пора заканчивать со стратегическими играми!
В четвертой части книги
Сценарии Flash пишутся на языке программирования ActionScript, разработанном в фирме Macromedia специально для пакета Macromedia Flash. Этот язык очень прост в освоении и, вместе с тем, имеет достаточно средств для того, чтобы добавить фильмам Flash "жизни". На нем можно даже писать настоящие программы — так называемые Flash-приложения. И те из вас, кто продолжит изучение Flash 8 по его интерактивной справке или другим книгам, смогут стать настоящими Flash-программистами.
С помощью сценариев с фильмом и его элементами можно сделать все, что душе угодно. Например, можно остановить воспроизведение на каком-то кадре, а продолжить только после нажатия кнопки. Можно заставить фрагмент изображения двигаться по рабочему листу, не пользуясь стандартными средствами создания анимации, описанными в части IIIэтой книги. Можно заставить Flash открыть при щелчке на кнопке какую-либо Web-страницу. Можно… Да много чего можно сделать с помощью сценариев!
Начнем мы, как уже повелось, с теории. Нам нужно поближе познакомиться со сценариями и выяснить, как (или, точнее — когда) они работают. А заодно познакомиться с понятием события.
Как работают сценарии. События
Любой сценарий, который мы создаем в документе Flash, должен быть привязан к какому-то его элементу. Привязать сценарий во Flash можно:
к кадру анимации (внешней или внутренней, принадлежащей какому-либо образцу);
к клипу (в смысле — к экземпляру образца-клипа). О клипах и их создании см. главу 8;
к кнопке (к экземпляру образца-кнопки). О кнопках будет рассказано далее в этой главе.
Чтобы привязать к элементу изображения, нужно сначала выделить этот элемент. Далее мы просто открываем панель Actions и пишем в ней текст (или, как говорят профессиональные программисты, — код) сценария. Так, если был выделен кадр анимации, то написанный в панели Actions сценарий будет привязан к нему. Если же был выделен элемент, к которому нельзя привязать сценарий (например, "обычная" графика или экземпляр графического образца), панель Action будет недоступна.
Все сценарии Flash, привязанные к кнопке или клипу, выполняются в ответ на какое-либо событие, произошедшее в фильме Flash или операционной системе. Таким событием может быть щелчок на кнопке, "касание" мышью клипа и пр.; набор событий, к которым можно привязать сценарий, весьма обширен. Сценарии, привязанные к событиям, называются также обработчиками событий.
Сценарии же, привязанные к кадру анимации, выполняются при воспроизведении данного кадра. Поэтому они называются просто сценариями.
А теперь давайте выясним, как написать сценарий и привязать его к нужному событию нужного элемента документа Flash. Первый наш сценарий будет привязан к кадру фильма; заодно мы познакомимся с панелью Actions и научимся с ней работать. А потом перейдем к более сложным случаям — привязке сценариев к клипам и кнопкам. Ну и, конечно, узнаем, как создаются эти самые кнопки.
Привязка сценариев к кадрам анимации
Привязать сценарий к кадру проще простого. Откроем фильм, демонстрирующий деление клетки, который мы создали в главе 11, и выделим второй ключевой кадр второй сцены. Мы привяжем к этому кадру сценарий, запускающий воспроизведение данной сцены с первого кадра, и таким образом зациклим наш фильм.
При воспроизведении фильма в отдельном окне Flash по умолчанию его зацикливает. Но фильм, сохраненный в формате Shockwave/Flash, может и не быть зациклен. Поэтому для зацикливания фильмов часто применяют сценарии, наподобие того, какой мы сейчас напишем.
Этот небольшой сценарий будет выглядеть вот так:
gotoAndPlay(1);
Здесь gotoAndPlay — особая команда языка ActionScript, выполняющая переход на кадр текущей сцены, номер которого указан в скобках, и запускающая воспроизведение фильма уже с этого кадра. В нашем случае она выполняет переход на кадр № 1.
Команды такого типа воздействуют на фильм Flash или часть изображения на рабочем листе, причем результат этого воздействия проявляется немедленно. В терминологии Flash они называются действиями (actions). А номер кадра, указанный в скобках, называется параметром.
Очень часто действия принимают не один параметр, а несколько. В этом случае значения этих параметров разделяются запятыми.
В совокупности действие gotoAndPlay с параметром составляют выражение — минимальную единицу сценария ActionScript. Символ "точка с запятой" служит признаком конца выражения ActionScript и является обязательным.
Наш первый сценарий очень короток — в нем всего одно выражение. Сложные же сценарии могут содержать тысячи, а то и десятки тысяч выражений.
Знакомство с панелью Actions
Теперь нам осталось привязать наш сценарий к кадру. А значит, нам понадобится панель Actions. Чтобы вывести ее на экран, нужно:
либо включить пункт-выключатель Actions меню Window;
нажать клавишу <F9>;
нажать кнопку, расположенную в правой части панели Properties:
Панель Actions показана на рис. 18.1. Она разделена на три части, которые мы сейчас рассмотрим.