如果我同时按下W和S又上下。玩家停止移动。我不能这样做,以便最后按下哪个键可以朝这个方向前进,而不是一起停止它。因此,无论您同时按哪个键,播放器只会移动您最后按下的键。或者,如果玩家放下其中一个按钮,则仍然保持按钮的功能正常。这就是我想要的方式,但玩家会一起停下来。像大多数游戏一样,除非你放开所有按键,否则玩家不会停止移动。
我在keydown上键盘移动的代码:
if (event.keyCode == Keyboard.D)
{
isRight = true
}
if (event.keyCode == Keyboard.A)
{
isLeft = true
}
if (event.keyCode == Keyboard.W)
{
isUp = true
}
if (event.keyCode == Keyboard.S)
{
isDown = true
}
在我的enterframe中:
if (isRight == true)
{
x += 5;
}
if (isLeft == true )
{
x -= 5;
}
if (isUp == true)
{
y -= 5;
}
if (isDown == true)
{
y += 5;
}
答案 0 :(得分:0)
设置isUp=false
时,您应设置isDown=true
。反之亦然。现在你正在做的就是将事情设置为真,但是当一个人变为真时你应该将其他人设置为假。
此外,检查if(isDown)
对于布尔属性来说是一个足够好的条件
希望这有帮助。