From abeaa249b83e6ffca86da0601aafda72294584ee Mon Sep 17 00:00:00 2001 From: HaHaWTH Date: Wed, 27 Mar 2024 22:13:17 +0800 Subject: [PATCH] Revert "Some revert" This reverts commit 797aadb328f337ef1edf1544122e2ba42ea3aa3d. --- .../java/fr/xephi/authme/data/limbo/LimboPlayer.java | 9 ++++++--- .../xephi/authme/data/limbo/LimboPlayerTaskManager.java | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/java/fr/xephi/authme/data/limbo/LimboPlayer.java b/src/main/java/fr/xephi/authme/data/limbo/LimboPlayer.java index 9446222f..5b39a934 100644 --- a/src/main/java/fr/xephi/authme/data/limbo/LimboPlayer.java +++ b/src/main/java/fr/xephi/authme/data/limbo/LimboPlayer.java @@ -24,6 +24,7 @@ public class LimboPlayer { private final float flySpeed; private MyScheduledTask timeoutTask = null; private MessageTask messageTask = null; + private MyScheduledTask inter; private LimboPlayerState state = LimboPlayerState.PASSWORD_REQUIRED; @@ -113,18 +114,20 @@ public class LimboPlayer { * * @param messageTask The message task to set */ - public void setMessageTask(MessageTask messageTask) { - if (this.messageTask != null) { + public void setMessageTask(MessageTask messageTask, MyScheduledTask inter) { + if (this.messageTask != null && this.inter != null) { this.messageTask.cancel(); + this.inter.cancel(); } this.messageTask = messageTask; + this.inter = inter; } /** * Clears all tasks associated to the player. */ public void clearTasks() { - setMessageTask(null); + setMessageTask(null, null); setTimeoutTask(null); } diff --git a/src/main/java/fr/xephi/authme/data/limbo/LimboPlayerTaskManager.java b/src/main/java/fr/xephi/authme/data/limbo/LimboPlayerTaskManager.java index ca5eaa1f..f6a970b3 100644 --- a/src/main/java/fr/xephi/authme/data/limbo/LimboPlayerTaskManager.java +++ b/src/main/java/fr/xephi/authme/data/limbo/LimboPlayerTaskManager.java @@ -53,8 +53,8 @@ class LimboPlayerTaskManager { if (interval > 0) { String[] joinMessage = messages.retrieveSingle(player, result.messageKey, result.args).split("\n"); MessageTask messageTask = new MessageTask(player, joinMessage); - bukkitService.runTaskTimer(messageTask, 2 * TICKS_PER_SECOND, (long) interval * TICKS_PER_SECOND); - limbo.setMessageTask(messageTask); + MyScheduledTask task = bukkitService.runTaskTimer(messageTask, 2 * TICKS_PER_SECOND, (long) interval * TICKS_PER_SECOND); + limbo.setMessageTask(messageTask, task); } }