diff --git a/src/main/java/com/minelittlepony/model/ponies/ModelZombiePony.java b/src/main/java/com/minelittlepony/model/ponies/ModelZombiePony.java index a23751cd..56920d9e 100644 --- a/src/main/java/com/minelittlepony/model/ponies/ModelZombiePony.java +++ b/src/main/java/com/minelittlepony/model/ponies/ModelZombiePony.java @@ -4,9 +4,19 @@ import com.minelittlepony.model.ModelMobPony; import com.minelittlepony.render.AbstractPonyRenderer; import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; import net.minecraft.util.math.MathHelper; public class ModelZombiePony extends ModelMobPony { + + public boolean isPegasus; + + @Override + public void setLivingAnimations(EntityLivingBase entity, float move, float swing, float ticks) { + isPegasus = entity.getUniqueID().getLeastSignificantBits() % 30 == 0; + isFlying = !entity.onGround; + } + @Override protected void rotateLegs(float move, float swing, float ticks, Entity entity) { super.rotateLegs(move, swing, ticks, entity); @@ -24,4 +34,9 @@ public class ModelZombiePony extends ModelMobPony { public boolean islookAngleRight(float move) { return MathHelper.sin(move / 20) < 0; } + + @Override + public boolean canFly() { + return isPegasus; + } } diff --git a/src/main/java/com/minelittlepony/render/layer/LayerHeldPonyItem.java b/src/main/java/com/minelittlepony/render/layer/LayerHeldPonyItem.java index f4d7f079..c73b842b 100644 --- a/src/main/java/com/minelittlepony/render/layer/LayerHeldPonyItem.java +++ b/src/main/java/com/minelittlepony/render/layer/LayerHeldPonyItem.java @@ -4,7 +4,6 @@ import com.minelittlepony.model.BodyPart; import com.minelittlepony.model.capabilities.IModel; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.block.model.ItemCameraTransforms.TransformType; @@ -39,14 +38,13 @@ public class LayerHeldPonyItem extends AbstractPonyL ItemStack right = getRightItem(entity); if (!left.isEmpty() || !right.isEmpty()) { - ModelBase model = getMainModel(); + IModel model = getMainModel(); pushMatrix(); - if (model instanceof IModel) { - ((IModel) model).transform(BodyPart.LEGS); - } - if (model.isChild) { + model.transform(BodyPart.LEGS); + + if (model.isChild()) { translate(0, 0.625, 0); rotate(-20, -1, 0, 0); scale(.5, .5, .5); diff --git a/src/main/resources/assets/minelittlepony/textures/entity/zombie/husk_pony.png b/src/main/resources/assets/minelittlepony/textures/entity/zombie/husk_pony.png index 3729928f..5a21fb5a 100644 Binary files a/src/main/resources/assets/minelittlepony/textures/entity/zombie/husk_pony.png and b/src/main/resources/assets/minelittlepony/textures/entity/zombie/husk_pony.png differ diff --git a/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pigman_pony.png b/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pigman_pony.png index 3a2e9e7c..58c42ce6 100644 Binary files a/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pigman_pony.png and b/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pigman_pony.png differ diff --git a/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pony.png b/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pony.png index f82c7f8d..ea986545 100644 Binary files a/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pony.png and b/src/main/resources/assets/minelittlepony/textures/entity/zombie/zombie_pony.png differ