Actionscript 3 动作脚本3.循环动画3次并停止
我在Flash横幅上工作,我希望动画循环3次,然后停止。我不知道动作脚本,但我发现了以下代码: 在第一帧中,我使用了以下内容:Actionscript 3 动作脚本3.循环动画3次并停止,actionscript-3,Actionscript 3,我在Flash横幅上工作,我希望动画循环3次,然后停止。我不知道动作脚本,但我发现了以下代码: 在第一帧中,我使用了以下内容: _root.loops_played = 0; if (_root.loops_played >= 3){ stop(); //* } else { play(); } 在最后一帧: _root.loops_played += 1; 不幸的是,动画不断循环,我得到了以下错误: Scene 1, Layer 'actions', Frame 1, Li
_root.loops_played = 0;
if (_root.loops_played >= 3){
stop(); //*
} else {
play();
}
在最后一帧:
_root.loops_played += 1;
不幸的是,动画不断循环,我得到了以下错误:
Scene 1, Layer 'actions', Frame 1, Line 1 1120: Access of undefined property _root.
Scene 1, Layer 'actions', Frame 1, Line 3 1120: Access of undefined property _root.
Scene 1, Layer 'actions', Frame 175, Line 1 1120: Access of undefined property _root.
Scene 1, Layer 'actions', Frame 175, Line 1 1120: Access of undefined property _root.
有人能帮忙吗?编译器明确地告诉您,
\u root
属性未定义。不能使用未定义的特性和对象
\u root
在AS3中不再存在,有一个稍微相似的属性root
。请记住,root
不是全局的。\u root在AS3中不存在。这是一个AS2的东西
不过,要运行当前逻辑,请使用this
而不是\u root
以下是一些代码,对您提供的内容没有太多更改:
第一帧:
if(!this.loops_played) this.loops_played = 1;
if(this.loops_played >= 3) stop(); else play();
最后一帧:
this.loops_played++;
在播放3次后,将此代码放在最后一帧或要停止电影的位置
if(!loopCount){var loopCount:Number = 0;}
loopCount++;
if(loopCount >= 3){stop();}
非常感谢。我还发现:var loopCounter:int=0;loopCounter++;如果(loopCounter<3){gotoAndPlay(2);}成功了!如果局部变量适合您的情况,请使用它。