From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MiniDigger <admin@minidigger.me> Date: Sat, 6 Jun 2020 18:13:16 +0200 Subject: [PATCH] Support components in ItemMeta diff --git a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java b/src/main/java/org/bukkit/inventory/meta/ItemMeta.java index 7e0b1d363829031075b6822d7b35ccde9fc05da9..5db838cab09888c3b3537e122e0e381a78e1dbb7 100644 --- a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java +++ b/src/main/java/org/bukkit/inventory/meta/ItemMeta.java @@ -42,6 +42,18 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste @NotNull String getDisplayName(); + // Paper start + /** + * Gets the display name that is set. + * <p> + * Plugins should check that hasDisplayName() returns <code>true</code> + * before calling this method. + * + * @return the display name that is set + */ + @NotNull + net.md_5.bungee.api.chat.BaseComponent[] getDisplayNameComponent(); + // Paper end /** * Sets the display name. * @@ -49,6 +61,14 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste */ void setDisplayName(@Nullable String name); + // Paper start + /** + * Sets the display name. + * + * @param component the name component to set + */ + void setDisplayNameComponent(@Nullable net.md_5.bungee.api.chat.BaseComponent[] component); + // Paper end /** * Checks for existence of a localized name. * @@ -92,6 +112,17 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste @Nullable List<String> getLore(); + /** + * Gets the lore that is set. + * <p> + * Plugins should check if hasLore() returns <code>true</code> before + * calling this method. + * + * @return a list of lore that is set + */ + @Nullable + List<net.md_5.bungee.api.chat.BaseComponent[]> getLoreComponents(); + /** * Sets the lore for this item. * Removes lore when given null. @@ -100,6 +131,14 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste */ void setLore(@Nullable List<String> lore); + /** + * Sets the lore for this item. + * Removes lore when given null. + * + * @param lore the lore that will be set + */ + void setLoreComponents(@Nullable List<net.md_5.bungee.api.chat.BaseComponent[]> lore); + /** * Checks for existence of custom model data. * <p>