diff --git a/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsGUI.java b/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsGUI.java index e0cf49ebdf..4116dec170 100644 --- a/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsGUI.java +++ b/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsGUI.java @@ -24,6 +24,7 @@ import lombok.Getter; import lombok.RequiredArgsConstructor; import net.skinsrestorer.api.bukkit.BukkitHeadAPI; +import net.skinsrestorer.api.property.IProperty; import net.skinsrestorer.shared.storage.Locale; import net.skinsrestorer.shared.utils.C; import net.skinsrestorer.shared.utils.log.SRLogger; @@ -51,7 +52,7 @@ public class SkinsGUI extends ItemStack implements Listener { private final SkinsRestorer plugin; private final SRLogger log; - public Inventory getGUI(Player player, int page, Map skinsList) { + public Inventory getGUI(Player player, int page, Map skinsList) { Inventory inventory = Bukkit.createInventory(player, 54, C.c(Locale.SKINSMENU_TITLE_NEW).replace("%page", String.valueOf(page))); ItemStack none = new GuiGlass(GlassType.NONE).getItemStack(); @@ -118,12 +119,12 @@ public Inventory getGUI(Player player, int page) { page = 999; int skinNumber = 36 * page; - Map skinsList = plugin.getSkinStorage().getSkins(skinNumber); + Map skinsList = plugin.getSkinStorage().getSkins(skinNumber); ++page; // start counting from 1 return getGUI(player, page, skinsList); } - private ItemStack createSkull(String name, Object property) { + private ItemStack createSkull(String name, IProperty property) { ItemStack is = XMaterial.PLAYER_HEAD.parseItem(); SkullMeta sm = (SkullMeta) Objects.requireNonNull(is).getItemMeta(); diff --git a/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsRestorer.java b/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsRestorer.java index 6bd103e82c..cb53fe5897 100644 --- a/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsRestorer.java +++ b/bukkit/src/main/java/net/skinsrestorer/bukkit/SkinsRestorer.java @@ -227,7 +227,7 @@ public void onEnable() { Map skinList = convertToObject(msgBytes); //convert - Map newSkinList = new TreeMap<>(); + Map newSkinList = new TreeMap<>(); skinList.forEach((name, property) -> newSkinList.put(name, mojangAPI.createProperty(property.getName(), property.getValue(), property.getSignature()))); diff --git a/shared/src/main/java/net/skinsrestorer/shared/storage/SkinStorage.java b/shared/src/main/java/net/skinsrestorer/shared/storage/SkinStorage.java index e86b7dc95d..bcdbf4b733 100644 --- a/shared/src/main/java/net/skinsrestorer/shared/storage/SkinStorage.java +++ b/shared/src/main/java/net/skinsrestorer/shared/storage/SkinStorage.java @@ -400,9 +400,9 @@ public void setSkinData(String skinName, IProperty textures) { // TODO: CUSTOM_GUI // seems to be that crs order is ignored... - public Map getSkins(int number) { + public Map getSkins(int number) { //Using mysql - Map list = new TreeMap<>(); + Map list = new TreeMap<>(); if (Config.MYSQL_ENABLED) { String filterBy = ""; @@ -453,10 +453,10 @@ public Map getSkins(int number) { if (Config.CUSTOM_GUI_ONLY) { //Show only Config.CUSTOM_GUI_SKINS in the gui for (String GuiSkins : Config.CUSTOM_GUI_SKINS) { if (skinName.toLowerCase().contains(GuiSkins.toLowerCase())) - list.put(skinName.toLowerCase(), getSkinData(skinName, false)); + getSkinData(skinName, false).ifPresent(property -> list.put(skinName.toLowerCase(), property)); } } else { - list.put(skinName.toLowerCase(), getSkinData(skinName, false)); + getSkinData(skinName, false).ifPresent(property -> list.put(skinName.toLowerCase(), property)); } } i++; diff --git a/sponge/src/main/java/net/skinsrestorer/sponge/SkinApplierSponge.java b/sponge/src/main/java/net/skinsrestorer/sponge/SkinApplierSponge.java index bf52e73c92..7bf70b7783 100644 --- a/sponge/src/main/java/net/skinsrestorer/sponge/SkinApplierSponge.java +++ b/sponge/src/main/java/net/skinsrestorer/sponge/SkinApplierSponge.java @@ -51,7 +51,7 @@ public void updateProfileSkin(GameProfile profile, String skin) throws SkinReque private void setTexture(IProperty property, Collection oldProperties) { ProfileProperty newTextures = Sponge.getServer().getGameProfileManager().createProfileProperty("textures", property.getValue(), property.getSignature()); - oldProperties.clear(); + oldProperties.removeIf(property2 -> property2.getName().equals("textures")); oldProperties.add(newTextures); }