diff --git a/src/hdskins/java/com/voxelmodpack/hdskins/ImageBufferDownloadHD.java b/src/hdskins/java/com/voxelmodpack/hdskins/ImageBufferDownloadHD.java index 468e54e8..147e0763 100644 --- a/src/hdskins/java/com/voxelmodpack/hdskins/ImageBufferDownloadHD.java +++ b/src/hdskins/java/com/voxelmodpack/hdskins/ImageBufferDownloadHD.java @@ -46,11 +46,11 @@ public class ImageBufferDownloadHD implements ISkinAvailableCallback { // copy layers // leg - drawImage(24, 48, 20, 52, 4, 16, 8, 20); // top - drawImage(28, 48, 24, 52, 8, 16, 12, 20); // bottom - drawImage(20, 52, 16, 64, 8, 20, 12, 32); // inside - drawImage(24, 52, 20, 64, 4, 20, 8, 32); // front - drawImage(28, 52, 24, 64, 0, 20, 4, 32); // outside + drawImage(24, 48, 20, 52, 4, 16, 8, 20); // top + drawImage(28, 48, 24, 52, 8, 16, 12, 20); // bottom + drawImage(20, 52, 16, 64, 8, 20, 12, 32); // inside + drawImage(24, 52, 20, 64, 4, 20, 8, 32); // front + drawImage(28, 52, 24, 64, 0, 20, 4, 32); // outside drawImage(32, 52, 28, 64, 12, 20, 16, 32); // back // arm drawImage(40, 48, 36, 52, 44, 16, 48, 20); // top diff --git a/src/main/java/com/minelittlepony/model/ponies/ModelVillagerPony.java b/src/main/java/com/minelittlepony/model/ponies/ModelVillagerPony.java index 6d34fdf6..62a8f126 100644 --- a/src/main/java/com/minelittlepony/model/ponies/ModelVillagerPony.java +++ b/src/main/java/com/minelittlepony/model/ponies/ModelVillagerPony.java @@ -16,6 +16,8 @@ public class ModelVillagerPony extends ModelAlicorn { private int profession; + private boolean special; + public ModelVillagerPony() { super(false); } @@ -30,23 +32,26 @@ public class ModelVillagerPony extends ModelAlicorn { @Override public void setLivingAnimations(EntityLivingBase entity, float limbSwing, float limbSwingAmount, float partialTickTime) { profession = getProfession(entity); + special = "Derpy".equals(entity.getCustomNameTag()); } @Override protected void renderBody(Entity entity, float move, float swing, float ticks, float headYaw, float headPitch, float scale) { super.renderBody(entity, move, swing, ticks, headYaw, headPitch, scale); - if (profession == 2) { - trinket.render(scale); - } else if (profession > 2) { - apron.render(scale); + if (!special) { + if (profession == 2) { + trinket.render(scale); + } else if (profession > 2) { + apron.render(scale); + } } } @Override public boolean isWearing(PonyWearable wearable) { if (wearable == PonyWearable.SADDLE_BAGS) { - return profession > -1 && profession < 2; + return !special && profession > -1 && profession < 2; } return super.isWearing(wearable); diff --git a/src/main/java/com/minelittlepony/model/ponies/ModelWitchPony.java b/src/main/java/com/minelittlepony/model/ponies/ModelWitchPony.java index 5b5267ef..10dfea23 100644 --- a/src/main/java/com/minelittlepony/model/ponies/ModelWitchPony.java +++ b/src/main/java/com/minelittlepony/model/ponies/ModelWitchPony.java @@ -30,6 +30,9 @@ public class ModelWitchPony extends ModelZebra { super.updateLivingState(entity, pony); EntityWitch witch = ((EntityWitch) entity); + if ("Filly".equals(entity.getCustomNameTag())) { + isChild = true; + } leftArmPose = ArmPose.EMPTY; rightArmPose = witch.getHeldItemMainhand().isEmpty() ? ArmPose.EMPTY : ArmPose.ITEM; } diff --git a/src/main/java/com/minelittlepony/render/ponies/RenderPonyVillager.java b/src/main/java/com/minelittlepony/render/ponies/RenderPonyVillager.java index 04ac32bd..99d1d816 100644 --- a/src/main/java/com/minelittlepony/render/ponies/RenderPonyVillager.java +++ b/src/main/java/com/minelittlepony/render/ponies/RenderPonyVillager.java @@ -18,6 +18,8 @@ public class RenderPonyVillager extends RenderPonyMob { new ResourceLocation("minelittlepony", "textures/entity/villager/butcher_pony.png"), new ResourceLocation("minelittlepony", "textures/entity/villager/villager_pony.png") }; + private static final ResourceLocation EGG = new ResourceLocation("minelittlepony", "textures/entity/villager/silly_pony.png"); + private static final ResourceLocation EGG_2 = new ResourceLocation("minelittlepony", "textures/entity/villager/tiny_silly_pony.png"); public RenderPonyVillager(RenderManager manager) { super(manager, PMAPI.villager); @@ -31,6 +33,12 @@ public class RenderPonyVillager extends RenderPonyMob { @Override protected ResourceLocation getTexture(EntityVillager entity) { + if ("Derpy".equals(entity.getCustomNameTag())) { + if (entity.isChild()) { + return EGG_2; + } + return EGG; + } return PROFESSIONS[entity.getProfession() % PROFESSIONS.length]; } } diff --git a/src/main/resources/assets/minelittlepony/textures/entity/villager/silly_pony.png b/src/main/resources/assets/minelittlepony/textures/entity/villager/silly_pony.png new file mode 100644 index 00000000..5abe87f6 Binary files /dev/null and b/src/main/resources/assets/minelittlepony/textures/entity/villager/silly_pony.png differ diff --git a/src/main/resources/assets/minelittlepony/textures/entity/villager/tiny_silly_pony.png b/src/main/resources/assets/minelittlepony/textures/entity/villager/tiny_silly_pony.png new file mode 100644 index 00000000..d684e673 Binary files /dev/null and b/src/main/resources/assets/minelittlepony/textures/entity/villager/tiny_silly_pony.png differ