0

我试图让 onComplete (在这种情况下为第 5 帧)在一系列动画之后跳到给定的帧。这是我到目前为止所写的。这不应该工作吗?

stop();
import gs.TweenMax;

import gs.plugins.*;

TweenPlugin.activate([DropShadowFilterPlugin]);
import fl.motion.easing.*;


TweenMax.from (redSquare_mc, 1, {x: 285, alpha: .5, scaleX:.5 }  );
TweenMax.to(redSquare_mc, 1, {dropShadowFilter:{color:0x000000, alpha:0.5, blurX:17, blurY:18, angle:45, distance:5}});


function firstFrame():void 
{

  TweenMax.from (yellowCircle_mc, 3, {x: 600, scaleX: 1, scaleY: 1, alpha: 1, delay: .125})
  TweenMax.to (yellowCircle_mc, 3, {x: 300, scaleX: .5, scaleY: .5, alpha: .5, ease:Back.easeInOut, delay: 2, onComplete: toNextFrame});

}
firstFrame();

function toNextFrame():void
{
  gotoAndStop("5");
}
4

2 回答 2

4

更改gotoAndStop("5")gotoAndStop(5)。该函数将 Number 参数用于帧号,将 String 参数用于帧标签。

于 2009-11-11T08:20:43.407 回答
1

您必须在函数上发送参数数组才能完美工作。

stop();
import gs.TweenMax;

import gs.plugins.*;

TweenPlugin.activate([DropShadowFilterPlugin]);
import fl.motion.easing.*;


TweenMax.from (redSquare_mc, 1, {x: 285, alpha: .5, scaleX:.5 }  );
TweenMax.to(redSquare_mc, 1, {dropShadowFilter:{color:0x000000, alpha:0.5, blurX:17, blurY:18, angle:45, distance:5}});


function firstFrame():void 
{

  TweenMax.from (yellowCircle_mc, 3, {x: 600, scaleX: 1, scaleY: 1, alpha: 1, delay: .125})
  TweenMax.to (yellowCircle_mc, 3, {x: 300, scaleX: .5, scaleY: .5, alpha: .5, ease:Back.easeInOut, delay: 2, onCompleteParams:[yellowCircle_mc],onComplete: toNextFrame});

}
firstFrame();

function toNextFrame(mc:MovieClip):void
{
  gotoAndStop("5");
}
于 2010-06-01T10:06:48.203 回答