3

等等:如果我按“空格”键,库存打开。但是如果我再次按“空格”,库存应该关闭。我应该用什么来做这种事情?我可以打开它,但不能关闭。谢谢,抱歉不好英文(PS:我用的是flashdevelop+flixel)

4

2 回答 2

3

是的,这是完全可能的。

var isInventOpen:Boolean = false;
function openCloseInvent(e:KeyboardEvent):void
{
    if(e.keyCode == Keyboard.SPACE && isInventOpen == false)
    {
         //Open Inventory
         isInventOpen = true;
    }

    if(e.keyCode == Keyboard.SPACE && isInventOpen == true)
    {
         //Close Inventory
         isInventOpen = false;
    }
}

更多关于 KeyCodes 的信息可以在这里找到:KeyCodes,如果你需要的话。

于 2012-07-17T22:13:54.627 回答
2

你应该给自己一个布尔值,像这样:

var menuOpen:Boolean = false;
function yourEventHandler(e:KeyboardEvent):void {
    if (menuOpen) {
        menuOpen = false;
        //close your menu here
    } else {
        menuOpen = true;
        //open menu here
    }
}
于 2012-07-17T22:13:04.247 回答