Что нового во Flash 5

         

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


Теперь Вы готовы добавить в Ваш клип команды, определяющие выбранного заказчиком змея и показывающие его в клипе с выводом соответствующего счета. Воспользуйтесь панелью Frame Actions для создания функции - блока многократно используемого кода, выполняющего определенную задачу. В нашем случае задача состоит в том, чтобы, в зависимости от выбора сделанного заказчикам, загрузить определенный SWF-файл с изображение змея во Flash Player.

Примечание: Файлы с изображениями всех моделей и цветов змеев находятся в Вашей директории My_kite.

В дополнение к функции, которую предстоит создать, воспользуемся командой Include для связи с другой функцией во внешнем текстовом файле.

Примечание: В задачи этого Учебника не входит обучение синтаксису ActionScript. См. ActionScript Help для получения дополнительной информации о создании ActionScript.

Создание функции.

Назовем создаваемую функция refreshKite.

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



1 В слое actions линейки, дважды щелкните на ключевом кадре в кадре № 1.
Откроется панель Frame Actions. В случае необходимости, измените размеры панели, чтобы видеть оба окна. В правом окне уже содержится команды ActionScript, к которым необходимо будет добавить новые команды.

2 В левом списке команд нажмите на значок Actions для его раскрытия и дважды щелкните на команде function.

Можно просто перетащить команду function вниз имеющегося в правом окне текста с кодом.

3 В строке Name (имя) введите refreshKite.

4 В строке Parameters (параметры), введите currentKite.
Функция будет использовать параметр currentKite (текущий выбор змея) для идентификации змея, предназначенного к показу.

5 В категории Actions, дважды щелкните на loadMovie.
Эта команда заменяет мувиклип на сцене, на SWF, определенный ее параметрами.
6 В строке URL введите currentKite+".swf"
7 Включите опцию Expression (выражение), расположенную справа от этого поля ввода.
Включая опцию Expression, вы сообщаете Flash'у, что currentKite + ".swf" на литеральная строка, а выражение. Функция использует это выражение для определения имени внешнего файла.

8 В списке Location выберите Target, а в правом поле введите demoKite.
Как Вы должны помнить из предыдущих шагов, имя экземпляра placeholderKite есть demoKite.
9 Удостоверьтесь, что в списке Variables указано Don't Send.
10 В левом списке команд дважды щелкните на set variable, для определения новой переменной.
Переменная является неким контейнером, хранящим информацию. Например, такую, как тип выбранного змея. В Вашем клипе она будет использоваться для хранения именно этой информации
11 В поле Variable введите chosenKite - имя новой переменной. Убедитесь, что опция Expression, справа от поля ввода, отключена.
12 В поле Value введите currentKite. Включите опцию Expression, справа от поля ввода.

<


Включение внешней функции

Вы узнали, что функция состоит из команд, выполняющих задачи, на основании информации, получаемых от параметров. Теперь Вы включите в Ваш ActionScript внешнюю функцию, которая покажет счет, соответствующий выбранному змею. Внешняя функция, названная kiteFunction.txt, находится в текстовом файле в директории Tutorial/My_kite. Для связи с внешним файлом воспользуйтесь командой Include.

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

Внешняя функция демонстрирует, насколько кратким, но мощным может быть ActionScript:

function generateInvoice (Style, Color, Price, currentKite) { _root.invoice.invoiceStyle = Style;

_root.invoice.invoiceColor = Color;

_root.invoice.invoicePrice = Price;

flyingKite = currentKite; }

Однако, обратите внимание, что эта функция не прокомментирована. Хорошая идея снабдить Ваш ActionScript комментариями, примечаниями о цели скрипта и его действиях, облегчающими его понимание. Ниже приведен текст той же функции с такими пояснениями. Комментарии в ActionScript помещаются после двойного слэша (//), все находящееся после него до конца строки, игнорируется интерпретатором Flash.

function generateInvoice (Style, Color, Price, currentKite) { //Sets the invoiceStyle variable of the invoice movie clip to the //value of the Style parameter _root.invoice.invoiceStyle = Style; //Sets the invoiceColor variable of the invoice movie clip to the //value of the Color parameter _root.invoice.invoiceColor = Color; //Sets the invoicePrice variable of the invoice movie clip to the //value of the Price parameter _root.invoice.invoicePrice = Price; //Sets the variable flyingKite equal to the variable currentKite flyingKite = currentKite; }

Теперь добавьте команду include, которая свяжет, созданную Вами внутреннюю функцию, с внешней функцией.

1 В категории Actions панели Frame Actions, перетащите значок include в конец текста в правом окне.
2 В поле Path введите KiteFunction.txt.



3 Закройте панель Frame Actions.
Note: Не забывайте почаще сохранять Вашу работу.


Содержание раздела