我正在用 Java 编写一个小游戏,一个明显的关键组件是能够使用箭头键移动角色。但是,我无法获得所有指示,只有以下 block 的最后两个 if 语句才真正激活。
public void Update(){
if(Canvas.keyboardKeyState(KeyEvent.VK_UP))
yVel = -1;
else
yVel = 0;
if(Canvas.keyboardKeyState(KeyEvent.VK_LEFT))
xVel = -1;
else
xVel = 0;
if(Canvas.keyboardKeyState(KeyEvent.VK_DOWN))
yVel = 1;
else
yVel = 0;
if(Canvas.keyboardKeyState(KeyEvent.VK_RIGHT))
xVel = 1;
else
xVel = 0;
x += xVel;
y += yVel;
}
我的输入很好,所有键都在注册,但没有进行数学计算。如果有人有建议或库/包可以使这更容易,请告诉我。
最佳答案
您覆盖了 else
block 中的值。您可能想要这样做。
public void Update(){
xVel = 0;
yVel = 0;
if(Canvas.keyboardKeyState(KeyEvent.VK_UP)) {
yVel -= 1;
}
if(Canvas.keyboardKeyState(KeyEvent.VK_LEFT)) {
xVel -= 1;
}
if(Canvas.keyboardKeyState(KeyEvent.VK_DOWN)) {
yVel += 1;
}
if(Canvas.keyboardKeyState(KeyEvent.VK_RIGHT)) {
xVel += 1;
}
x += xVel;
y += yVel;
}
关于java - 在 Java 中使用箭头键移动图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36086902/