我创建了一个动画(右键单击时间轴并创建动画)并为其指定了一个对象名称。如果我调用tank.stop(),动画将成功停止。但是,如果我调用tank.body.stop(),它将无法正常工作。
有两个对象名称 - 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 :(得分:1)
从上下文菜单创建的动画是AnimatorFactory类的实例。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/motion/AnimatorFactory.html
无法控制它们(开始/停止)。
您需要使用movieclip树的经典方案。 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();
如果你有一些动画并希望将它们转换为movieclip:
也许有更快的方法,但我不知道它们......