aboutsummaryrefslogtreecommitdiffstats
path: root/bukkit
diff options
context:
space:
mode:
authorsejlaadilovic <us.faris.ajanovic@gmail.com>2024-01-12 00:57:42 +0100
committerLeonardo Bishop <13875753+LMBishop@users.noreply.github.com>2024-01-16 20:56:16 +0000
commit2c96d1af99cbf821f34f20dd0d36d7e1aa15363d (patch)
treeec24a402e3ef819f5713afacca1deca0a9d00515 /bukkit
parent597086dcbcb4026e93bf1f7410f3243cdfedda54 (diff)
Add PlaceholderAPI support in GUI titles
Diffstat (limited to 'bukkit')
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CancelQMenu.java5
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/PaginatedQMenu.java19
-rw-r--r--bukkit/src/main/resources/resources/bukkit/config.yml2
3 files changed, 23 insertions, 3 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CancelQMenu.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CancelQMenu.java
index 3e6ea0b6..5cc19b6b 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CancelQMenu.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/CancelQMenu.java
@@ -55,6 +55,11 @@ public class CancelQMenu extends QMenu {
@Override
public Inventory draw() {
String title = Chat.legacyColor(config.getString("options.guinames.quest-cancel"));
+
+ if (config.getBoolean("options.gui-use-placeholderapi")) {
+ title = plugin.getPlaceholderAPIProcessor().apply(Bukkit.getPlayer(owner.getPlayerUUID()), title);
+ }
+
Inventory inventory = Bukkit.createInventory(null, 27, title);
for (int pointer = 0; pointer < 27; pointer++) {
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/PaginatedQMenu.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/PaginatedQMenu.java
index d4494734..8f0f9b27 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/PaginatedQMenu.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/menu/PaginatedQMenu.java
@@ -23,9 +23,9 @@ import java.util.List;
public abstract class PaginatedQMenu extends QMenu {
- protected final String title;
protected final boolean trim;
private final BukkitQuestsPlugin plugin;
+ protected String title;
protected int currentPage;
protected int pageSize;
protected int minPage;
@@ -33,15 +33,23 @@ public abstract class PaginatedQMenu extends QMenu {
public PaginatedQMenu(QPlayer owner, String title, boolean trim, int pageSize, BukkitQuestsPlugin plugin) {
super(owner);
- this.title = title;
this.trim = trim;
this.plugin = plugin;
+ this.title = title;
this.pageSize = pageSize;
this.currentPage = 1;
this.minPage = 1;
this.maxPage = 1;
}
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
public int getCurrentPage() {
return currentPage;
}
@@ -182,6 +190,13 @@ public abstract class PaginatedQMenu extends QMenu {
int pageMin = pageSize * (currentPage - 1);
int pageMax = pageSize * currentPage;
+ BukkitQuestsConfig config = (BukkitQuestsConfig) plugin.getQuestsConfig();
+
+ if (config.getBoolean("options.gui-use-placeholderapi")) {
+ Player player = Bukkit.getPlayer(owner.getPlayerUUID());
+ title = plugin.getPlaceholderAPIProcessor().apply(player, title);
+ }
+
Inventory inventory = Bukkit.createInventory(null, 54, title);
int highestOnPage = 0;
diff --git a/bukkit/src/main/resources/resources/bukkit/config.yml b/bukkit/src/main/resources/resources/bukkit/config.yml
index 97a4bef2..5bf689da 100644
--- a/bukkit/src/main/resources/resources/bukkit/config.yml
+++ b/bukkit/src/main/resources/resources/bukkit/config.yml
@@ -89,7 +89,7 @@ options:
gui-hide-quests-nopermission: false
# Hide categories which a player cannot open due to permissions.
gui-hide-categories-nopermission: false
- # Replace placeholders from PlaceholderAPI in Quests GUI items
+ # Replace placeholders from PlaceholderAPI in Quests GUI items and titles
gui-use-placeholderapi: false
# Truncate quest requirements when there are multiple requirements to prevent enormous display items
gui-truncate-requirements: true