Создание сценария для кадра

Создание сценария для кадра

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

Как правило, все кадры, которым назначены действия, стараются поместить в отдельном слое. Это облегчает тестирование и редактирование фильма.

Чтобы связать с кадром некоторый сценарий, необходимо:

  1. Щелкнуть правой кнопкой мыши в ячейке кадра и в контекстном меню выбрать команду Actions (если выбранный кадр не является ключевым, то действие будет назначено предшествующему ключевому кадру) или в нижней части экрана активировать одноименную панель .
  2. В списке Actions открыть раздел Global Functions и требуемый подраздел Timeline Control.
  3. Дважды щелкнуть мышкой на действии, которое вы хотите назначить кадру; при этом в окно сценария будет помещена соответствующая конструкция на языке ActionScript.

Имейте в виду, что действия, назначенные кадру, в режиме редактирования не работают. Чтобы протестировать фильм, необходимо в меню Control выбрать команду Test Movie (или Test Scene).

В качестве примера рассмотрим назначение кадру действия goto, входящего в подраздел Movie Control или Timeline Control . Результатом его выполнения является переход к заданному кадру или сцене. Переход к одному из предыдущих кадров фильма обеспечивает циклическое повторное воспроизведение соответствующего фрагмента фильма.

На самом деле действия goto как такового не существует, в ActionScript используются два действия, реализующие два варианта перехода на требуемый кадр или сцену: gotoAndPlay (Перейти и воспроизвести) и gotoAndStop (Перейти и остановить).

Для обоих вариантов перехода предусмотрены следующие параметры:

  • Scene (Сцена) - задает сцену, на которую требуется перейти, или на которой расположен кадр, на который требуется перейти; значение параметра выбирается с помощью раскрывающегося списка, который содержит четыре основных пункта:
    • <current scene> — текущая сцена;
    • <next scene> — следующая сцена; переход возможен только на первый кадр следующей сцены;
    • <previous scene> - предыдущая сцена; переход возможен только на первый кадр предыдущей сцены;
      Scene 1 — имя, используемое по умолчанию для первой сцены фильма; если фильм содержит более одной сцены, то в список автоматически добавляются их имена;
  • Туре (Тип) — задает способ указания кадра, на который требуется перейти; значение параметра выбирается с помощью раскрывающегося списка, который содержит пять пунктов:
    • Frame Number (Номер кадра) — кадр задается его порядковым номером на временной диаграмме; номер кадра должен быть указан в расположенном ниже поле Frame;
    • Frame Label (Метка кадра) — кадр задается его меткой (именем); метка для кадра должна быть предварительно указана в поле Label панели инспектора свойств;
    • Expression (Выражение) - номер или метка кадра определяются как результат вычисления выражения; выражение должно быть введено в расположенном ниже поле Frame;
    • Next Frame (Следующий кадр) - переход выполняется на следующий кадр той же сцены;
    • Previous Frame (Предыдущий кадр) — переход выполняется на предыдущий кадр той же сцены.

Пара переключателей gotoAndPlay (Перейти и воспроизвести) и gotoAndStop (Перейти и остановить) определяет операцию, выполняемую после перехода на заданную сцену или кадр: после перехода воспроизведение фильма либо продолжается (возобновляется), либо приостанавливается.

Основная команда, которая используется чаще всего - Stop. Для остановки всего фильма, чтобы передать управление пользователю.

Комментарии и метки кадров

Вы учились работать со слоями, я рассказала, как изменять их имена. Задание слою индивидуального имени очень помогает при работе, особенно если слоев очень много. Но имя может быть не только у слоя, но и у кадра, только называется оно - меткой. Кроме того, у кадра может быть и комментарий. Метки и комментарии тоже помогают при работе с проектом. Но если имена слоев необходимы создателю фильма для более простой ориентации между ними то, комментарии кадров помогают разобраться при сложном сценарии, а метки просто незаменимая вещь, когда Вы применяете ActionScript. Давайте научимся создавать метки и комментарии, а затем применять еще одно действие языка скриптов.

Что же такое комментарии и метки кадров:

Комментарии - описывают назначение ключевого кадра или фрагмента сценария, для лучшего понимания последующего действия. Необходимы, главным образом, для автора.

Метки - предназначены для удобства программирования и служат своеобразными точками вызова, т.е. идентификаторами кадра.

Поясню на примере: если, создавая свой фильм, Вы задали для одной из кнопок, или действию на ввод информации пользователем, переход на какой-то кадр, например 162, а затем отредактировали предыдущие кадры таким образом, что данное действие передвинулось, например на 173-й кадр, то Вам придется искать все места в скрипте где упоминался 162-й кадр. Программисты знают, что самый простой выход в данном случае - использование имени функции или подпрограммы. Метка, как раз и является своеобразным именем подпрограммы. Если в скрипте будет фигурировать имя метки, то где бы ни был кадр с данной меткой, Flash передаст управление именно на него.

  1. Откройте любой ранее созданный проект.
  2. На любом ключевом кадре щелкните левой кнопкой мыши.
  3. Посмотрите на окно Properties поле ввода Frame (Фрейм).
  4. В поле <Fame Label> (Ярлык) введите имя метки.

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

Задание

А теперь, как обычно, закрепим знания на практике.

  1. Создайте новый ролик.
  2. Нарисуйте кубик.
  3. Вставьте пустой фрейм (например, 10) Insert / Blank Keyframe [F7].
  4. Нарисуйте круг, закрасив его круговой градиентной заливкой придав ему форму шара.
  5. Вставьте пустой фрейм (например, 20).
  6. На ключевом кадре с кубом задайте метку "kub".
  7. Задайте таким же образом ключевому кадру с изображением шара, метку - "shar".
  8. Вставьте новый слой щелкните на кнопке нового слоя, под списком слоев на Timeline.
  9. Подготовим к работе символ кнопки.
  10. Перенесите на сцену Вашу кнопку два раза, создав тем самым два ее экземпляра.
  11. На одной кнопке напишите - кубик.
  12. На второй - шар.

Теперь назначим управление для кнопок.

  1. Щелкните правой кнопкой мыши по кнопке с надписью "Шар".
  2. Вызовите панель Action, откроем ее.
  3. Откроем список действий.
  4. Выбираем команду goto (перейти к…).
    Появится следующий скрипт:

    on (release) {
    gotoAndPlay (1);
    }

В верхней части, как всегда, дополнительные настроечные параметры:

В выпадающем меню Scene, можно выбрать сцену перехода - текущую, предыдущую, следующую или сцену с собственным именем (о сценах в следующих темах).

Кроме сцены мы можем задать переход по:

Frame - кадру, в поле Number - введите номер кадра.

Label - метке, в выпадающем меню будет список установленных Вами меток.

Next Frame - следующему кадру.

Previous Frame - предыдущему кадру

И еще одна галочка Control (Переход и воспроизведение), которая меняет команду с "Go to and Stop" на "Go to and Play".

  1. Установите переход по метке "shar".
  2. Задайте реагирование на нажатие мыши и клавиши "S".

Окончательный вид скрипта:

on (release, keyPress "S") {
gotoAndStop (shar);
}

Для второй кнопки создайте аналогичным образом переход на метку "Куб" и реагирование на нажатие мыши и клавиши "С".

Запустите Ваш фильм. Он начал сразу проигрываться. Задайте команду stop на ключевых кадрах. В предыдущей главе было описано как это сделать.

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

Вы можете теперь реализовать вот такой пример (используя переход на следующий, предыдущий кадр, метки http://avtopd.bget.ru/master3/master3.) знаний вам вполне хватит.

Назад                                                                                                                                                                                                                Далее

Last modified: Wednesday, 16 September 2015, 10:40 AM