我正在写一个安卓游戏。主游戏屏幕有一个倒数计时器,当它到达零时,游戏结束。下面的代码在用户第一次玩关卡时工作。然而,大约每五次用户玩第二关,产生的数字就会变得随机,例如,它刚从 30 开始,然后到 -15。任何人都可以提出这样做的任何理由吗?
public class Timer1 {
int time = 120;
int counter = 0;
int startTime = 30; // Change to 2 minutes
Timer timer;
boolean end = false;
World world = new World();
public Timer1() {
}
public void subtractTime() {
startTime = startTime - 15; // Knock off 15 seconds for hint
}
public int getTime() {
return time;
}
public void startTimer() {
timer = new Timer();
time = 120;
startTime = 30;
end = false;
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
counter++;
time = startTime - counter;
if (time == 0) {
world.gameOver = true;
end = true;
timerCancel();
}
}
}, 0, 1000);
}
public void timerCancel() {
timer.cancel();
}
}