2013-08-26 2 views
0

Bonjour cher Stackoverflowers! Voici mon problème ...1120: Accès à une propriété indéfinie - déplacement de la fonctionnalité vers un package externe

J'essaie de déplacer certaines fonctionnalités de base pour mon objet à un paquet externe.

J'ai un élément MovieClip dans ma bibliothèque avec le nom mcUnit: qui est en fait un rectangle F8-ed dans Move Clip. Je suis en train de définir le lien AS sur le paquet que je veux utiliser: clGameUnit;

Voici une partie du code clGameUnit:

package 
{ 
    import flash.display.MovieClip; 
    import flash.geom.Point; 
    import flash.events.MouseEvent; 

    public class clGameUnit extends MovieClip 
    { 

      // Declaring all local object related variable 
     var clGU:MovieClip = new MovieClip(); 
     var isOver:Boolean = false; 

     // Declaring all global object related variable 
     public var b_u_Selected:Boolean = false; 
     public var p_u_Coordinates:Point = new Point(); 
     public var u_Image:int = 0; 

     //Declaring all object related methods 
     clGU.addEventListener (MouseEvent.CLICK, on_Object_LClick); 
     clGU.addEventListener (MouseEvent.MOUSE_OVER, onObjectMouseOver); 
     clGU.addEventListener (MouseEvent.MOUSE_OUT, onObjectMouseOut); 
     clGU.addEventListener (MouseEvent.RIGHT_CLICK, on_Object_RClick); 

     public function clGameUnit() 
     { 
     } 

       .... 
    } 
} 

Et l'erreur, je l'obtiens:

1120: Access of undefined property clGU. 
1120: Access of undefined property on_Object_LClick. 
1120: Access of undefined property ... [other event listeners functions] 

tout déjà essayé. Même en faisant le constructeur envoyer l'objet à la propriété non définie clGU:

public function clGameUnit (obj: MovieClip) 
{ 
    clGU = obj; 
} 

Et sur la ligne de temps, j'appeler ce constructeur manuellement:

var mcGameObj: clGameUnit = new clGameUnit (mcGUnit); 

mcGUnit est le nom de l'instance pour l'instance mcUnit que j'assigne dans les propriétés. Ici, la chose est devenue encore plus compliquée alors j'ai jeté cette variante.

S'il est nécessaire de télécharger mon projet, je le ferai volontiers!

Vraiment besoin de votre aide fellaz!

Répondre

1

Mettez ces lignes en fonction

clGU.addEventListener (MouseEvent.CLICK, on_Object_LClick); 
clGU.addEventListener (MouseEvent.MOUSE_OVER, onObjectMouseOver); 
clGU.addEventListener (MouseEvent.MOUSE_OUT, onObjectMouseOut); 
clGU.addEventListener (MouseEvent.RIGHT_CLICK, on_Object_RClick); 

Par exemple

public function clGameUnit() { 
    init(); 
} 

private function init():void { 
    clGU.addEventListener (MouseEvent.CLICK, on_Object_LClick); 
    clGU.addEventListener (MouseEvent.MOUSE_OVER, onObjectMouseOver); 
    clGU.addEventListener (MouseEvent.MOUSE_OUT, onObjectMouseOut); 
    clGU.addEventListener (MouseEvent.RIGHT_CLICK, on_Object_RClick); 
} 
+0

Il a travaillé Man! Domo Arigatou! –

+0

Je suis content que ça aide :) – Pan

Questions connexes