diff options
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java | 2 | ||||
| -rw-r--r-- | common/src/main/java/com/leonardobishop/quests/common/quest/Quest.java | 19 |
2 files changed, 20 insertions, 1 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java index aabf8998..54a917a4 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java @@ -285,6 +285,7 @@ public class BukkitQuestsLoader implements QuestsLoader { boolean autostart = config.getBoolean("options.autostart", false); boolean cancellable = config.getBoolean("options.cancellable", true); boolean countsTowardsLimit = config.getBoolean("options.counts-towards-limit", true); + boolean countsTowardsCompleted = config.getBoolean("options.counts-towards-completed", true); int cooldownTime = config.getInt("options.cooldown.time", 10); int timeLimtTime = config.getInt("options.time-limit.time", 10); int sortOrder = config.getInt("options.sort-order", 1); @@ -324,6 +325,7 @@ public class BukkitQuestsLoader implements QuestsLoader { .withRepeatEnabled(repeatable) .withCancellable(cancellable) .withCountsTowardsLimit(countsTowardsLimit) + .withCountsTowardsCompleted(countsTowardsCompleted) .withAutoStartEnabled(autostart) .inCategory(category) .build(); diff --git a/common/src/main/java/com/leonardobishop/quests/common/quest/Quest.java b/common/src/main/java/com/leonardobishop/quests/common/quest/Quest.java index df3a1aaf..2a0ed080 100644 --- a/common/src/main/java/com/leonardobishop/quests/common/quest/Quest.java +++ b/common/src/main/java/com/leonardobishop/quests/common/quest/Quest.java @@ -36,6 +36,7 @@ public class Quest implements Comparable<Quest> { private boolean autoStartEnabled; private boolean cancellable; private boolean countsTowardsLimit; + private boolean countsTowardsCompleted; private Map<String, String> placeholders; private Map<String, String> progressPlaceholders; private String categoryid; @@ -330,6 +331,15 @@ public class Quest implements Comparable<Quest> { } /** + * Get whether this quest should count towards the player's quests completed. + * + * @return boolean + */ + public boolean doesCountTowardsCompleted() { + return countsTowardsCompleted; + } + + /** * Compare the sort orders for this quest with another quest. * * @see Comparable#compareTo(Object) @@ -364,6 +374,7 @@ public class Quest implements Comparable<Quest> { private boolean autoStartEnabled = false; private boolean cancellable = true; private boolean countsTowardsLimit = true; + private boolean countsTowardsCompleted = true; private Map<String, String> placeholders = Collections.emptyMap(); private Map<String, String> progressPlaceholders = Collections.emptyMap(); private String categoryid = null; @@ -482,6 +493,11 @@ public class Quest implements Comparable<Quest> { return this; } + public Builder withCountsTowardsCompleted(boolean countsTowardsCompleted) { + this.countsTowardsCompleted = countsTowardsCompleted; + return this; + } + public Builder inCategory(String categoryid) { this.categoryid = categoryid; return this; @@ -508,7 +524,8 @@ public class Quest implements Comparable<Quest> { quest.sortOrder = this.sortOrder; quest.permissionRequired = this.permissionRequired; quest.autoStartEnabled = this.autoStartEnabled; - quest.countsTowardsLimit = countsTowardsLimit; + quest.countsTowardsLimit = this.countsTowardsLimit; + quest.countsTowardsCompleted = this.countsTowardsCompleted; quest.cancellable = this.cancellable; quest.placeholders = this.placeholders; quest.progressPlaceholders = this.progressPlaceholders; |
