From 01e33be58fc59fa46be222e56318c43fe9ceca04 Mon Sep 17 00:00:00 2001 From: tanishisherewithhh <120117618+tanishisherewithhh@users.noreply.github.com> Date: Wed, 28 Aug 2024 13:52:16 +0530 Subject: [PATCH] Fixed faulty return of TickTimer and TimerUtils. --- .../java/dev/heliosclient/util/TickTimer.java | 22 ++++++++----------- .../dev/heliosclient/util/TimerUtils.java | 11 ++++++---- 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/src/main/java/dev/heliosclient/util/TickTimer.java b/src/main/java/dev/heliosclient/util/TickTimer.java index 1173f47..77318c1 100644 --- a/src/main/java/dev/heliosclient/util/TickTimer.java +++ b/src/main/java/dev/heliosclient/util/TickTimer.java @@ -49,35 +49,31 @@ public void increment(){ // Checks if ticks have passed since the last reset public boolean every(int ticks) { - if (getElapsedTicks() >= ticks) { + boolean didTimerLapse = getElapsedTicks() >= ticks; + if (didTimerLapse) { restartTimer(); } - return getElapsedTicks() >= ticks; + return didTimerLapse; } public boolean incrementAndEvery(int ticks) { increment(); - if (getElapsedTicks() >= ticks) { - restartTimer(); - } - return getElapsedTicks() >= ticks; + return every(ticks); } public boolean incrementAndEvery(int ticks, Runnable task) { increment(); - if (getElapsedTicks() >= ticks) { - task.run(); - restartTimer(); - } - return getElapsedTicks() >= ticks; + return every(ticks,task); } public boolean every(int ticks, Runnable task) { - if (getElapsedTicks() >= ticks) { + boolean didTimerLapse = getElapsedTicks() >= ticks; + + if (didTimerLapse) { task.run(); restartTimer(); } - return getElapsedTicks() >= ticks; + return didTimerLapse; } } diff --git a/src/main/java/dev/heliosclient/util/TimerUtils.java b/src/main/java/dev/heliosclient/util/TimerUtils.java index 0d439b6..90447bb 100644 --- a/src/main/java/dev/heliosclient/util/TimerUtils.java +++ b/src/main/java/dev/heliosclient/util/TimerUtils.java @@ -64,16 +64,19 @@ public void scheduleSingleReset(long ms) { // Checks if ms milliseconds have passed since the last reset public boolean every(long ms) { - if (getElapsedTime() >= ms / 1000.0) + boolean didTimerLapse = getElapsedTime() >= ms / 1000.0; + if (didTimerLapse) resetTimer(); - return getElapsedTime() >= ms / 1000.0; + + return didTimerLapse; } public boolean every(long ms, Runnable task) { - if (getElapsedTimeMS() >= ms) { + boolean didTimerLapse = getElapsedTime() >= ms / 1000.0; + if (didTimerLapse) { task.run(); resetTimer(); } - return getElapsedTimeMS() >= ms; + return didTimerLapse; } }