diff options
Diffstat (limited to 'bukkit/src/main/java/com')
4 files changed, 52 insertions, 48 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java index 60b91da6..39e0a857 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java @@ -29,7 +29,6 @@ public final class CompostingTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "amount")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "amount")); - super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useItemStackConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "data")); super.addConfigValidator(TaskUtils.useBooleanConfigValidator(this, "exact-match")); @@ -58,19 +57,21 @@ public final class CompostingTaskType extends BukkitTaskType { Task task = pendingTask.task(); TaskProgress taskProgress = pendingTask.taskProgress(); - QuestItem qi; - if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { - QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); - fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); - qi = fetchedItem; - } + if (task.hasConfigKey("item")) { + QuestItem qi; + if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { + QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); + fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); + qi = fetchedItem; + } - super.debug("Player composted item of type " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); + super.debug("Player composted item of type " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); - boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); - if (!qi.compareItemStack(item, exactMatch)) { - super.debug("Item does not match required item, continuing...", quest.getId(), task.getId(), player.getUniqueId()); - continue; + boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); + if (!qi.compareItemStack(item, exactMatch)) { + super.debug("Item does not match required item, continuing...", quest.getId(), task.getId(), player.getUniqueId()); + continue; + } } int progress = TaskUtils.incrementIntegerTaskProgress(taskProgress); diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/ConsumeTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/ConsumeTaskType.java index f7e3ee20..b0fcd213 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/ConsumeTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/ConsumeTaskType.java @@ -28,7 +28,6 @@ public final class ConsumeTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "amount")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "amount")); - super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useItemStackConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "data")); super.addConfigValidator(TaskUtils.useBooleanConfigValidator(this, "exact-match")); @@ -58,19 +57,21 @@ public final class ConsumeTaskType extends BukkitTaskType { Task task = pendingTask.task(); TaskProgress taskProgress = pendingTask.taskProgress(); - QuestItem qi; - if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { - QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); - fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); - qi = fetchedItem; - } + if (task.hasConfigKey("item")) { + QuestItem qi; + if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { + QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); + fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); + qi = fetchedItem; + } - super.debug("Player consumed item of type " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); + super.debug("Player consumed item of type " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); - boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); - if (!qi.compareItemStack(item, exactMatch)) { - super.debug("Item does not match required item, continuing...", quest.getId(), task.getId(), player.getUniqueId()); - continue; + boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); + if (!qi.compareItemStack(item, exactMatch)) { + super.debug("Item does not match required item, continuing...", quest.getId(), task.getId(), player.getUniqueId()); + continue; + } } int progress = TaskUtils.incrementIntegerTaskProgress(taskProgress); diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CraftingTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CraftingTaskType.java index 2ce477ce..332d2e4c 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CraftingTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CraftingTaskType.java @@ -31,7 +31,6 @@ public final class CraftingTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "amount")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "amount")); - super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useItemStackConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "data")); super.addConfigValidator(TaskUtils.useBooleanConfigValidator(this, "exact-match")); @@ -87,19 +86,21 @@ public final class CraftingTaskType extends BukkitTaskType { Task task = pendingTask.task(); TaskProgress taskProgress = pendingTask.taskProgress(); - QuestItem qi; - if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { - QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); - fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); - qi = fetchedItem; - } + if (task.hasConfigKey("item")) { + QuestItem qi; + if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { + QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); + fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); + qi = fetchedItem; + } - super.debug("Player crafted " + eventAmount + " of " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); + super.debug("Player crafted " + eventAmount + " of " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); - boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); - if (!qi.compareItemStack(item, exactMatch)) { - super.debug("Item does not match, continuing...", quest.getId(), task.getId(), player.getUniqueId()); - continue; + boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); + if (!qi.compareItemStack(item, exactMatch)) { + super.debug("Item does not match, continuing...", quest.getId(), task.getId(), player.getUniqueId()); + continue; + } } int progress = TaskUtils.incrementIntegerTaskProgress(taskProgress, eventAmount); diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java index 7fdac494..d154b45e 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java @@ -33,7 +33,6 @@ public final class SmithingTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "amount")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "amount")); - super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useItemStackConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "data")); super.addConfigValidator(TaskUtils.useBooleanConfigValidator(this, "exact-match")); @@ -94,19 +93,21 @@ public final class SmithingTaskType extends BukkitTaskType { } } - QuestItem qi; - if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { - QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); - fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); - qi = fetchedItem; - } + if (task.hasConfigKey("item")) { + QuestItem qi; + if ((qi = fixedQuestItemCache.get(quest.getId(), task.getId())) == null) { + QuestItem fetchedItem = TaskUtils.getConfigQuestItem(task, "item", "data"); + fixedQuestItemCache.put(quest.getId(), task.getId(), fetchedItem); + qi = fetchedItem; + } - super.debug("Player smithed " + eventAmount + " of " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); + super.debug("Player smithed " + eventAmount + " of " + item.getType(), quest.getId(), task.getId(), player.getUniqueId()); - boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); - if (!qi.compareItemStack(item, exactMatch)) { - super.debug("Item does not match, continuing...", quest.getId(), task.getId(), player.getUniqueId()); - continue; + boolean exactMatch = TaskUtils.getConfigBoolean(task, "exact-match", true); + if (!qi.compareItemStack(item, exactMatch)) { + super.debug("Item does not match, continuing...", quest.getId(), task.getId(), player.getUniqueId()); + continue; + } } int progress = TaskUtils.incrementIntegerTaskProgress(taskProgress, eventAmount); |
