2014-11-16 3 views
0

: http://www.kongregate.com/forums/90-kongregate-apis/topics/199155-quickkong-easy-kong-api-integrationAS3 - 오류 1120 : 정의되지 않은 속성 단계의 접근은 내가 여기에 설명 된 바와 같이, 내가 만들고있어 게임에 QuickKong 클래스를 추가하기 위해 노력하고있어

클래스를 호출하려면 사용

QuickKong.connectToKong(stage); 

그러나 저를주고 계속 :

error 1120: Access of undefined property stage. 

어떤 제안? 감사!

답변

3

무대는 DisplayObject의 속성입니다. DisplayObjectStage에 없으면 스테이지 속성은 undefined입니다.

따라서 QuickKong.connectToKong(stage);을 실행할 때 스테이지를 사용할 수 있어야합니다.

문서 클래스의 생성자에서이 작업을 수행하면 정상적으로 작동합니다. 스테이지 속성이없는 다른 클래스에서이 작업을 수행하려고 할 가능성이 있습니다. 이에서를 실행하려는 클래스가 확장되면

DisplayObjectMovieClip이나 Sprite 당신이 당신의 QuickKong 코드를 실행 한 후이 단계에 추가 될 때 수신 할 수 있습니다. 이처럼 :

package { 

import flash.display.MovieClip; 
import flash.events.Event; 

public class Test extends MovieClip { 


    public function Test() { 
     addEventListener(Event.ADDED_TO_STAGE, onAdded); 
    } 

    private function onAdded(e:Event):void{ 
     // now the stage is available 
     QuickKong.connectToKong(stage); 
    } 
} 

}

자, 어떤 이유로 당신은 그 클래스의 생성자에 무대에 대한 참조를 통과해야 무대에 액세스 할 수있는 클래스에 QuickKong 코드를 실행하지 않는 경우, 다음과 같이하십시오 :

var someClass:SomeClass = new SomeClass(stage); 

마지막으로 문서 클래스에서 정적 변수 참조를 만들 수 있습니다. 이처럼 :

package { 

import flash.display.MovieClip; 

public class Main extends MovieClip { 


    public function Main() { 
     Main.stage = stage; 
    } 

} 

} 이제

, 당신은 말할 수 : Main.stage 어디 코드에서 당신이 무대에 대해 이야기해야 할 때 :

QuickKong.connectToKong(Main.stage); 
+0

이 바른 길에 저를 얻었다 - 감사! – jdfinch3

+0

위대하고 기꺼이 도와주었습니다. – Zevan