Метод stop() ActionScript. Остановка фильма

В этом уроке мы рассмотрим 2 вопроса:

  1. Остановка фильма – метод stop() ActionScript
  2. Дополнительная информация

Прежде ем перейти к рассмотрению метода stop() ActionScript в этом уроке скажу несколько слов об анимации вообще. Flash создает анимацию по такому же принципу, что и обычное кино. В обоих случаях статическое изображение помещается в кадр. Затем, в следующем кадре картинка немного меняется, в следующем тоже и т.д. Когда же все эти кадры воспроизводятся на опреленной скорости, то создается иллюзия движения. В некотором смысле наши глаза и мозг становятся «жертвой обмана», принимая серию статичных изображений за настоящее движение. Этот феномен известен как инертность зрительного восприятия.

Во Flash Вы можете контролировать эти изменения на шкале времени (Timeline). Она является одной из панелей его интерфейса. Timeline показывает все кадры (frame) flash-фильма, число которых может достигать 16 000. Flash Player воспроизводит кадры с заданной скоростью. Во Flash CS5, по умолчанию, скорость равна 24 кадрам в секунду, но эту цифру можно изменить на нужную в любой момент. Во время показа ролика головка плейера воспроизводит каждый кадр.

Помимо простых кадров (frame) Вы можете добавлять/содавать на шкале времени ключевые кадры (keyframe), которые являются своеобразными контейнерами. В них можно менять информацию о позиции, цвете, прозрачности, размере и других свойствах объектов на сцене (Stage). С помощью AS3 (ActionScript) Вы можете контролировать поведение головки плейера. По умолчанию Flash Player зацикливает воспроизведение ролика, т.е. сразу после его окончания начинает показывать снова.

Для того чтобы изменить такое поведение головки плейера используется метод stop() ActionScript. Его нужно добавить в ключевой кадр ролика на котором Вы хотите его остановить. Метод stop() не является глобальным, следовательно не может быть вызван из любой части кода. Он является методом класса MovieClip, от которого и наследуется класс MainTimeLine. Именно объект класса MainTimeLine создается при запуске flash-ролика. При редактировании кода для кадра можно опускать приписку this, но все равно при каждом stop() подразумевается this.stop(), при addChild() - this.addChild() и т.д.

Метод stop() ActionScript. Остановка фильма

Содание движущегося объекта во Flash CS5

Создайте объект на сцене с помощью любого из инструментов рисования.

Выберите инструмент выделения (selection tool) и щелкните на объекте, который только что нарисовали.

Нажмите F8. Появится диалоговое окно Convert to Symbol (конвертация в символ).

Присвойте имя символу, выберите тип MovieClip и нажмите OK.

Щелкните на символе правой кнопкой мыши. В появившемся контекстном меню щелкните на пункте Create Motion Tween (создать Motion Tween).

создать Motion Tween

Flash добавит Motion Tween на шкалу времени.

Motion Tween на шкале времени

Перетащите объект в новое положение на сцене.

Перетаскивание объекта на сцене

Использование метода stop() ActionScript

Создайте новый слой – щелкните на кнопке New Layer (новый слой).

Кликните правой кнопкой мыши кадр, на котором Вы хотите остановить движение. В нашем случае это будет кадр 25.

выбор ключевого кадра на слое Actions

В контекстном меню кликните на Insert Keyframe (вставить ключевой кадр).

Откройте панель Actions (см. урок «Использование панели Actions»)

Наберите stop();

stop actionscript

Нажмите Ctrl + Enter.

Flash Player начнет воспроизводить ролик. Созданная анимация остановится на кадре, который Вы определили.

Дополнительная информация

После того как головка проигрывателя остановилась, Вы можете запустить ее снова с помощью глобального метода play(). Так же как и stop() ActionScript этот метод не принимет аргументов, т.к. он не нуждается в какой-либо дополнительной информации: он просто начинает свою работу с кадра, на котором остановилась головка проигрывателя и продолжает двигаться дальше.

Motion Tween – это наиболее часто используемый тип анимации. Во время его создания Вы определяете начальный и конечный кадры для экземпляра, который должен быть анимирован, а Flash просчитывает все промежуточные. Применять Motion Tween можно только к символам (symbol) и тексту (text field)!

Кроме Motion Tween существует еще два типа анимации, используемые при работе во Flash: Shape Tween (анимация формы) и покадровая анимация (fram-by-frame animation). Shape Tween очень похож на Motion Tween: в нем так же назначаются начальный и конечный кадры. Однако, shape tween применяется только к нарисованным формам, а не к символам и тексту. Покадровая анимация третий и наиболее затратный по времени тип создания анимации, т.к. Вы рисуете каждый кадр сами.