From 77fe8b75a9380d158f303b088da4bb1372159b95 Mon Sep 17 00:00:00 2001 From: SKL <37816816+SuperKirbylover@users.noreply.github.com> Date: Wed, 6 Nov 2024 01:03:31 -0500 Subject: [PATCH] minor bugfix + stocky bodytype - added stocky bodytype with the trigger pixel of #b2e7dd - fixed [this issue mentioned here](https://github.com/MineLittlePony/MineLittlePony/issues/289) --- build.gradle | 2 +- .../api/pony/meta/SizePreset.java | 1 + .../client/transform/PonyTransformation.java | 39 ++++++++++++++++++- 3 files changed, 39 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 42915b88..71fa5818 100644 --- a/build.gradle +++ b/build.gradle @@ -175,4 +175,4 @@ publishing { } } } -} +} \ No newline at end of file diff --git a/src/main/java/com/minelittlepony/api/pony/meta/SizePreset.java b/src/main/java/com/minelittlepony/api/pony/meta/SizePreset.java index d49c2223..b844c993 100644 --- a/src/main/java/com/minelittlepony/api/pony/meta/SizePreset.java +++ b/src/main/java/com/minelittlepony/api/pony/meta/SizePreset.java @@ -16,6 +16,7 @@ public enum SizePreset implements Size { NORMAL (0x000000, 0.4f, 0.8F, 0.8F), YEARLING(0x53beff, 0.4F, 0.6F, 0.65F), FOAL (0xffbe53, 0.25f, 0.6F, 0.5F), + STOCKY (0xb2e7dd, 0.45F, 0.8F, 0.8F), UNSET (0x000000, 1, 1, 1); private final int triggerValue; diff --git a/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java b/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java index dbdc2f8e..92676ffc 100644 --- a/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java +++ b/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java @@ -29,8 +29,8 @@ public enum PonyTransformation { if (model.getAttributes().isCrouching) stack.translate(-0.03F, 0.03F, 0.13F); break; case HEAD: - if (model.getAttributes().isLyingDown) stack.translate(-0.05F, -0.05F, 0); - if (model.getAttributes().isCrouching) stack.translate(0, 0.1F, -0); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.05F, 0); + if (model.getAttributes().isCrouching) stack.translate(0, 0.1F, 0); break; case BACK: translateForRider(stack); @@ -38,6 +38,41 @@ public enum PonyTransformation { default: } } + }, + STOCKY(SizePreset.STOCKY, 0, 3.2F, 0.75F) { + @Override + public void transform(PonyModel model, BodyPart part, MatrixStack stack) { + if (model.getAttributes().isSwimming) stack.translate(0, -0.3F, 0); + if (model.getAttributes().isCrouching) stack.translate(0, -0.2F, 0); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.77F, 0.1F); + if (model.getAttributes().isSleeping) stack.translate(0, 0.16F, 0); + if (model.getAttributes().isSitting) stack.translate(0, -0.2F, -0.2F); + + switch (part) { + case NECK: + stack.scale(1.4F, 1, 1.2F); + if (model.getAttributes().isCrouching) stack.translate(-0.03F, 0.03F, 0.13F); + break; + case HEAD: + if (model.getAttributes().isLyingDown) stack.translate(0, -0.05F, 0); + if (model.getAttributes().isCrouching) stack.translate(0, 0.1F, 0); + break; + case BODY: + stack.translate(0, -0.1F, -0.05F); + if (model.getAttributes().isCrouching) stack.translate(0, -0.07F, 0.04F); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.1F, 0); + stack.scale(1.4F, 1.3F, 1.1F); + break; + case LEGS: + stack.translate(0, 0, -0.1F); + if (model.getAttributes().isCrouching) stack.translate(0, 0, 0.1F); + stack.scale(1.1F, 1, 1.1F); + break; + case BACK: + translateForRider(stack); + break; + } + } }, LANKY(SizePreset.LANKY, 0, 2.6F, 0.75F) { @Override