상세 컨텐츠

본문 제목

3강. ENTER_FRAME, hasEventListener, removeEventListener

Programming/ActionScript3.0

by 노란날. 2010. 12. 27. 01:01

본문

반응형


 

>>> ex

 

//방향 바꾸는 작업을 하기위해 변수지정

var speed:Number = 10;

fish_mc.addEventListener(Event.ENTER_FRAME, onFish);
function onFish(e:Event):void{
 fish_mc.x += speed;
//fish_mc x 가 490보다 크거나, 50보다 작을때

 if(fish_mc.x >490 || fish_mc.x <50){
//x축 좌표를 반전시킨다.

 speed = - speed;

//fish_mc 또한 반전시킨다.(무비클립의 방향이 달라짐)
  fish_mc.scaleX = - fish_mc.scaleX;
 }
}

//한가지 이벤트(CLICK) 로 2가지 이벤트 발생 (if문)
fish_mc.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void{
//fish_mc 무비가 Event 를 실행하고있는지 true or false 로 선언한다. 실행하고있다면

 if(fish_mc.hasEventListener(Event.ENTER_FRAME) == true){
//fish_mc 무비가 가졌던 Event를 삭제한다

  fish_mc.removeEventListener(Event.ENTER_FRAME, onFish)
 }else{
//false 일때(mouse click 이되어 무비가 멈췄을시에)다시 무비를 움직이게 한다.  

 fish_mc.addEventListener(Event.ENTER_FRAME, onFish);
 }
}

 

var speed2:Number = 10;
fish2_mc.addEventListener(Event.ENTER_FRAME, onFish2);
function onFish2(e:Event):void{
 fish2_mc.x += speed2;
 if(fish2_mc.x > 490 || fish2_mc.x < 50){
  speed2 = -speed2;
  fish2_mc.scaleX = -fish2_mc.scaleX;
 }
}
fish2_mc.addEventListener(MouseEvent.ROLL_OVER, onOver);
function onOver(e:MouseEvent):void{
 fish2_mc.removeEventListener(Event.ENTER_FRAME, onFish2);
}
fish2_mc.addEventListener(MouseEvent.ROLL_OUT, onOut);
function onOut(e:MouseEvent):void{
 fish2_mc.addEventListener(Event.ENTER_FRAME, onFish2);
}

 

반응형

관련글 더보기