From c2e252f539406c21c0212fa72db5f288b1d05d54 Mon Sep 17 00:00:00 2001 From: Nathan Wolf Date: Wed, 16 Dec 2015 11:41:36 -0800 Subject: [PATCH] Handle missing stages in CustomObjective.getDatamap. TODO: Figure out how this happened, clean up on Quester load --- src/main/java/me/blackvein/quests/CustomObjective.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/me/blackvein/quests/CustomObjective.java b/src/main/java/me/blackvein/quests/CustomObjective.java index aba617fce..83310df64 100644 --- a/src/main/java/me/blackvein/quests/CustomObjective.java +++ b/src/main/java/me/blackvein/quests/CustomObjective.java @@ -85,11 +85,14 @@ public abstract class CustomObjective implements Listener { Quester quester = Quests.getInstance().getQuester(player.getUniqueId()); if (quester != null) { + Stage currentStage = quester.getCurrentStage(quest); + if (currentStage == null) return null; int index = -1; int tempIndex = 0; - for (me.blackvein.quests.CustomObjective co : quester.getCurrentStage(quest).customObjectives) { + + for (me.blackvein.quests.CustomObjective co : currentStage.customObjectives) { if (co.getName().equals(obj.getName())) { index = tempIndex; @@ -102,7 +105,7 @@ public abstract class CustomObjective implements Listener { if (index > -1) { - return quester.getCurrentStage(quest).customObjectiveData.get(index); + return currentStage.customObjectiveData.get(index); }