From 5efe47a61993673557f6ab96c698a7a8618d2cdb Mon Sep 17 00:00:00 2001 From: Lixfel Date: Tue, 31 Dec 2019 14:57:04 +0100 Subject: [PATCH] Fixing Skull generation for 1.14+ --- .../src/de/steamwar/inventory/SWItem_10.java | 6 +++--- .../src/de/steamwar/inventory/SWItem_12.java | 10 ++++++++-- .../src/de/steamwar/inventory/SWItem_14.java | 11 +++++++++-- .../src/de/steamwar/inventory/SWItem_15.java | 6 +++--- .../src/de/steamwar/inventory/SWItem_8.java | 10 ++++++++-- .../src/de/steamwar/inventory/SWItem_9.java | 6 +++--- .../src/de/steamwar/inventory/SWItem.java | 18 +++++++----------- 7 files changed, 41 insertions(+), 26 deletions(-) diff --git a/SpigotCore_10/src/de/steamwar/inventory/SWItem_10.java b/SpigotCore_10/src/de/steamwar/inventory/SWItem_10.java index 6cea915..dc90dbb 100644 --- a/SpigotCore_10/src/de/steamwar/inventory/SWItem_10.java +++ b/SpigotCore_10/src/de/steamwar/inventory/SWItem_10.java @@ -2,7 +2,7 @@ package de.steamwar.inventory; import org.bukkit.Material; import org.bukkit.OfflinePlayer; -import org.bukkit.inventory.meta.SkullMeta; +import org.bukkit.inventory.ItemStack; class SWItem_10 { private SWItem_10(){} @@ -15,7 +15,7 @@ class SWItem_10 { return SWItem_8.getDye(); } - static void setSkullOwner(OfflinePlayer player, SkullMeta meta){ - SWItem_8.setSkullOwner(player, meta); + static ItemStack setSkullOwner(OfflinePlayer player){ + return SWItem_8.setSkullOwner(player); } } diff --git a/SpigotCore_12/src/de/steamwar/inventory/SWItem_12.java b/SpigotCore_12/src/de/steamwar/inventory/SWItem_12.java index 1f762f3..99cfdab 100644 --- a/SpigotCore_12/src/de/steamwar/inventory/SWItem_12.java +++ b/SpigotCore_12/src/de/steamwar/inventory/SWItem_12.java @@ -2,6 +2,7 @@ package de.steamwar.inventory; import org.bukkit.Material; import org.bukkit.OfflinePlayer; +import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.SkullMeta; class SWItem_12 { @@ -15,7 +16,12 @@ class SWItem_12 { return SWItem_8.getDye(); } - static void setSkullOwner(OfflinePlayer player, SkullMeta meta){ - meta.setOwningPlayer(player); + static ItemStack setSkullOwner(OfflinePlayer player){ + ItemStack head = new ItemStack(Material.SKULL_ITEM, 1, (short) 3); + SkullMeta headmeta = (SkullMeta) head.getItemMeta(); + headmeta.setOwningPlayer(player); + headmeta.setDisplayName(player.getName()); + head.setItemMeta(headmeta); + return head; } } diff --git a/SpigotCore_14/src/de/steamwar/inventory/SWItem_14.java b/SpigotCore_14/src/de/steamwar/inventory/SWItem_14.java index 4562fcd..2038a91 100644 --- a/SpigotCore_14/src/de/steamwar/inventory/SWItem_14.java +++ b/SpigotCore_14/src/de/steamwar/inventory/SWItem_14.java @@ -2,6 +2,7 @@ package de.steamwar.inventory; import org.bukkit.Material; import org.bukkit.OfflinePlayer; +import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.SkullMeta; class SWItem_14 { @@ -48,7 +49,13 @@ class SWItem_14 { } } - static void setSkullOwner(OfflinePlayer player, SkullMeta meta){ - SWItem_12.setSkullOwner(player, meta); + static ItemStack setSkullOwner(OfflinePlayer player){ + ItemStack head = new ItemStack(Material.PLAYER_HEAD, 1); + SkullMeta headmeta = (SkullMeta) head.getItemMeta(); + assert headmeta != null; + headmeta.setOwningPlayer(player); + headmeta.setDisplayName(player.getName()); + head.setItemMeta(headmeta); + return head; } } diff --git a/SpigotCore_15/src/de/steamwar/inventory/SWItem_15.java b/SpigotCore_15/src/de/steamwar/inventory/SWItem_15.java index b03dda9..73af534 100644 --- a/SpigotCore_15/src/de/steamwar/inventory/SWItem_15.java +++ b/SpigotCore_15/src/de/steamwar/inventory/SWItem_15.java @@ -2,7 +2,7 @@ package de.steamwar.inventory; import org.bukkit.Material; import org.bukkit.OfflinePlayer; -import org.bukkit.inventory.meta.SkullMeta; +import org.bukkit.inventory.ItemStack; class SWItem_15 { private SWItem_15(){} @@ -15,7 +15,7 @@ class SWItem_15 { return SWItem_14.getDye(colorCode); } - static void setSkullOwner(OfflinePlayer player, SkullMeta meta){ - SWItem_12.setSkullOwner(player, meta); + static ItemStack setSkullOwner(OfflinePlayer player){ + return SWItem_14.setSkullOwner(player); } } diff --git a/SpigotCore_8/src/de/steamwar/inventory/SWItem_8.java b/SpigotCore_8/src/de/steamwar/inventory/SWItem_8.java index 44975c7..a0348f8 100644 --- a/SpigotCore_8/src/de/steamwar/inventory/SWItem_8.java +++ b/SpigotCore_8/src/de/steamwar/inventory/SWItem_8.java @@ -2,6 +2,7 @@ package de.steamwar.inventory; import org.bukkit.Material; import org.bukkit.OfflinePlayer; +import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.SkullMeta; class SWItem_8 { @@ -15,7 +16,12 @@ class SWItem_8 { return Material.INK_SACK; } - static void setSkullOwner(OfflinePlayer player, SkullMeta meta){ - meta.setOwner(player.getName()); + static ItemStack setSkullOwner(OfflinePlayer player){ + ItemStack head = new ItemStack(Material.SKULL_ITEM, 1, (short) 3); + SkullMeta headmeta = (SkullMeta) head.getItemMeta(); + headmeta.setOwner(player.getName()); + headmeta.setDisplayName(player.getName()); + head.setItemMeta(headmeta); + return head; } } diff --git a/SpigotCore_9/src/de/steamwar/inventory/SWItem_9.java b/SpigotCore_9/src/de/steamwar/inventory/SWItem_9.java index d2e6617..25a179a 100644 --- a/SpigotCore_9/src/de/steamwar/inventory/SWItem_9.java +++ b/SpigotCore_9/src/de/steamwar/inventory/SWItem_9.java @@ -2,7 +2,7 @@ package de.steamwar.inventory; import org.bukkit.Material; import org.bukkit.OfflinePlayer; -import org.bukkit.inventory.meta.SkullMeta; +import org.bukkit.inventory.ItemStack; class SWItem_9 { private SWItem_9(){} @@ -15,7 +15,7 @@ class SWItem_9 { return SWItem_8.getDye(); } - static void setSkullOwner(OfflinePlayer player, SkullMeta meta){ - SWItem_8.setSkullOwner(player, meta); + static ItemStack setSkullOwner(OfflinePlayer player){ + return SWItem_8.setSkullOwner(player); } } diff --git a/SpigotCore_Main/src/de/steamwar/inventory/SWItem.java b/SpigotCore_Main/src/de/steamwar/inventory/SWItem.java index 74f0cc4..dae57c6 100644 --- a/SpigotCore_Main/src/de/steamwar/inventory/SWItem.java +++ b/SpigotCore_Main/src/de/steamwar/inventory/SWItem.java @@ -7,7 +7,6 @@ import org.bukkit.enchantments.Enchantment; import org.bukkit.inventory.ItemFlag; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import org.bukkit.inventory.meta.SkullMeta; import java.util.ArrayList; import java.util.List; @@ -20,29 +19,26 @@ public class SWItem { public static SWItem getPlayerSkull(OfflinePlayer player){ SWItem p = new SWItem(); - ItemStack head = new ItemStack(getMaterial("SKULL_ITEM"), 1, (short) 3); - SkullMeta headmeta = (SkullMeta) head.getItemMeta(); + ItemStack head; switch(Core.getVersion()){ case 8: - SWItem_8.setSkullOwner(player, headmeta); + head = SWItem_8.setSkullOwner(player); break; case 9: - SWItem_9.setSkullOwner(player, headmeta); + head = SWItem_9.setSkullOwner(player); break; case 10: - SWItem_10.setSkullOwner(player, headmeta); + head = SWItem_10.setSkullOwner(player); break; case 14: - SWItem_14.setSkullOwner(player, headmeta); + head = SWItem_14.setSkullOwner(player); break; case 15: - SWItem_15.setSkullOwner(player, headmeta); + head = SWItem_15.setSkullOwner(player); break; default: - SWItem_12.setSkullOwner(player, headmeta); + head = SWItem_12.setSkullOwner(player); } - headmeta.setDisplayName(player.getName()); - head.setItemMeta(headmeta); p.setItemStack(head); return p; }