在flash中,我创建了一个按钮并给出了此代码的按钮(在AS1-AS2中)
on (release)
{
gotoAndPlay(5);
tellTarget("/Anim") //'Anim' is just short form for 'an animation'
{
gotoAndPlay(5);
} // End of TellTarget
}
由于你不能在AS3中给出特定的按钮动作,我给了按钮一个实例名称(按钮实例名称现在是'runButton'),然后决定在动作层中执行此操作。
runButton.addEventListener(MouseEvent.CLICK, startAnimation);
function startAnimation(event:MouseEvent){
gotoAndPlay(5);
tellTarget("/Anim")
{
gotoAndPlay(5);
} // End of TellTarget
}
但它给了我一个错误,说明在
之后预计会出现'{'function startAnimation(event:MouseEvent):void {
行,它说最后一行有一个意外的'}'。知道如何解决这个问题吗?
注意:Anim是主时间轴上的动画片段。当我双击Anim movieclip时,它有自己的时间轴。我希望时间轴与主时间轴一起播放,因此'gotoandPlay(5)然后执行'tellTarget(Anim')后的其他gotoAndPlay。
答案 0 :(得分:1)
使用“with”代替tellTarget。但我根本不推荐这个。 代替:
this[ "/Anim" ].gotoAndPlay(5);
答案 1 :(得分:1)
类似于Discipol的回答,虽然我认为你需要先投射到电影剪辑:
MovieClip(this[ "/Anim" ]).gotoAndPlay(5);
答案 2 :(得分:0)
tellTarget
已弃用
function startAnimation(event:MouseEvent):void{
runButton.gotoAndPlay(5);
//that slash in the beginning of name (/Anim) I have no idea what to do with,
//basically it used to tell a moveiclip named "/Anim" to "gotoAndPlay" however,
//that is an invalid name so you probably have to change the name of it inside
//Flash unless I'm missing some kind of awesome legacy from old AS1/AS2.
runButton.Anim.gotoAndPlay(5);
}
runButton.addEventListener(MouseEvent.CLICK, startAnimation);
答案 3 :(得分:0)
好的找到了答案,结果我需要改变
tellTarget("/Anim") //'Anim' is just short form for 'an animation'
{
gotoAndPlay(5);
} // End of TellTarget
到
Anim.gotoAndPlay(5)
并且有效。