diff --git a/src/main/java/io/github/itzispyder/ogredupealias/utils/ItemUtils.java b/src/main/java/io/github/itzispyder/ogredupealias/utils/ItemUtils.java index 4ba443b..a70a5cf 100644 --- a/src/main/java/io/github/itzispyder/ogredupealias/utils/ItemUtils.java +++ b/src/main/java/io/github/itzispyder/ogredupealias/utils/ItemUtils.java @@ -4,6 +4,7 @@ import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.OfflinePlayer; import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.inventory.meta.SkullMeta; import java.util.UUID; @@ -42,4 +43,11 @@ public abstract class ItemUtils { OfflinePlayer p = Bukkit.getOfflinePlayer(owner); return skullOf(p.getName()); } + + public static String getDisplay(ItemStack item) { + String def = StringUtils.capitalizeWords(item.getType().name()); + ItemMeta meta = item.getItemMeta(); + if (meta == null) return def; + return meta.hasDisplayName() ? meta.getDisplayName() : def; + } } diff --git a/src/main/java/io/github/itzispyder/ogredupealias/utils/ShulkerUtils.java b/src/main/java/io/github/itzispyder/ogredupealias/utils/ShulkerUtils.java index 5b2e5e9..56d5649 100644 --- a/src/main/java/io/github/itzispyder/ogredupealias/utils/ShulkerUtils.java +++ b/src/main/java/io/github/itzispyder/ogredupealias/utils/ShulkerUtils.java @@ -19,8 +19,8 @@ public abstract class ShulkerUtils { private static final Map lastOpenedBox = new HashMap<>(); - public static Inventory getOf(ShulkerBox box) { - final String display = box.getCustomName(); + public static Inventory getOf(ItemStack item, ShulkerBox box) { + final String display = ItemUtils.getDisplay(item); final Inventory inv = Bukkit.createInventory(null, box.getInventory().getSize(), Text.color("&7Viewing " + display)); inv.setContents(box.getInventory().getContents()); @@ -40,7 +40,7 @@ public abstract class ShulkerUtils { final BlockStateMeta meta = (BlockStateMeta) item.getItemMeta(); final ShulkerBox box = (ShulkerBox) meta.getBlockState(); - p.openInventory(getOf(box)); + p.openInventory(getOf(item, box)); lastOpenedBox.put(p.getUniqueId(),item); }