2015-01-05 2 views
0

정말 CreateJS를 좋아하지만 AS3의 기본 기능이 작동하지 않거나 작동하지 않는다고 분노하고 있습니다. 다음은 간단한 예입니다.CreateJS play child 무비 클립 타임 라인

저는 MovieClip에서 오른쪽에서 왼쪽으로 움직이는 간단한 애니메이션을 가지고 있습니다. 나는 첫 번째 프레임에

this.stop(); 

다음 마지막 프레임의

this.stop(); 

있습니다.

나는 그 기본 타임 라인에게 MC 드래그, 그것을 "main_mc"다음 함수를 만들라고 초기화()

function init() 
{ 
    this.main_mc.play(); 
} 

init(); 

의 인스턴스를 줄입니다 오류가 나는 얻을 :

catch되지 않은 형식 오류를 : 정의되지 않은 '재생'속성을 읽을 수 없습니다

아이디어가 있습니까?

답변

0

@thatkidrich 문제는 "this"가 창으로 범위가 지정되어 있고 'main_mc'이 창 개체에 나타나지 않는다는 것입니다. 인스턴스를 참조하려면 현재 FLA 스테이지에있는 모든 인스턴스에 대한 참조를 제공하는 'exportRoot'객체를 사용해야합니다. FLA 내에서 JS를 코딩 할 것을 권장하지 않으며, 내 보내진 JS 만 사용하여 자산을 구성합니다. 귀하의 경우에는 HTML 내에서 코드를 통해 'main_mc'를 제어 할 것입니다.

예 :

function init() { 
canvas = document.getElementById("canvas"); 
exportRoot = new lib.Balltimeline(); 

stage = new createjs.Stage(canvas); 
stage.addChild(exportRoot); 
stage.update(); 

//This will give you a reference to your MC on stage. 
var mc = exportRoot.main_mc; 
mc.play(); 

createjs.Ticker.setFPS(lib.properties.fps); 
createjs.Ticker.addEventListener("tick", stage); 

}