Actionscript 2.0 if和else函数不起作用?

时间:2015-11-23 09:03:48

标签: flash actionscript actionscript-2

我在我的按钮上使用这个脚本:

   on(release){
var body2:Boolean = true; 
answerField = body2
var body1:Boolean = false;
var body3:Boolean = false; 

gotoAndStop(2);
}

我的第二个按钮上有这个脚本:

on (release) {
if (body1=true) {
   gotoAndStop(4);
} else if (body2=true) {
    gotoAndStop(5);
} else {
  gotoAndStop(6);  
}
}

然而由于某些原因,即使body2 = true,我也无法通过第二个按钮将我带到第5帧。

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您的代码无效,因为您只是使用了一个赋值运算符(=)而不是==语句中的比较运算符if,它们可以是:

if (body1 == true) {            // you can write it : if(body1){}
    gotoAndStop(4);
} else if (body2 == true) {     // you can write it : if(body2){}
    gotoAndStop(5);
} else {
    gotoAndStop(6);  
}

有关ActionScript运算符的更多信息,请查看here

此外,您的Boolean应使用_global全局声明,以便在代码中的任何位置都可访问,或者在主时间轴中可以使用_root.my_var进行访问,并在声明时使用_root.my_button.myvar在MovieClip或Button代码中,您可以使用button1 ...

来调用它们

所以在你的情况下,假设你的第一个按钮叫if (_root.button1.body1) { gotoAndStop(4); } else if (_root.button1.body2) { gotoAndStop(5); } else { gotoAndStop(6); } ,你的另一个按钮的代码可以是这样的:

_global

修改:

使用button1

的示例

on (release) { _global.body2 = true; _global.body1 = false; _global.body3 = false; } 上的代码:

button2

on (release) { trace(body2); // gives : true trace(body1); // gives : false } 上的代码:

ggplot2

希望可以提供帮助。