0

好的,所以我是一个完全的菜鸟。我想用任何键盘按钮在 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");
}
4

2 回答 2

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);
于 2013-02-18T06:10:10.233 回答
0

您的侦听器代码很好,只要您按任意键,它就应该调度。您的场景可能命名不正确。

无论如何,请始终尽量避免使用闪光灯中的场景。如果框架能让您在 Flash IDE 中工作感觉更舒服,请使用框架,但始终避免使用场景。下一步应该使用像 FlashBuilder 这样的开发 IDE 并避免使用时间线代码 :)

于 2013-02-17T06:42:30.473 回答