From fb6dd10d9c6efae73a5c3583dcf57e0d2582459a Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 29 Nov 2019 16:40:02 +0200 Subject: [PATCH] Fixed rendering errors on seaponies --- .../java/com/minelittlepony/client/model/IPonyMixinModel.java | 4 ++++ .../com/minelittlepony/client/model/entity/ModelSeapony.java | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/minelittlepony/client/model/IPonyMixinModel.java b/src/main/java/com/minelittlepony/client/model/IPonyMixinModel.java index 99548a75..76ae3463 100644 --- a/src/main/java/com/minelittlepony/client/model/IPonyMixinModel.java +++ b/src/main/java/com/minelittlepony/client/model/IPonyMixinModel.java @@ -10,6 +10,7 @@ import com.minelittlepony.model.IUnicorn; import com.minelittlepony.model.ModelAttributes; import com.minelittlepony.model.armour.IEquestrianArmour; import com.minelittlepony.mson.api.ModelContext; +import com.minelittlepony.mson.api.model.BoxBuilder.RenderLayerSetter; import com.minelittlepony.pony.IPony; import com.minelittlepony.pony.IPonyData; import com.minelittlepony.pony.meta.Size; @@ -21,6 +22,9 @@ public interface IPonyMixinModel @Override default void init(ModelContext context) { mixin().init(context); + if (mixin() instanceof RenderLayerSetter && this instanceof RenderLayerSetter) { + ((RenderLayerSetter)this).setRenderLayerFactory(((RenderLayerSetter)mixin()).getRenderLayerFactory()); + } } @Override diff --git a/src/main/java/com/minelittlepony/client/model/entity/ModelSeapony.java b/src/main/java/com/minelittlepony/client/model/entity/ModelSeapony.java index 1966deeb..f7a5749b 100644 --- a/src/main/java/com/minelittlepony/client/model/entity/ModelSeapony.java +++ b/src/main/java/com/minelittlepony/client/model/entity/ModelSeapony.java @@ -124,7 +124,6 @@ public class ModelSeapony extends ModelUnicorn { torso.rotate(stack); tail.renderPart(stack, vertices, overlayUv, lightUv, red, green, blue, alpha, attributes.interpolatorId); - leftFin.render(stack, vertices, overlayUv, lightUv, red, green, blue, alpha); centerFin.render(stack, vertices, overlayUv, lightUv, red, green, blue, alpha); rightFin.render(stack, vertices, overlayUv, lightUv, red, green, blue, alpha); @@ -139,6 +138,8 @@ public class ModelSeapony extends ModelUnicorn { public void setVisible(boolean visible) { super.setVisible(visible); + upperTorsoOverlay.visible = false; + // hide the back legs leftLeg.visible = false; rightLeg.visible = false;