我试图让我的角色在点击屏幕时跳转。
我不确定这是否是最好的方法,尝试过搜索但找不到合适的教程。因此,我使用了与更改精灵帧相同的过程。
private int jumpDelay = 100;
private long lastFrameJumpDelay = 0;
public void jump(){
long timeJump = System.currentTimeMillis();
boolean jumping = true;
int jumpCount = 0;
if (jumping){
if (timeJump > lastFrameJumpDelay + jumpDelay){
lastFrameJumpDelay = timeJump;
manYPos = manYPos - 20;//this is the y axis for my characte
jumpCount ++;
if (jumpCount == 10){
jumping = false;
}
}
}
}
据我所知,当我单击屏幕时,它只会跳一点点。换句话说,仅通过if循环一次。不确定为什么只单击一下就不能移动10次。
答案 0 :(得分:0)
好的,可以解决我自己的错误。我以为
long timeJump = System.currentTimeMillis();
将介绍如何始终保持当前时间,这意味着它将始终知道时间。 但这不是唯一的保留时间。因此,我必须将其放入while循环中才能使其正常运行。