summaryrefslogtreecommitdiffstats
path: root/src/main/java
diff options
context:
space:
mode:
authorLMBishop <13875753+LMBishop@users.noreply.github.com>2021-02-16 16:35:30 +0000
committerLMBishop <13875753+LMBishop@users.noreply.github.com>2021-02-16 16:35:30 +0000
commit39e73a3d6d69205501859fcf361c7bfbf14c98a9 (patch)
treee1d530276b4b9d4f6d6d40cc7405ac2f5453da78 /src/main/java
parent8b23cd0146d856acb1d1c31d88c168ff5c27cfed (diff)
Quest gui display override
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/leonardobishop/quests/Quests.java6
-rw-r--r--src/main/java/com/leonardobishop/quests/QuestsConfigLoader.java2
-rw-r--r--src/main/java/com/leonardobishop/quests/obj/Options.java2
-rw-r--r--src/main/java/com/leonardobishop/quests/obj/misc/QItemStack.java40
4 files changed, 35 insertions, 15 deletions
diff --git a/src/main/java/com/leonardobishop/quests/Quests.java b/src/main/java/com/leonardobishop/quests/Quests.java
index 5272e9ac..9dd39187 100644
--- a/src/main/java/com/leonardobishop/quests/Quests.java
+++ b/src/main/java/com/leonardobishop/quests/Quests.java
@@ -235,9 +235,9 @@ public class Quests extends JavaPlugin {
questsConfigLoader.loadConfig();
- long autocompleteInterval = 12000;
+ long autosaveInterval = 12000;
if (!isBrokenConfig()) {
- autocompleteInterval = this.getConfig().getLong("options.performance-tweaking.quest-autocomplete-interval", 12000);
+ autosaveInterval = this.getConfig().getLong("options.performance-tweaking.quest-autosave-interval", 12000);
}
boolean autosaveTaskCancelled = true;
if (questAutosaveTask != null) {
@@ -253,7 +253,7 @@ public class Quests extends JavaPlugin {
for (QPlayer qPlayer : qPlayerManager.getQPlayers()) {
qPlayer.getQuestProgressFile().saveToDisk(false);
}
- }, autocompleteInterval, autocompleteInterval);
+ }, autosaveInterval, autosaveInterval);
}
boolean queuePollTaskCancelled = true;
diff --git a/src/main/java/com/leonardobishop/quests/QuestsConfigLoader.java b/src/main/java/com/leonardobishop/quests/QuestsConfigLoader.java
index d1921c29..db8281b2 100644
--- a/src/main/java/com/leonardobishop/quests/QuestsConfigLoader.java
+++ b/src/main/java/com/leonardobishop/quests/QuestsConfigLoader.java
@@ -305,10 +305,10 @@ public class QuestsConfigLoader {
List<String> cLoreNormal = config.getStringList(path + ".lore-normal");
List<String> cLoreStarted = config.getStringList(path + ".lore-started");
- String name;
List<String> loreNormal = translateColoursInList(cLoreNormal);
List<String> loreStarted = translateColoursInList(cLoreStarted);
+ String name;
name = ChatColor.translateAlternateColorCodes('&', cName);
ItemStack is = plugin.getItemStack(path, config,
diff --git a/src/main/java/com/leonardobishop/quests/obj/Options.java b/src/main/java/com/leonardobishop/quests/obj/Options.java
index d7543cec..d108d875 100644
--- a/src/main/java/com/leonardobishop/quests/obj/Options.java
+++ b/src/main/java/com/leonardobishop/quests/obj/Options.java
@@ -30,6 +30,8 @@ public enum Options {
QUEST_AUTOSTART("options.quest-autostart"),
QUEST_AUTOTRACK("options.quest-autotrack"),
GLOBAL_TASK_CONFIGURATION_OVERRIDE("options.global-task-configuration-override"),
+ GLOBAL_QUEST_DISPLAY_CONFIGURATION_OVERRIDE("options.global-quest-display-configuration-override"),
+ GLOBAL_QUEST_DISPLAY_LORE_APPEND_NORMAL("global-quest-display.lore.append-normal"),
GLOBAL_QUEST_DISPLAY_LORE_APPEND_NOT_STARTED("global-quest-display.lore.append-not-started"),
GLOBAL_QUEST_DISPLAY_LORE_APPEND_STARTED("global-quest-display.lore.append-started"),
GLOBAL_QUEST_DISPLAY_LORE_APPEND_TRACKED("global-quest-display.lore.append-tracked");
diff --git a/src/main/java/com/leonardobishop/quests/obj/misc/QItemStack.java b/src/main/java/com/leonardobishop/quests/obj/misc/QItemStack.java
index edb1b963..1995fffe 100644
--- a/src/main/java/com/leonardobishop/quests/obj/misc/QItemStack.java
+++ b/src/main/java/com/leonardobishop/quests/obj/misc/QItemStack.java
@@ -24,9 +24,10 @@ public class QItemStack {
private String name;
private List<String> loreNormal;
private List<String> loreStarted;
- private List<String> globalLoreAppendNotStarted;
- private List<String> globalLoreAppendStarted;
- private List<String> globalLoreAppendTracked;
+ private final List<String> globalLoreAppendNormal;
+ private final List<String> globalLoreAppendNotStarted;
+ private final List<String> globalLoreAppendStarted;
+ private final List<String> globalLoreAppendTracked;
private ItemStack startingItemStack;
public QItemStack(Quests plugin, String name, List<String> loreNormal, List<String> loreStarted, ItemStack startingItemStack) {
@@ -36,6 +37,7 @@ public class QItemStack {
this.loreStarted = loreStarted;
this.startingItemStack = startingItemStack;
+ this.globalLoreAppendNormal = Options.color(Options.GLOBAL_QUEST_DISPLAY_LORE_APPEND_NORMAL.getStringListValue());
this.globalLoreAppendNotStarted = Options.color(Options.GLOBAL_QUEST_DISPLAY_LORE_APPEND_NOT_STARTED.getStringListValue());
this.globalLoreAppendStarted = Options.color(Options.GLOBAL_QUEST_DISPLAY_LORE_APPEND_STARTED.getStringListValue());
this.globalLoreAppendTracked = Options.color(Options.GLOBAL_QUEST_DISPLAY_LORE_APPEND_TRACKED.getStringListValue());
@@ -79,11 +81,32 @@ public class QItemStack {
ItemMeta ism = is.getItemMeta();
ism.setDisplayName(name);
List<String> formattedLore = new ArrayList<>();
- List<String> tempLore = new ArrayList<>(loreNormal);
+ List<String> tempLore = new ArrayList<>();
+
+ if (Options.GLOBAL_QUEST_DISPLAY_CONFIGURATION_OVERRIDE.getBooleanValue() && !globalLoreAppendNormal.isEmpty()) {
+ tempLore.addAll(globalLoreAppendNormal);
+ } else {
+ tempLore.addAll(loreNormal);
+ tempLore.addAll(globalLoreAppendNormal);
+ }
Player player = Bukkit.getPlayer(questProgressFile.getPlayerUUID());
if (questProgressFile.hasStartedQuest(quest)) {
- tempLore.addAll(loreStarted);
+ boolean tracked = quest.getId().equals(questProgressFile.getPlayerPreferences().getTrackedQuestId());
+ if (Options.GLOBAL_QUEST_DISPLAY_CONFIGURATION_OVERRIDE.getBooleanValue() && !globalLoreAppendStarted.isEmpty()) {
+ if (tracked) {
+ tempLore.addAll(globalLoreAppendTracked);
+ } else {
+ tempLore.addAll(globalLoreAppendStarted);
+ }
+ } else {
+ tempLore.addAll(loreStarted);
+ if (tracked) {
+ tempLore.addAll(globalLoreAppendTracked);
+ } else {
+ tempLore.addAll(globalLoreAppendStarted);
+ }
+ }
ism.addEnchant(Enchantment.ARROW_INFINITE, 1, true);
try {
ism.addItemFlags(ItemFlag.HIDE_ENCHANTS);
@@ -91,13 +114,8 @@ public class QItemStack {
} catch (Exception ignored) {
}
- if (quest.getId().equals(questProgressFile.getPlayerPreferences().getTrackedQuestId())) {
- if (globalLoreAppendTracked != null) tempLore.addAll(globalLoreAppendTracked);
- } else {
- if (globalLoreAppendStarted != null) tempLore.addAll(globalLoreAppendStarted);
- }
} else {
- if (globalLoreAppendNotStarted != null) tempLore.addAll(globalLoreAppendNotStarted);
+ tempLore.addAll(globalLoreAppendNotStarted);
}
if (plugin.getPlaceholderAPIHook() != null && Options.GUI_USE_PLACEHOLDERAPI.getBooleanValue()) {
ism.setDisplayName(plugin.getPlaceholderAPIHook().replacePlaceholders(player, ism.getDisplayName()));