본문 바로가기

FLASH/AS3.0팁

마우스 트레일러 만들기

배열을 사용해야 이벤트함수내에서 특정무비클립에 접근할 수 있네요.

왜 그래야만 하는지는 잘 모르겠지만 이렇게 해야 하는 것 같습니다.

cnt갯수만 늘려주면 갯수만큼 꼬리가 늘어납니다.


 

3_꼬리달린트레일러2.fla



 

var cnt:Number = 5;

var speedRate:Number = 0.3;

var distance:Number = 5;

var mc:MC;

var mc_array:Array = [];

 

for(var i:int=0; i<cnt; i++){

 mc = new MC();

 mc.name = "mc"+i

 mc.tf.text = "mc"+i;  

 addChild(mc); 

 mc_array[i]=mc;

 if(i == 0){

  mc.addEventListener(Event.ENTER_FRAME, onEnter1);

 }else{

  mc.addEventListener(Event.ENTER_FRAME, onEnter2);

 }

}

 

function onEnter1(e){

 var mc:MovieClip = e.currentTarget as MovieClip

 mc.x += speedRate*(mouseX - mc.x);

 mc.y += speedRate*(mouseY - mc.y);

}

 

function onEnter2(e){

 var mc:MovieClip = e.currentTarget as MovieClip

 mc.x += speedRate*(mc_array[Number(mc.name.substr(-1))-1].x -  mc.x);

 mc.y += speedRate*(mc_array[Number(mc.name.substr(-1))-1].y -  mc.y + mc.height + distance); 

}