aboutsummaryrefslogtreecommitdiffstats
path: root/bukkit/src
diff options
context:
space:
mode:
authorKrakenied <krakenied1@gmail.com>2025-05-21 13:53:21 +0200
committerKrakenied <46192742+Krakenied@users.noreply.github.com>2025-07-29 00:06:46 +0200
commita35fd9696136f20a80c510ee7ff773f43385add0 (patch)
tree66beeff9db6b15068731601d2d76847f23ef22c2 /bukkit/src
parent2d5fee3aabfb5841c14317315dd37757f28afc8f (diff)
Add option to set per category quest menu title
Closes https://github.com/LMBishop/Quests/issues/622
Diffstat (limited to 'bukkit/src')
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java3
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CategoryQMenu.java2
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/QuestQMenu.java8
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/MenuUtils.java2
4 files changed, 9 insertions, 6 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 215d4b8b..ec0142b2 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
@@ -122,10 +122,11 @@ public class BukkitQuestsLoader implements QuestsLoader {
for (String id : categories.getKeys(false)) {
ItemStack displayItem = plugin.getConfiguredItemStack(id + ".display", categories);
+ String guiName = categories.getString(id + ".gui-name");
boolean permissionRequired = categories.getBoolean(id + ".permission-required", false);
boolean hidden = categories.getBoolean(id + ".hidden", false);
- Category category = new Category(id, permissionRequired, hidden);
+ Category category = new Category(id, guiName, permissionRequired, hidden);
questManager.registerCategory(category);
qItemStackRegistry.register(category, displayItem);
}
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CategoryQMenu.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CategoryQMenu.java
index 9223bc19..387ab192 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CategoryQMenu.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CategoryQMenu.java
@@ -44,7 +44,7 @@ public class CategoryQMenu extends PaginatedQMenu {
}
}
Collections.sort(quests);
- QuestQMenu questQMenu = new QuestQMenu(plugin, owner, quests, category.getId(), this);
+ QuestQMenu questQMenu = new QuestQMenu(plugin, owner, quests, category, this);
MenuElement menuElement = new CategoryMenuElement(plugin, owner.getPlayerUUID(), category, questQMenu);
categoryMenuElements.add(menuElement);
}
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/QuestQMenu.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/QuestQMenu.java
index 13963466..074282c9 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/QuestQMenu.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/QuestQMenu.java
@@ -8,11 +8,13 @@ import com.leonardobishop.quests.bukkit.menu.element.QuestMenuElement;
import com.leonardobishop.quests.bukkit.util.chat.Chat;
import com.leonardobishop.quests.common.player.QPlayer;
import com.leonardobishop.quests.common.player.questprogressfile.QuestProgress;
+import com.leonardobishop.quests.common.quest.Category;
import com.leonardobishop.quests.common.quest.Quest;
import org.bukkit.Bukkit;
import java.util.ArrayList;
import java.util.List;
+import java.util.Objects;
/**
* Represents a menu for a specified category (or all if they are disabled),
@@ -22,12 +24,12 @@ public class QuestQMenu extends PaginatedQMenu {
private final String categoryName;
- public QuestQMenu(BukkitQuestsPlugin plugin, QPlayer owner, List<Quest> quests, String categoryName, CategoryQMenu categoryQMenu) {
- super(owner, Chat.legacyColor(plugin.getQuestsConfig().getString("options.guinames.quests-menu")),
+ public QuestQMenu(BukkitQuestsPlugin plugin, QPlayer owner, List<Quest> quests, Category category, CategoryQMenu categoryQMenu) {
+ super(owner, Chat.legacyColor(Objects.requireNonNullElseGet(category.getGUIName(), () -> plugin.getQuestsConfig().getString("options.guinames.quests-menu"))),
plugin.getQuestsConfig().getBoolean("options.trim-gui-size.quests-menu"), 54, plugin);
BukkitQuestsConfig config = (BukkitQuestsConfig) plugin.getQuestsConfig();
- this.categoryName = categoryName;
+ this.categoryName = category.getId();
BackMenuElement backMenuElement = categoryQMenu != null
? new BackMenuElement(plugin, owner.getPlayerUUID(), plugin.getMenuController(), categoryQMenu)
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/MenuUtils.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/MenuUtils.java
index 00a10ef0..7baa4dcc 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/MenuUtils.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/MenuUtils.java
@@ -103,7 +103,7 @@ public class MenuUtils {
}
}
Collections.sort(quests);
- QuestQMenu questQMenu = new QuestQMenu(plugin, qPlayer, quests, category.getId(), superMenu);
+ QuestQMenu questQMenu = new QuestQMenu(plugin, qPlayer, quests, category, superMenu);
plugin.getMenuController().openMenu(player, questQMenu);
}