嗨,我在as3上的新东西,它让我如此沮丧,因为as2的这么多变化。当我想从类文件中更改变量值时,我有问题,这里是详细信息。
在根时间轴第2帧上,我初始化了var,如下所示
stop();
var gameStat;
gameStat = "stop";
然后我将企鹅电影剪辑附在舞台上, 我创建了一个名为“penguin.as”的类文件
//untuk hero penguin
package {
import flash.display.MovieClip;
import flash.events.Event;
public class penguin extends MovieClip {
var rootref:Object = root;//mendefinisikan root dengan rootref
public function penguin() {
rootref.gameStat = "play";//change var value to play
addEventListener(Event.ENTER_FRAME,on_enter_frame);//tmbhkn enterFrame function
}//eof penguin()
private function on_enter_frame(e:Event) {
trace(rootref.gameStat);//<- test the variable here
//trace(this.parent.parent.parent.gameStat);
}
}//eof class
}
我在on_enter_frame函数中跟踪gameStat var,但它仍然给我“停止”结果而不是“播放”。 任何帮助如何更改“gameStat”值?
答案 0 :(得分:0)
类应以首字母大写开头。 如果无论如何都可以访问root,为什么还要引用root。您还应该在构造函数中跟踪是否设置了值。