diff --git a/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java b/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java index e406e5a8..e2666320 100644 --- a/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java +++ b/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java @@ -95,12 +95,13 @@ public class MineLPHDSkins extends SkinsProxy implements ClientModInitializer { if (player instanceof DummyPlayer dummy) { PlayerSkin skin = dummy.getTextures().get(type); - if (skin.isReady()) { + if (skin.isReady() || getAvailableSkins(player).contains(type.getId())) { return Optional.of(skin.getId()); } PlayerSkin main = dummy.getTextures().get(SkinType.SKIN); - if (IPony.getManager().getPony(main.getId()).metadata().isWearing(Wearable.REGISTRY.getOrDefault(type.getId(), Wearable.NONE))) { + Wearable wearable = Wearable.REGISTRY.getOrDefault(type.getId(), Wearable.NONE); + if (wearable != Wearable.NONE && IPony.getManager().getPony(main.getId()).metadata().isWearing(wearable)) { return Optional.of(main.getId()); } }