Fixed rendering errors on seaponies

This commit is contained in:
Sollace 2019-11-29 16:40:02 +02:00
parent 0da50c7ecc
commit fb6dd10d9c
2 changed files with 6 additions and 1 deletions

View file

@ -10,6 +10,7 @@ import com.minelittlepony.model.IUnicorn;
import com.minelittlepony.model.ModelAttributes; import com.minelittlepony.model.ModelAttributes;
import com.minelittlepony.model.armour.IEquestrianArmour; import com.minelittlepony.model.armour.IEquestrianArmour;
import com.minelittlepony.mson.api.ModelContext; import com.minelittlepony.mson.api.ModelContext;
import com.minelittlepony.mson.api.model.BoxBuilder.RenderLayerSetter;
import com.minelittlepony.pony.IPony; import com.minelittlepony.pony.IPony;
import com.minelittlepony.pony.IPonyData; import com.minelittlepony.pony.IPonyData;
import com.minelittlepony.pony.meta.Size; import com.minelittlepony.pony.meta.Size;
@ -21,6 +22,9 @@ public interface IPonyMixinModel<T extends LivingEntity, M extends IPonyModel<T>
@Override @Override
default void init(ModelContext context) { default void init(ModelContext context) {
mixin().init(context); mixin().init(context);
if (mixin() instanceof RenderLayerSetter && this instanceof RenderLayerSetter) {
((RenderLayerSetter)this).setRenderLayerFactory(((RenderLayerSetter)mixin()).getRenderLayerFactory());
}
} }
@Override @Override

View file

@ -124,7 +124,6 @@ public class ModelSeapony<T extends LivingEntity> extends ModelUnicorn<T> {
torso.rotate(stack); torso.rotate(stack);
tail.renderPart(stack, vertices, overlayUv, lightUv, red, green, blue, alpha, attributes.interpolatorId); tail.renderPart(stack, vertices, overlayUv, lightUv, red, green, blue, alpha, attributes.interpolatorId);
leftFin.render(stack, vertices, overlayUv, lightUv, red, green, blue, alpha); leftFin.render(stack, vertices, overlayUv, lightUv, red, green, blue, alpha);
centerFin.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); rightFin.render(stack, vertices, overlayUv, lightUv, red, green, blue, alpha);
@ -139,6 +138,8 @@ public class ModelSeapony<T extends LivingEntity> extends ModelUnicorn<T> {
public void setVisible(boolean visible) { public void setVisible(boolean visible) {
super.setVisible(visible); super.setVisible(visible);
upperTorsoOverlay.visible = false;
// hide the back legs // hide the back legs
leftLeg.visible = false; leftLeg.visible = false;
rightLeg.visible = false; rightLeg.visible = false;