Fix NPE for AIR in meta operations in ItemStack
This commit is contained in:
@@ -110,6 +110,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ */
|
+ */
|
||||||
+ public void setLore(@Nullable List<String> lore) {
|
+ public void setLore(@Nullable List<String> lore) {
|
||||||
+ ItemMeta itemMeta = getItemMeta();
|
+ ItemMeta itemMeta = getItemMeta();
|
||||||
|
+ if (itemMeta == null) {
|
||||||
|
+ throw new IllegalStateException("Cannot set lore on " + getType());
|
||||||
|
+ }
|
||||||
+ itemMeta.setLore(lore);
|
+ itemMeta.setLore(lore);
|
||||||
+ setItemMeta(itemMeta);
|
+ setItemMeta(itemMeta);
|
||||||
+ }
|
+ }
|
||||||
@@ -121,6 +124,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ */
|
+ */
|
||||||
+ public void addItemFlags(@NotNull ItemFlag... itemFlags) {
|
+ public void addItemFlags(@NotNull ItemFlag... itemFlags) {
|
||||||
+ ItemMeta itemMeta = getItemMeta();
|
+ ItemMeta itemMeta = getItemMeta();
|
||||||
|
+ if (itemMeta == null) {
|
||||||
|
+ throw new IllegalStateException("Cannot add flags on " + getType());
|
||||||
|
+ }
|
||||||
+ itemMeta.addItemFlags(itemFlags);
|
+ itemMeta.addItemFlags(itemFlags);
|
||||||
+ setItemMeta(itemMeta);
|
+ setItemMeta(itemMeta);
|
||||||
+ }
|
+ }
|
||||||
@@ -132,6 +138,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ */
|
+ */
|
||||||
+ public void removeItemFlags(@NotNull ItemFlag... itemFlags) {
|
+ public void removeItemFlags(@NotNull ItemFlag... itemFlags) {
|
||||||
+ ItemMeta itemMeta = getItemMeta();
|
+ ItemMeta itemMeta = getItemMeta();
|
||||||
|
+ if (itemMeta == null) {
|
||||||
|
+ throw new IllegalStateException("Cannot remove flags on " + getType());
|
||||||
|
+ }
|
||||||
+ itemMeta.removeItemFlags(itemFlags);
|
+ itemMeta.removeItemFlags(itemFlags);
|
||||||
+ setItemMeta(itemMeta);
|
+ setItemMeta(itemMeta);
|
||||||
+ }
|
+ }
|
||||||
@@ -144,6 +153,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ @NotNull
|
+ @NotNull
|
||||||
+ public Set<ItemFlag> getItemFlags() {
|
+ public Set<ItemFlag> getItemFlags() {
|
||||||
+ ItemMeta itemMeta = getItemMeta();
|
+ ItemMeta itemMeta = getItemMeta();
|
||||||
|
+ if (itemMeta == null) {
|
||||||
|
+ return java.util.Collections.emptySet();
|
||||||
|
+ }
|
||||||
+ return itemMeta.getItemFlags();
|
+ return itemMeta.getItemFlags();
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
@@ -155,7 +167,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
|||||||
+ */
|
+ */
|
||||||
+ public boolean hasItemFlag(@NotNull ItemFlag flag) {
|
+ public boolean hasItemFlag(@NotNull ItemFlag flag) {
|
||||||
+ ItemMeta itemMeta = getItemMeta();
|
+ ItemMeta itemMeta = getItemMeta();
|
||||||
+ return itemMeta.hasItemFlag(flag);
|
+ return itemMeta != null && itemMeta.hasItemFlag(flag);
|
||||||
+ }
|
+ }
|
||||||
// Paper end
|
// Paper end
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user