2010-02-17 129 views
0

我还有一个影片剪辑中的动画片段。我给孩子movieClip实例名称“hSprite”,并将其添加到父级movieClip阶段。现在我收到如下错误。访问儿童影片剪辑的FlashDevelop

[Fault] exception, information=ReferenceError: Error #1056: Cannot create property hSprite on com.objects.Hero. 

如果我从儿童影片剪辑删除实例名称,那么错误消失。但是当我添加实例名称时,错误再次出现。

请记住,这两个类都设置为导出。

父类是由完全正常工作的自定义类内嵌。但是,我给孩子movieClip一个实例名称一分钟,错误再次启动。

这里是嵌入父类的类。我最初想要做的就是访问孩子的MovieClip是在英雄符号

package com.objects 
{ 
    import flash.display.MovieClip; 
    import flash.events.*; 
    /** 
    * ... 
    * @author Anthony Gordon 
    */ 
    [Embed(source='../../../bin/Assets.swf', symbol='Hero')] 
    public class Hero extends GameObject 
    { 
     private var aKeyPress:Array; 
     private var jumpDisabled:Boolean = false; 
     //private var heroSprite:MovieClip; 

     public function Hero() 
     { 
     wY = 150; 
     wX = 90; 
     speed = .5; 
     aKeyPress = new Array(); 
     TheGame.sr.addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener); 
     TheGame.sr.addEventListener(KeyboardEvent.KEY_UP,keyUpListener); 
     } 

     private function keyDownListener(e:KeyboardEvent):void { 
      //trace("down e.keyCode=" + e.keyCode);   
      aKeyPress[e.keyCode]=true; 
     } 

     private function keyUpListener(e:KeyboardEvent):void { 
     //trace("up e.keyCode=" + e.keyCode); 
     aKeyPress[e.keyCode]=false; 
     } 

     override public function UpdateObject():void 
     { 
     Controls(); 
     updatePosition(); 
     } 

     private function Controls():void 
     { 

     if (aKeyPress[38])//Key press up 
      ;//dy -= speed;   
     else if (aKeyPress[40])//Key press down 
      dy += speed; 

     if (aKeyPress[37])//left 
     { 
      dx -= speed; 
     } 
     else if (aKeyPress[39])//Right 
     { 
      dx += speed; 
     } 

     if (aKeyPress[32]){//space 
      jump(); 
     } 


     }//End Controls 

     private function jump():void 
     { 
     if (!jumpDisabled) 
     { 
      if (onGround) 
      { 
       dy = -15; 
       jumpDisabled = true; 
      } 
     } 
     else 
     { 
      jumpDisabled = false;    
     } 
     } 
    } 

} 

回答

2

你需要做的hSprite夹一个公共变量的类。

public var hSprite:MovieClip; 
+0

你是绝对正确的!我感谢你! – numerical25 2010-02-17 03:10:42