diff --git a/core/src/main/java/me/blackvein/quests/Quest.java b/core/src/main/java/me/blackvein/quests/Quest.java index e32769596..787bcdc40 100644 --- a/core/src/main/java/me/blackvein/quests/Quest.java +++ b/core/src/main/java/me/blackvein/quests/Quest.java @@ -1075,6 +1075,12 @@ public class Quest implements IQuest { if (preEvent.isCancelled()) { return; } + for (final Map.Entry entry : quester.getTimers().entrySet()) { + if (entry.getValue().getId().equals(getId())) { + plugin.getServer().getScheduler().cancelTask(entry.getKey()); + quester.getTimers().remove(entry.getKey()); + } + } final Player player = quester.getPlayer(); if (!ignoreFailAction) { final IStage stage = quester.getCurrentStage(this); diff --git a/core/src/main/java/me/blackvein/quests/actions/Action.java b/core/src/main/java/me/blackvein/quests/actions/Action.java index ffb7bc4c6..8046dff89 100644 --- a/core/src/main/java/me/blackvein/quests/actions/Action.java +++ b/core/src/main/java/me/blackvein/quests/actions/Action.java @@ -29,8 +29,10 @@ import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import org.bukkit.potion.PotionEffect; +import java.util.Arrays; import java.util.HashMap; import java.util.LinkedList; +import java.util.List; import java.util.Map; public class Action implements IAction { @@ -419,44 +421,19 @@ public class Action implements IAction { player.sendMessage(ChatColor.GREEN + Lang.get(player, "timerStart") .replace("