From 2dcccc09fe09a86387d1548bf4e00f4ca61726b4 Mon Sep 17 00:00:00 2001 From: Maik E Date: Sun, 7 Jan 2024 17:31:03 +0100 Subject: [PATCH] Revised item info display and added new methods Modified the ItemInfo class to enhance the way items names are displayed, including full name and sign item name. Added a 'getDisplayName' method in the ItemChecker class to increase versatility and support further code development. --- .../com/Acrobot/ChestShop/Commands/ItemInfo.java | 16 +++++++++++++--- .../Listeners/PreShopCreation/ItemChecker.java | 4 ++++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/Acrobot/ChestShop/Commands/ItemInfo.java b/src/main/java/com/Acrobot/ChestShop/Commands/ItemInfo.java index 992cf88d9..9fcee5c41 100644 --- a/src/main/java/com/Acrobot/ChestShop/Commands/ItemInfo.java +++ b/src/main/java/com/Acrobot/ChestShop/Commands/ItemInfo.java @@ -8,8 +8,8 @@ import com.Acrobot.ChestShop.ChestShop; import com.Acrobot.ChestShop.Configuration.Messages; import com.Acrobot.ChestShop.Events.ItemInfoEvent; +import com.Acrobot.ChestShop.Listeners.PreShopCreation.ItemChecker; import com.Acrobot.ChestShop.Utils.ComponentUtils; -import net.md_5.bungee.api.chat.BaseComponent; import net.md_5.bungee.api.chat.TextComponent; import org.bukkit.ChatColor; import org.bukkit.command.Command; @@ -52,9 +52,19 @@ public static void showItemInfo(CommandSender sender, ItemStack item) { } TextComponent tc = new TextComponent(" "); - BaseComponent tcName = ComponentUtils.getLocalizedItemName(item); - tc.addExtra(tcName); + tc.setColor(net.md_5.bungee.api.ChatColor.WHITE); + tc.addExtra(ComponentUtils.getLocalizedItemName(item)); + + String fullName = ChatColor.stripColor(ItemChecker.getDisplayName(item)); + String signItemName = ChatColor.stripColor(ItemChecker.getSignItemName(item)); + TextComponent signNames = new TextComponent(" "); + signNames.setColor(net.md_5.bungee.api.ChatColor.DARK_GRAY); + signNames.addExtra(fullName); + if (!fullName.equals(signItemName)) + signNames.addExtra(" (" + signItemName + ")"); + sender.spigot().sendMessage(tc); + sender.spigot().sendMessage(signNames); ItemInfoEvent event = new ItemInfoEvent(sender, item); ChestShop.callEvent(event); diff --git a/src/main/java/com/Acrobot/ChestShop/Listeners/PreShopCreation/ItemChecker.java b/src/main/java/com/Acrobot/ChestShop/Listeners/PreShopCreation/ItemChecker.java index 601fca7a5..840b2c1c9 100644 --- a/src/main/java/com/Acrobot/ChestShop/Listeners/PreShopCreation/ItemChecker.java +++ b/src/main/java/com/Acrobot/ChestShop/Listeners/PreShopCreation/ItemChecker.java @@ -38,6 +38,10 @@ public static String getSignItemName(ItemStack itemStack) { return getDisplayName(itemStack, 15); } + public static String getDisplayName(ItemStack itemStack) { + return getDisplayName(itemStack, Integer.MAX_VALUE); + } + public static String getDisplayName(ItemStack itemStack, int length) { if (itemStack == null) { return null;