diff --git a/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java b/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java index aaced3da..9c682f9d 100644 --- a/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java +++ b/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java @@ -3,6 +3,7 @@ package com.minelittlepony.client.model; import net.minecraft.client.model.Cuboid; import net.minecraft.client.render.entity.model.BipedEntityModel; import net.minecraft.client.render.entity.model.PlayerEntityModel; +import net.minecraft.client.render.entity.model.BipedEntityModel.ArmPose; import net.minecraft.entity.LivingEntity; import net.minecraft.util.AbsoluteHand; @@ -85,6 +86,10 @@ public abstract class ClientPonyModel extends PlayerEnti return super.getArm(side); } + public ArmPose getArmPoseForSide(AbsoluteHand side) { + return side == AbsoluteHand.RIGHT ? rightArmPose : leftArmPose; + } + /** * Copies this model's attributes into the passed model. */ diff --git a/src/main/java/com/minelittlepony/client/model/races/ModelUnicorn.java b/src/main/java/com/minelittlepony/client/model/races/ModelUnicorn.java index b4fbced7..d6fd2e1a 100644 --- a/src/main/java/com/minelittlepony/client/model/races/ModelUnicorn.java +++ b/src/main/java/com/minelittlepony/client/model/races/ModelUnicorn.java @@ -45,10 +45,6 @@ public class ModelUnicorn extends ModelEarthPony impl unicornArmLeft.rotate(0, 0, 0).around(-7, 12, -2); } - public ArmPose getArmPoseForSide(AbsoluteHand side) { - return side == AbsoluteHand.RIGHT ? rightArmPose : leftArmPose; - } - @Override protected void animateBreathing(float ticks) { if (canCast()) { @@ -124,6 +120,9 @@ public class ModelUnicorn extends ModelEarthPony impl @Override public Cuboid getArm(AbsoluteHand side) { - return canCast() ? getUnicornArmForSide(side) : super.getArm(side); + if (canCast() && getArmPoseForSide(side) != ArmPose.EMPTY) { + return getUnicornArmForSide(side); + } + return super.getArm(side); } }