我对actionscript和flash相当新,所以我对代码的某些功能有疑问。是否可以通过一个按钮更改键绑定,该按钮将显示当前用于移动对象的键?
我问这个的主要原因是因为我正在制作平台游戏,我想提供改变当前键盘输入用于移动角色的能力。与其他游戏类似,可以将玩家控件编辑为更舒适的布局。我还想提供一个默认的键盘布局,并在选项菜单中进行设置,以显示当前键用于特定操作。
例如,键盘左侧默认为向左移动,但我想说我想将其更改为A.我希望能够将其更改为或提供这种功能。
我不知道从哪里开始,或者甚至可能。提前谢谢。
编辑:
我还希望保留这些选项,只要游戏是开放的,或者甚至可以将它们存储到文件中。
答案 0 :(得分:1)
这是您自己编程的功能。听取用户按键是非常简单的,并将他们按下的键的唯一keyCode保存到变量中。然后,当按下某个键时,您可以根据保存的键代码进行检查。至于保存这些设置,您可以使用Local Shared Object。
这是一个基本概述。假设您有以下对象。
var keys:Object = {
left: Keyboard.LEFT,
right: Keyboard.RIGHT,
up: Keyboard.UP,
down: Keyboard.DOWN
};
如果您想自定义向上箭头,可以在用户输入一些内容后添加以下代码(例如点击按钮)。
addEventListener(KeyboardEvent.KEY_DOWN, keyDown);
function keyDown(e:KeyboardEvent):void
{
keys.up = e.keyCode;
}
然后,如果您想要测试是否按下了up keyCode,您可以执行以下操作。
if(keys.up == e.keyCode)
{
//Customized up key pressed.
}