2013-03-01 6 views
0

Я создал анимацию (щелкните правой кнопкой мыши по временной шкале и создайте анимацию) и дайте ей имя объекта. Если я вызову tank.stop(), анимация остановится успешно. Однако, если я вызову tank.body.stop(), это не сработает.Как остановить анимацию определенного мувиклипа

Существует 2 имени объекта - имя объекта movieClip И имя самой анимации. Я не знаю, как остановить анимацию определенной части, а не всех частей. Если я напишу tank.animObjectName.stop(), я получаю сообщение об ошибке.

// If I stop animating the main movieclip then all the child will stop 
// animating also 
main movieclip -> 
{ 

    head //how to stop animating head? 

    body //how to stop animating body? 

    legs //how to stop animating legs? 


} 
+0

I тест a as3 без проблем. вы имеете в виду as2? –

+0

Я имею в виду adobe flash (cs5), щелкните слой, на котором создана анимация, затем посмотрите на вкладку свойств, там вы увидите поле, где нужно поместить имя анимации, имя объекта этой анимации - тип AnimationFactory, Я не знаю, как остановить анимацию, используя ее – Hello

ответ

1

Созданный из контекстного меню анимации являются экземплярами класса AnimatorFactory. http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/motion/AnimatorFactory.html

Нет возможности контролировать их (запуск/останов).

Вам нужна классическая схема дерева мульчипов. Root - основной мувиклип со всем содержимым. Каждая анимированная часть - мувиклип с анимацией внутри корневого клипа. Пример:

tank (no animation, only child movieclips, 1 frame at all) 
--body (movieclip with animation of body inside) 
--weapon (movieclip with animation of gun inside) 
--banner (movieclip with animation of banner inside) 

Для остановки кузова напишите tank.body.stop(); Тело остановится, но оружие и баннер будут играть. Если вы хотите, чтобы остановить все части, команды писать для всех частей:

tank.body.stop(); 
tank.weapon.stop(); 
tank.banner.stop(); 

Если у вас есть некоторые анимации и хотите, чтобы преобразовать их в мувиклип:

  1. Выбор рамки вашего аминирования с помощью мыши. Вы можете выбрать кадры в нескольких слоях одновременно, используйте SHIFT ключ т.д.,
  2. В контекстном меню выберите Вырезать кадры
  3. Создать новый мувиклип в библиотеке
  4. Выберите 1-й кадр, в контекстном меню выберите команду Вставить кадры
  5. Вернуться на главный мувиклип , создать слой, если нужно
  6. Drag мувиклип из библиотеки (шаг 3) в кадре место в правильном положении

Может быть, есть более быстрый способ, но я не знаю их ...

+0

, когда вы нажимаете на шкале времени, в которой создается анимация, на вкладке свойств вы увидите «дать имя анимации», я использую это имя, я могу остановить анимацию, но это дает мне ошибку – Hello

+0

Извините, вы можете указать имя экземпляра анимации, и это будет экземпляр класса AnimatorFactory. Вы не можете запускать или останавливать их, вы можете изменить некоторые свойства и добавить новую цель в анимацию ... http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/motion/AnimatorFactory.html – Smolniy

+0

Извините, не могли бы вы exaplain немного detailer о замене слоя анимации тела мувиклипом, содержащим анимацию, – Hello

Смежные вопросы