Я создаю видеоигру, и у меня есть цикл for, который восстанавливает ваше здоровье.
public void recoverHealth() {
if (curHealth < finalHealth) {
for (double i = 0; i < finalHealth; i = i + 0.1) {
curHealth = curHealth + 0.1;
System.out.println("health: " + curHealth);
}
}
}
Но проблема в том, что java проходит через это так быстро, что проходит от 0 до 20, прежде чем игра даже запустится. Как я могу замедлить метод recoveryHealth() без замедления всей игры, например, Thread.sleep не работает.
try {
Thread.sleep(1000);
} catch (Exception e) {
e.printStackTrace();
}
Любые идеи?
TimerTask
вопреки распространенному мнению TimerTasks очень полезны. - person Puru--   schedule 21.03.2014