diff --git a/src/main/java/com/minelittlepony/client/model/ModelType.java b/src/main/java/com/minelittlepony/client/model/ModelType.java index 5b9338c9..755fd0ab 100644 --- a/src/main/java/com/minelittlepony/client/model/ModelType.java +++ b/src/main/java/com/minelittlepony/client/model/ModelType.java @@ -14,13 +14,7 @@ import com.minelittlepony.api.pony.meta.Race; import com.minelittlepony.api.pony.meta.Wearable; import com.minelittlepony.client.model.armour.PonyArmourModel; import com.minelittlepony.client.model.entity.*; -import com.minelittlepony.client.model.entity.race.AlicornModel; -import com.minelittlepony.client.model.entity.race.ChangelingModel; -import com.minelittlepony.client.model.entity.race.EarthPonyModel; -import com.minelittlepony.client.model.entity.race.PegasusModel; -import com.minelittlepony.client.model.entity.race.SeaponyModel; -import com.minelittlepony.client.model.entity.race.UnicornModel; -import com.minelittlepony.client.model.entity.race.ZebraModel; +import com.minelittlepony.client.model.entity.race.*; import com.minelittlepony.client.model.gear.*; import com.minelittlepony.client.render.entity.PlayerPonyRenderer; import com.minelittlepony.client.render.entity.PlayerSeaponyRenderer; @@ -82,7 +76,7 @@ public final class ModelType { public static final PlayerModelKey> BAT_PONY = registerPlayer("bat_pony", Race.BATPONY, PegasusModel::new); public static final PlayerModelKey> CHANGELING = registerPlayer("changeling", Race.CHANGELING, ChangelingModel::new); public static final PlayerModelKey> CHANGEDLING = registerPlayer("reformed_changeling", Race.CHANGEDLING, ChangelingModel::new); - public static final PlayerModelKey> ZEBRA = registerPlayer("zebra", Race.ZEBRA, ZebraModel::new); + public static final PlayerModelKey> ZEBRA = registerPlayer("zebra", Race.ZEBRA, EarthPonyModel::new); static PlayerModelKey registerPlayer(String name, Race race, BiFunction constructor) { return registerPlayer(name, race, constructor, PlayerPonyRenderer::new); diff --git a/src/main/java/com/minelittlepony/client/model/entity/WitchPonyModel.java b/src/main/java/com/minelittlepony/client/model/entity/WitchPonyModel.java index a5d937d3..a380fbd0 100644 --- a/src/main/java/com/minelittlepony/client/model/entity/WitchPonyModel.java +++ b/src/main/java/com/minelittlepony/client/model/entity/WitchPonyModel.java @@ -7,9 +7,9 @@ import net.minecraft.util.math.MathHelper; import com.minelittlepony.api.model.ModelAttributes; import com.minelittlepony.api.pony.IPony; import com.minelittlepony.api.pony.meta.Wearable; -import com.minelittlepony.client.model.entity.race.ZebraModel; +import com.minelittlepony.client.model.entity.race.EarthPonyModel; -public class WitchPonyModel extends ZebraModel { +public class WitchPonyModel extends EarthPonyModel { public WitchPonyModel(ModelPart tree) { super(tree, false); diff --git a/src/main/java/com/minelittlepony/client/model/entity/race/ZebraModel.java b/src/main/java/com/minelittlepony/client/model/entity/race/ZebraModel.java deleted file mode 100644 index 10ee73ff..00000000 --- a/src/main/java/com/minelittlepony/client/model/entity/race/ZebraModel.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.minelittlepony.client.model.entity.race; - -import net.minecraft.client.model.ModelPart; -import net.minecraft.client.util.math.MatrixStack; -import net.minecraft.entity.LivingEntity; - -import com.minelittlepony.client.model.armour.PonyArmourModel; -import com.minelittlepony.api.model.BodyPart; -import com.minelittlepony.api.model.armour.IArmour; -import com.minelittlepony.client.model.armour.ArmourWrapper; - -public class ZebraModel extends EarthPonyModel { - - public ZebraModel(ModelPart tree, boolean useSmallArms) { - super(tree, useSmallArms); - } - - @Override - public IArmour createArmour() { - return ArmourWrapper.of(Armour::new); - } - - @Override - public void transform(BodyPart part, MatrixStack stack) { - applyLongNeck(part, stack); - super.transform(part, stack); - } - - class Armour extends PonyArmourModel { - public Armour(ModelPart tree) { - super(tree); - } - - @Override - public void transform(BodyPart part, MatrixStack stack) { - applyLongNeck(part, stack); - super.transform(part, stack); - } - } - - static void applyLongNeck(BodyPart part, MatrixStack stack) { - if (part == BodyPart.HEAD || part == BodyPart.NECK) { - stack.translate(0, -0.1F, 0); - } - if (part == BodyPart.NECK) { - stack.scale(1, 1.3F, 1); - } - } -} diff --git a/src/main/resources/assets/minelittlepony/models/races/steve/zebra.json b/src/main/resources/assets/minelittlepony/models/races/steve/zebra.json index 6b72b04a..1fe7c1e6 100644 --- a/src/main/resources/assets/minelittlepony/models/races/steve/zebra.json +++ b/src/main/resources/assets/minelittlepony/models/races/steve/zebra.json @@ -1,7 +1,12 @@ { "parent": "minelittlepony:steve_pony", + "locals": { + "head_pivot_y": -1.2, + "neck_dilate_y": 1.6 + }, "data": { "head": { + "pivot": [ 0, "#head_pivot_y", 0 ], "cubes": [ { "from": [-4, -6, -6], "size": [ 8, 8, 8] } ], diff --git a/src/main/resources/assets/minelittlepony/models/steve_pony.json b/src/main/resources/assets/minelittlepony/models/steve_pony.json index 7fd8dee9..0429d274 100644 --- a/src/main/resources/assets/minelittlepony/models/steve_pony.json +++ b/src/main/resources/assets/minelittlepony/models/steve_pony.json @@ -12,7 +12,9 @@ "arm_z": [2, "-", "#arm_depth"], "arm_rotation_x": 0, "arm_rotation_x_neg": [0, "-", "#arm_rotation_x"], - "arm_rotation_y": 8 + "arm_rotation_y": 8, + "head_pivot_y": 0, + "neck_dilate_y": 0 }, "skeleton": { "upper_torso": { @@ -32,6 +34,7 @@ }, "data": { "head": { + "pivot": [ 0, "#head_pivot_y", 0 ], "cubes": [ { "from": [-4, -6, -6], "size": [ 8, 8, 8] } ], @@ -52,7 +55,7 @@ }, "hat": { "texture": { "u": 32, "v": 0 }, - "pivot": [ 0, 0, 0 ], + "pivot": [ 0, "#head_pivot_y", 0 ], "cubes": [ { "from": [-4, -6, -6], "size": [ 8, 8, 8], "dilate": 0.5 } ] @@ -172,6 +175,7 @@ }, "neck": { "type": "mson:planar", + "dilate": [ 0, "#neck_dilate_y", 0 ], "texture": { "u": 0, "v": 16 }, "rotate": [9, 0, 0], "north": [-2, 1.199998, -2.8, 4, 4],