From 42e6e4c44dff5e61891e8dbfc124570a7ad2a4b4 Mon Sep 17 00:00:00 2001 From: KingRainbow44 Date: Sun, 8 Jan 2023 14:00:00 +0100 Subject: [PATCH] Fix delay with server tasks --- .../emu/grasscutter/server/scheduler/ServerTask.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/java/emu/grasscutter/server/scheduler/ServerTask.java b/src/main/java/emu/grasscutter/server/scheduler/ServerTask.java index a6b5c2053..18b3b1279 100644 --- a/src/main/java/emu/grasscutter/server/scheduler/ServerTask.java +++ b/src/main/java/emu/grasscutter/server/scheduler/ServerTask.java @@ -38,9 +38,14 @@ public final class ServerTask implements Runnable { // Increase tick count. var ticks = this.ticks++; if (this.delay != -1 && this.considerDelay) { - this.considerDelay = false; - return ticks == this.delay; - } else if (this.period != -1) return ticks % this.period == 0; + // Check if the task should run. + var shouldRun = ticks >= this.delay; + // Check if the task should be canceled. + if (shouldRun) this.considerDelay = false; + + return shouldRun; // Return the result. + } else if (this.period != -1) + return ticks % this.period == 0; else return true; }