0

我正在为学校制作一张简短的交互式电子贺卡。它将带您穿越“圣诞故事”的场景。现在我正在研究拉尔菲打败法库斯的部分。

我想要它,这样您就可以使用左右箭头键来打拳,但是如果您选择结束场景,您只需单击一个按钮即可完成 Farkus。

所以我在这里有这段代码,它只是使用箭头键将您带到某些帧。

问题是,当我单击按钮时,我希望所有代码都消失。现在它没有。如果我在单击按钮后按下其中一个箭头键,代码仍会将我带到场景的开头。

stop();

stage.addEventListener(KeyboardEvent.KEY_UP, punchfarkusleft);

function punchfarkusleft(event:KeyboardEvent):void
{
    if (event.keyCode == Keyboard.LEFT)
    {
        this.gotoAndPlay(1980);
    }
}

stage.addEventListener(KeyboardEvent.KEY_UP, punchfarkusright);

function punchfarkusright(event:KeyboardEvent):void
{
    if (event.keyCode == Keyboard.RIGHT)
    {
        this.gotoAndPlay(1995);

    }
}

我对动作脚本完全陌生。非常感谢。

4

1 回答 1

0

尝试以下操作:

stop();

function keyUpHandler(event:KeyboardEvent):void
{
    // removing the listener will stop the handler being executed on 
    // subsequent keyUp events
    stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpHandler);

    // We can handle any number of keys in the handler now
    if (event.keyCode == Keyboard.RIGHT)
    {
        this.gotoAndPlay(1995);
    }
    else if (event.keyCode == Keyboard.LEFT)
    {
        this.gotoAndPlay(1980);
    {
}

// Only add one event listener for keyUp event
stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
于 2012-11-09T20:55:14.787 回答