Actionscript 暂时禁用eventlistener,直到动画完成

Actionscript 暂时禁用eventlistener,直到动画完成,actionscript,Actionscript,我正在做一个基本的闪电战游戏。我不是开发人员,所以我是actionscript新手,除了我在课程中有一些关于编码的背景知识。 问题是- 大约有6个格斗动作,我想禁用所有6个按键向下事件,直到动画完成。所有6个动画都有不同的时间范围。有人能帮我解决这个问题吗 stage.addEventListener(KeyboardEvent.KEY_DOWN, enterKeyHandler); function enterKeyHandler(event:KeyboardEvent):void {

我正在做一个基本的闪电战游戏。我不是开发人员,所以我是actionscript新手,除了我在课程中有一些关于编码的背景知识。 问题是- 大约有6个格斗动作,我想禁用所有6个按键向下事件,直到动画完成。所有6个动画都有不同的时间范围。有人能帮我解决这个问题吗

stage.addEventListener(KeyboardEvent.KEY_DOWN, enterKeyHandler);
function enterKeyHandler(event:KeyboardEvent):void {
       if (event.keyCode == Keyboard.B) {
        gotoAndPlay(252);}

       if (event.keyCode == Keyboard.V) {
        gotoAndPlay(259);}

我只写了其中的2个,但总共有6个。

我会使用一个公共静态标志,例如: 键盘禁用:布尔值=假

在播放动画时,您可以将其设置为true,在侦听键盘事件的函数中,只需检查键盘是否已禁用并立即返回即可

有些代码看起来像

public static var keyboardDisabled:Boolean = false;

stage.addEventListener(KeyboardEvent.KEY_DOWN, enterKeyHandler);
function enterKeyHandler(event:KeyboardEvent):void {

       if ( keyboardDisabled )
         return;

       if (event.keyCode == Keyboard.B) {
        gotoAndPlay(252);}

       if (event.keyCode == Keyboard.V) {
        gotoAndPlay(259);
}
然后在动画开始的帧中

keyboardDisabled = true;
在动画方面

keyboardDisabled = false;

谢谢你,成功了!但是我没有一个类或包,所以“var keyboardDisabled:Boolean=false;”有效。非常感谢:)酷!很高兴我能给你答案