如何在flash中开发补间动作?

时间:2011-08-05 13:03:05

标签: flash actionscript-3 actionscript

我有一个flash电影如下。

enter image description here

当我点击mc_8(或任何其他mc_?)与补间如下时,我想做一个动作。

enter image description here

您能否建议使用AS3和AS2开发此教程或方法?

提前谢谢。

修改

如果从mc_8点击其他mc,所有电影都必须移动,而不是缩放。

2 个答案:

答案 0 :(得分:1)

看一看greensock http://www.greensock.com/tweenlite。 您可以将鼠标单击处理程序添加到mc_ *容器中,并将其补间为:

TweenLite.to(mc, 1, {transformAroundPoint:{point:new Point(250,218), scaleX:0.5, scaleY:0.5}, ease:Bounce.easeOut});

答案 1 :(得分:0)

预> 您可以使用greensock框架来实现补间效果。 假设有一个名为mcsBox的MovieClip包含你所有的mc_ *: `

import flash.events.MouseEvent;
import greensock......;

mcsBox.addEventListener(MouseEvent.CLICK,function(e:MouseEvent):void
{
  var yourMc:MovieClip = e.target as MovieClip;
  if (yourMc && -1 != yourMc.name.indexOf('mc_'))
  {
     for (var i:int = 1; i < 19; i++)
     {
        var mc_n:MovieClip = mcsBox.getChildByName('mc_'+i) as MovieClip;
        if (mc_n == yourMc) continue;       
          var anyWhereX:number = Math.random() * 600; //  I don't know where you wish to go
          var anyWhereY:number = Math.random() * 600;  // same as above
        TweenLite.to(mc, 1, {transformAroundPoint:{point:new Point(anyWhereX,anyWhereY)}, ease:Bounce.easeOut});          

      }
  }
});

` // ------------------ 上面的代码可能无法正常运行。你可以优化它。