在as3中的类的根时间线上初始化的var

时间:2010-09-29 01:02:37

标签: actionscript-3

嗨,我在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”值?

1 个答案:

答案 0 :(得分:0)

类应以首字母大写开头。 如果无论如何都可以访问root,为什么还要引用root。您还应该在构造函数中跟踪是否设置了值。