From a8ccee47e1574839575069dfa1d6d78806152df8 Mon Sep 17 00:00:00 2001 From: Sollace Date: Tue, 3 Dec 2019 13:20:27 +0200 Subject: [PATCH] Fixed crash when switching the the alex model on the skins gui --- .../minelittlepony/client/hdskins/DummyPony.java | 13 +++++++++++-- .../client/hdskins/MineLPHDSkins.java | 3 +-- .../minelittlepony/client/hdskins/PonyPreview.java | 4 ++-- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/minelittlepony/client/hdskins/DummyPony.java b/src/main/java/com/minelittlepony/client/hdskins/DummyPony.java index 12cdb13b..40ebc5fb 100644 --- a/src/main/java/com/minelittlepony/client/hdskins/DummyPony.java +++ b/src/main/java/com/minelittlepony/client/hdskins/DummyPony.java @@ -1,5 +1,8 @@ package com.minelittlepony.client.hdskins; +import net.minecraft.entity.EntityCategory; +import net.minecraft.entity.EntityType; + import com.minelittlepony.hdskins.dummy.DummyPlayer; import com.minelittlepony.hdskins.dummy.TextureProxy; import com.minelittlepony.hdskins.profile.SkinType; @@ -10,10 +13,16 @@ import com.minelittlepony.hdskins.resources.LocalTexture; */ class DummyPony extends DummyPlayer { + public static EntityType TYPE = EntityType.Builder + .create((t, w) -> new DummyPony(t, null), EntityCategory.MISC) + .disableSaving() + .disableSummon() + .build("minelittlepony:dummy_pony"); + public boolean wet = false; - public DummyPony(TextureProxy textures) { - super(textures); + public DummyPony(EntityType type, TextureProxy textures) { + super(type, textures); } public void setWet(boolean wet) { diff --git a/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java b/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java index ab7a309a..aa87ed90 100644 --- a/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java +++ b/src/main/java/com/minelittlepony/client/hdskins/MineLPHDSkins.java @@ -4,7 +4,6 @@ import com.minelittlepony.client.MineLittlePony; import com.minelittlepony.client.SkinsProxy; import com.minelittlepony.common.event.ClientReadyCallback; import com.minelittlepony.hdskins.SkinCacheClearCallback; -import com.minelittlepony.hdskins.dummy.DummyPlayer; import com.minelittlepony.mson.api.Mson; import net.minecraft.client.MinecraftClient; @@ -23,7 +22,7 @@ class MineLPHDSkins { ClientReadyCallback.EVENT.register(this::postInit); // Preview on the select skin gui - Mson.getInstance().getEntityRendererRegistry().registerEntityRenderer(DummyPlayer.TYPE, DummyPonyRenderer::new); + Mson.getInstance().getEntityRendererRegistry().registerEntityRenderer(DummyPony.TYPE, DummyPonyRenderer::new); } private void postInit(MinecraftClient minecraft) { diff --git a/src/main/java/com/minelittlepony/client/hdskins/PonyPreview.java b/src/main/java/com/minelittlepony/client/hdskins/PonyPreview.java index 75d83e29..411363f5 100644 --- a/src/main/java/com/minelittlepony/client/hdskins/PonyPreview.java +++ b/src/main/java/com/minelittlepony/client/hdskins/PonyPreview.java @@ -14,8 +14,8 @@ class PonyPreview extends PlayerPreview { public static final Identifier NO_SKIN_PONY = new Identifier("minelittlepony", "textures/mob/noskin.png"); public static final Identifier NO_SKIN_SEAPONY = new Identifier("minelittlepony", "textures/mob/noskin_seapony.png"); - private final DummyPony localPony = new DummyPony(localTextures); - private final DummyPony remotePony = new DummyPony(remoteTextures); + private final DummyPony localPony = new DummyPony(DummyPony.TYPE, localTextures); + private final DummyPony remotePony = new DummyPony(DummyPony.TYPE, remoteTextures); public void setWet(boolean isWet) { localPony.setWet(isWet);