2013-10-17 1 views
1

그래서 화면의 왼쪽 하단에 world라는 이름의 영화 클립이 있습니다.이 영화는 화면을 채우기 위해 모든 블록 영화 클립을 "스폰"한다고 가정합니다. 블록 무비 클립은 블록이라고하며 라이브러리에만 존재합니다. worldWidth, blockSize 및 worldHeight는 숫자입니다.attachMovie() AS2의 AS2 함수는 무엇입니까?

for (var x = 1; x <= blockWidth; x++) { 
    for (var y = 1; y <= blockHeight; y++) { 
     temp = world.attachMovie("block","bX" + x + "Y" + y, world.getNextHighestDepth()); 
     temp._x = x*blockSize-blockSize/2; 
     temp._y = -y*blockSize+blockSize/2; 
    } 
} 

을 모두 완벽 것 ..

을하지만 안드로이드에 대한 어도비 에어를 사용하고 있는데 AS3은 강제 :

일반적으로, AS2에 난 그냥이 작업을 수행 할 수 있습니다. AS3에 "attachMovie()"함수가 누락되었습니다. 솔루션을 찾았지만 이해하기에는 너무 상황에 따라 다릅니다.

아이디어가 있으십니까?

업데이트 : 여기에 제공된 답을 사용하여이 시작되도록 시도했습니다

내가 가진 무엇 : 불행하게도

stop(); 
import flash.display.MovieClip; 
var blockSize:Number = 32; 
var worldWidth:Number = 800/blockSize; 
var worldHeight:Number = 480/blockSize; 
render(); 
function render(){ 
     for (var x = 1; x<=worldWidth; x++) { 
     for (var y = 1; y<=worldHeight; y++) { 
      var Block = new block(); 
      Block.name = "BX" + x + "Y" + y; 
      Block.x = x*blockSize-blockSize/2; 
      Block.y = -y*blockSize+blockSize/2; 
      Block.gotoAndStop(3); 
      world.addChild(Block); 
     } 
    } 
} 

, 화면 깜박 지속적으로. 나는 이유가 없다.

EDIT : 정말 어리석은 실수입니다. 블록 MovieClip 안의 프레임을 중지하는 것을 잊어 버렸습니다.

질문에 대한 답변, 문제가 해결되었습니다.

답변

0

라이브러리 항목의 속성으로 이동하여 원하는 클래스 이름 (예 : '차단')을 설정하여 파일을 내 보냅니다.

var block = new Block(); 
block.x = 20; 
block.y = 5; 
world.addChild(block); 

모든 DisplayObject가하는 AddChild를 통해 추가()은 항상 상위 계층에서 넣어됩니다

그런 다음 당신은이 같은 새 블록을 만들 수 있습니다.

AS3을 처음 사용 하셨으므로 DisplayObject class MovieClip 또는 Sprite (타임 라인이없는 mc) 메서드를 배우려면이 메서드를 상속 받아야합니다.