С помощью условных процедур можно задавать определенные вопросы или проверять выполнение условий. Если условие выполняется Flash будет выполнять определенные действия. Основной условной процедурой является if. Она используется для проверки справедливости данного утверждения. Например, можно выяснить. Загрузился ли последний кадр фильма, Эту информацию можно использовать совместно с повторяющейся анимацией, таким образом сообщая пользователю, что нужно подождать, пока загрузится информация.
ПРИМЕР 12 6: Создание условной процедуры
1.Создайте новый документ Flash.
2.В первых 20 кадрах создайте простую анимацию, которая будет воспроизводиться, пока пользователь ожидает загрузки всего файла. Можно создать 20-кадровую анимацию, в которой мяч перемещается по прямоугольнику.
3.Чтобы сделать файл заведомо большим, в кадры 30-100 добавьте пару фотографий, звуковой файл, символ видеоклипа из предыдущих примеров. Чем больше размер файла, тем дольше он будет загружаться.
4.На временную шкалу добавьте новый слой, в котором будут находиться процедуры, и назовите его Actions.
5.В слое Actions выделите ключевой кадр 1.
6.На панели Actions-Frame в окне Actions Toolbox в классе Actions выберите пункт Conditions/Loops и щелкните дважды по процедуре if. Flash добавит на панель Script следующий код if (<not setyet>) {}.
7. В области параметров в поле Conditions напечатайте _framesloaded>=100. Flash доьавит в строку 1 на панели Script введенное вами условие. В этом примере условие означает: «Загрузились ли 100 кадров фильма?».
8. На панели Script выделите строку 1 и в окне Actions Toolbox выберите команду Actions→Movie Control→goto.Flash добавит в строку 2 на панелиScript процедуру gotoAndPlay(1); и отобразит параметры процедуры goto.
9. В области параметров выполните следующие установки:
- В поле Scene напечатайте <current scene>.
- В выпадающем меню Type выберите пункт Frame Number.
- В поле Frame введите значение 21.
Flash обновит панель Script, чтобы отразить на ней выбранные параметры. В опубликованном фильме перед тем, как начать его воспроизведение, Flash проверяет наличие кадра 100. Если этот кадр присутствует на компьютере пользователя, Flash перемещается в кадр 21 и начинает воспроизведение с него. Если же кадра 100 нет, то Flash переходит в кадр 2 фильма и продолжает воспроизведение.
10. В слой Actions временной шкалы вставьте ключевой кадр в кадр 20 (это последний кадр повторяющейся анимации) и выделите его.
11.На панели Actions-Frame в окне Actions Toolbox выберите команды Acctions→ Movie Control→goto.Flash добавит на панель Script процедуру gotoAndPlay(1);. По умолчанию эта процедура выполняет переход на первый кадр текущей сцены и начинает воспроизведение. Когда красный курсор окажется в кадре 20, Flash перейдет назад, к кадру 1. В этом кадре процедуры кадра снова проверяют наличие кадра 100.
12. В меню Control выберите пункт Test Movie. Flash экспортирует фильм и откроет его в Flash Player.
13. В меню View программы Flash Player выберите пункт Show Streaming. Flash промоделирует то, как фильм будет передаваться в Internet. В результате кадр 100 будет недоступен некоторое время, в течение которого будет повторно прокручиваться анимация.