From 078fd54ea5075a8c7a1317444b83f0a8075fd31e Mon Sep 17 00:00:00 2001 From: MiniDay <372403923@qq.com> Date: Wed, 18 Jan 2023 18:05:36 +0800 Subject: [PATCH] =?UTF-8?q?refactor(bukkit):=20=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/bukkit/page/handler/PageHandler.java | 14 +++++++++++++- .../core/bukkit/page/handler/PageableHandler.java | 7 +------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageHandler.java b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageHandler.java index c01f56e..ea785a2 100644 --- a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageHandler.java +++ b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageHandler.java @@ -12,6 +12,9 @@ import org.bukkit.inventory.Inventory; import org.bukkit.inventory.InventoryHolder; import org.jetbrains.annotations.NotNull; +import java.util.HashMap; +import java.util.Map; + /** * GUI 处理类 */ @@ -105,7 +108,11 @@ public abstract class PageHandler implements InventoryHolder { @NotNull public String getTitle() { - return pageConfig.getTitle(); + String title = pageConfig.getTitle(); + for (Map.Entry entry : getPageVariables().entrySet()) { + title = title.replace(entry.getKey(), entry.getValue()); + } + return title; } @NotNull @@ -113,4 +120,9 @@ public abstract class PageHandler implements InventoryHolder { public Inventory getInventory() { return inventory; } + + @NotNull + public HashMap getPageVariables() { + return new HashMap<>(); + } } diff --git a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageableHandler.java b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageableHandler.java index c127edb..a485e92 100644 --- a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageableHandler.java +++ b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/page/handler/PageableHandler.java @@ -90,7 +90,7 @@ public abstract class PageableHandler extends FixedPageHandler { int pageSize = buttonIndexes.size(); // 一页有多少个按钮 elementSlot = new HashMap<>(); - HashMap variables = getVariables(); + HashMap variables = getPageVariables(); for (int i = 0; i < pageSize; i++) { // 元素在当前 page 中的索引位置 @@ -186,9 +186,4 @@ public abstract class PageableHandler extends FixedPageHandler { public void setElementButtonName(String elementButtonName) { this.elementButtonName = elementButtonName; } - - @NotNull - public HashMap getVariables() { - return new HashMap<>(); - } }