From 8240d0555cee52f05ea454e84290d0f1709141df Mon Sep 17 00:00:00 2001 From: PikaMug <2267126+PikaMug@users.noreply.github.com> Date: Thu, 2 Nov 2023 00:19:30 -0400 Subject: [PATCH] Restore saving of completed quests, fixes #2155 --- core/src/main/java/me/pikamug/quests/quests/BukkitQuest.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/me/pikamug/quests/quests/BukkitQuest.java b/core/src/main/java/me/pikamug/quests/quests/BukkitQuest.java index 46d3c5ee9..0d43c6be3 100644 --- a/core/src/main/java/me/pikamug/quests/quests/BukkitQuest.java +++ b/core/src/main/java/me/pikamug/quests/quests/BukkitQuest.java @@ -72,6 +72,7 @@ import java.util.Optional; import java.util.Set; import java.util.UUID; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ConcurrentSkipListSet; import java.util.stream.Collectors; public class BukkitQuest implements Quest { @@ -729,7 +730,9 @@ public class BukkitQuest implements Quest { return; } quester.hardQuit(this); - quester.getCompletedQuests().add(this); + final ConcurrentSkipListSet completedQuests = quester.getCompletedQuests(); + completedQuests.add(this); + quester.setCompletedQuests(completedQuests); for (final Map.Entry entry : quester.getTimers().entrySet()) { if (entry.getValue().getName().equals(getName())) { plugin.getServer().getScheduler().cancelTask(entry.getKey());