2013-02-17 3 views
0

좋아, 그래서 전 멍청 아. 임의의 키보드 버튼으로 as3의 장면을 진행시키고 싶습니다. 여기 내 코드가있어, 나 좀 도와 줄 수있어?키보드 이벤트 As3로

import flash.events.Event; 
stage.addEventListener(MouseEvent.CLICK, startGame); 
addEventListener(Event.ENTER_FRAME, asteroidMovement); 
stage.addEventListener(KeyboardEvent.KEY_DOWN, startGameWithKeys); 

stop(); 


function startGameWithKeys(e:KeyboardEvent){ 
    removeEventListener(Event.ENTER_FRAME, asteroidMovement); 
    stage.removeEventListener(MouseEvent.CLICK, startGame); 
    gotoAndStop(1, "Scene 2"); 
} 

function startGame(e:MouseEvent) 
{ 
    removeEventListener(Event.ENTER_FRAME, asteroidMovement); 
    stage.removeEventListener(MouseEvent.CLICK, startGame); 
    gotoAndStop(1, "Scene 2"); 
} 

답변

0

청취자 코드는 괜찮습니다. 아무 키나 누를 때마다 디스패치해야합니다. 씬의 이름이 잘못 지정되었을 수 있습니다.

어쨌든 항상 플래시로 장면을 피하십시오. 플래시 IDE에서보다 편안하게 작업 할 수 있도록 프레임을 사용하지만 항상 장면을 피하십시오. 다음 단계는 FlashBuilder 같은 개발 IDE를 사용하여 타임 라인 코드 :

0

유사한 행동을 따르는 코드에 대한 두 가지 기능을 만들 필요가 없습니다,

는 또한 완벽한 장면 문에 점프를 방지해야한다.

function startGame(e:Event):void 
{ 
    //Put your code here 
    trace(e.type); 

    gotoAndStop(1, "Scene 2"); 
} 

stage.addEventListener(MouseEvent.CLICK, startGame, false, 0, true); 
stage.addEventListener(KeyboardEvent.KEY_DOWN, startGame, false, 0, true);