From f5bfa14bb12af5fccd7dfd9e4cff5e6c79b34b7b Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 9 Feb 2024 19:24:49 +0000 Subject: [PATCH 1/8] Increase time required before a pony will lie down --- src/main/java/com/minelittlepony/api/model/ModelAttributes.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/minelittlepony/api/model/ModelAttributes.java b/src/main/java/com/minelittlepony/api/model/ModelAttributes.java index 6fa8304d..6d3dd29d 100644 --- a/src/main/java/com/minelittlepony/api/model/ModelAttributes.java +++ b/src/main/java/com/minelittlepony/api/model/ModelAttributes.java @@ -154,7 +154,7 @@ public class ModelAttributes { isLyingDown = isSleeping; if (entity instanceof PlayerEntity) { boolean moving = entity.getVelocity().multiply(1, 0, 1).length() == 0 && entity.isSneaking(); - isLyingDown |= getMainInterpolator().interpolate("lyingDown", moving ? 10 : 0, 10) >= 9; + isLyingDown |= getMainInterpolator().interpolate("lyingDown", moving ? 10 : 0, 200) >= 9; } isCrouching = !isLyingDown && !isSitting && mode == Mode.THIRD_PERSON && PonyPosture.isCrouching(pony, entity); From 7da44b879c6bdf924a589b4e756342b337668ec7 Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 9 Feb 2024 19:25:23 +0000 Subject: [PATCH 2/8] Fix various transformations for when a pony is lying down but not sleeping --- .../client/model/ClientPonyModel.java | 2 +- .../render/entity/feature/CapeFeature.java | 5 +++- .../client/transform/PonyTransformation.java | 23 ++++++++++++------- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java b/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java index 321e9f98..2caf39d8 100644 --- a/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java +++ b/src/main/java/com/minelittlepony/client/model/ClientPonyModel.java @@ -51,7 +51,7 @@ public abstract class ClientPonyModel extends MsonPlayer child = entity.isBaby(); attributes.updateLivingState(entity, pony, mode); PonyModelPrepareCallback.EVENT.invoker().onPonyModelPrepared(entity, this, mode); - sneaking = attributes.isCrouching; + sneaking = attributes.isCrouching && !attributes.isLyingDown; riding = attributes.isSitting; } diff --git a/src/main/java/com/minelittlepony/client/render/entity/feature/CapeFeature.java b/src/main/java/com/minelittlepony/client/render/entity/feature/CapeFeature.java index 942443db..841a6d14 100644 --- a/src/main/java/com/minelittlepony/client/render/entity/feature/CapeFeature.java +++ b/src/main/java/com/minelittlepony/client/render/entity/feature/CapeFeature.java @@ -31,8 +31,11 @@ public class CapeFeature> stack.push(); - model.transform(BodyPart.BODY, stack); stack.translate(0, 0.24F, 0); + if (model.getAttributes().isLyingDown) { + stack.translate(0, -0.05F, 0); + } + model.transform(BodyPart.BODY, stack); model.getBodyPart(BodyPart.BODY).rotate(stack); double capeX = MathHelper.lerp(tickDelta, player.capeX, player.prevCapeX) - MathHelper.lerp(tickDelta, player.prevX, player.getX()); diff --git a/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java b/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java index 242d694b..dbdc2f8e 100644 --- a/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java +++ b/src/main/java/com/minelittlepony/client/transform/PonyTransformation.java @@ -20,7 +20,8 @@ public enum PonyTransformation { 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.61F, 0.1F); + 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) { @@ -28,7 +29,8 @@ public enum PonyTransformation { if (model.getAttributes().isCrouching) stack.translate(-0.03F, 0.03F, 0.13F); break; case HEAD: - if (model.getAttributes().isCrouching) stack.translate(0, 0.1F, 0); + if (model.getAttributes().isLyingDown) stack.translate(-0.05F, -0.05F, 0); + if (model.getAttributes().isCrouching) stack.translate(0, 0.1F, -0); break; case BACK: translateForRider(stack); @@ -42,7 +44,8 @@ public enum PonyTransformation { public void transform(PonyModel model, BodyPart part, MatrixStack stack) { if (model.getAttributes().isSwimming) stack.translate(0, -0.2F, 0); if (model.getAttributes().isCrouching) stack.translate(0, -0.15F, 0); - if (model.getAttributes().isLyingDown) stack.translate(0, -0.6F, 0.15F); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.68F, 0.15F); + if (model.getAttributes().isSleeping) stack.translate(0, 0.08F, 0); if (model.getAttributes().isSitting) stack.translate(0, 0, -0.2F); switch (part) { @@ -77,7 +80,8 @@ public enum PonyTransformation { @Override public void transform(PonyModel model, BodyPart part, MatrixStack stack) { if (model.getAttributes().isCrouching) stack.translate(0, -0.15F, 0); - if (model.getAttributes().isLyingDown) stack.translate(0, -0.6F, 0.25F); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.66F, 0.25F); + if (model.getAttributes().isSleeping) stack.translate(0, 0.06F, 0); if (model.getAttributes().isSitting) stack.translate(0, 0, -0.2F); switch (part) { @@ -88,7 +92,7 @@ public enum PonyTransformation { break; case HEAD: stack.translate(0, -0.14F, -0.06F); - if (model.getAttributes().isLyingDown) stack.translate(0, 0, -0.1F); + if (model.getAttributes().isLyingDown) stack.translate(-0.05F, 0, -0.1F); if (model.getAttributes().isCrouching) stack.translate(0, 0.15F, 0); break; case BODY: @@ -113,7 +117,8 @@ public enum PonyTransformation { public void transform(PonyModel model, BodyPart part, MatrixStack stack) { if (model.getAttributes().isSwimming) stack.translate(0, -0.9F, 0); if (model.getAttributes().isCrouching) stack.translate(0, -0.2F, 0); - if (model.getAttributes().isLyingDown) stack.translate(0, -0.8F, -0.3F); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.98F, -0.3F); + if (model.getAttributes().isSleeping) stack.translate(0, 0.18F, 0); if (model.getAttributes().isSitting) stack.translate(0, -0.6F, -0.2F); stack.translate(0, 0.2F, 0); @@ -142,7 +147,8 @@ public enum PonyTransformation { @Override public void transform(PonyModel model, BodyPart part, MatrixStack stack) { if (model.getAttributes().isCrouching) stack.translate(0, -0.15F, 0); - if (model.getAttributes().isLyingDown) stack.translate(0, -0.5F, 0.35F); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.6F, 0.35F); + if (model.getAttributes().isSleeping) stack.translate(0, 0.1F, 0); if (model.getAttributes().isSitting) stack.translate(0, 0.1F, -0.2F); switch (part) { @@ -175,7 +181,8 @@ public enum PonyTransformation { public void transform(PonyModel model, BodyPart part, MatrixStack stack) { if (model.getAttributes().isSwimming) stack.translate(0, -0.6F, 0); if (model.getAttributes().isCrouching) stack.translate(0, -0.15F, 0); - if (model.getAttributes().isLyingDown) stack.translate(0, -0.45F, -0.3F); + if (model.getAttributes().isLyingDown) stack.translate(0, -0.71F, -0.3F); + if (model.getAttributes().isSleeping) stack.translate(0, 0.26F, 0); if (model.getAttributes().isSitting) stack.translate(0, -0.4F, -0.2F); switch (part) { From 8ce2fc4e6d73c5bdbacf4bfef390010c323720ad Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 9 Feb 2024 19:39:12 +0000 Subject: [PATCH 3/8] Update mson --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index c9a4205c..38b75e5a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -23,4 +23,4 @@ org.gradle.daemon=false modmenu_version=8.0.0 kirin_version=1.16.0+1.20.2 hd_skins_version=6.11.0+1.20.2 - mson_version=1.9.2 + mson_version=1.9.3+1.20.2 From 9c8d6d0a86a36da7bbebe006fdaa2fda7c7772b6 Mon Sep 17 00:00:00 2001 From: Sollace Date: Sat, 9 Dec 2023 23:33:38 +0000 Subject: [PATCH 4/8] Actually use the dynamic depends blocks --- build.gradle | 3 ++- src/main/resources/fabric.mod.json | 9 ++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index df2aeb0c..33c5f75f 100644 --- a/build.gradle +++ b/build.gradle @@ -86,7 +86,8 @@ processResources { expand "version": project.version.toString(), "minecraftVersion": project.minecraft_version_range, "loaderVersion": ">=${project.loader_version}", - "fabricVersion": ">=${project.fabric_version}" + "fabricVersion": ">=${project.fabric_version}", + "kirinVersion": ">=${project.kirin_version}" } from 'LICENSE' diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index efecb412..0db7de40 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -31,12 +31,11 @@ "minelp.mixin.json" ], "depends": { - "fabricloader": ">=0.12.0", + "minecraft": "${minecraftVersion}", + "fabricloader": "${loaderVersion}", "java": ">=17", - "fabric-api-base": ">=0.1.0", - "fabric-lifecycle-events-v1": ">=0.1.0", - "fabric-resource-loader-v0": ">=0.1.0", - "kirin": "*" + "fabric-api": "${fabricVersion}" + "kirin": "${kirinVersion}" }, "suggests": { "hdskins": "*", From f3cc92dee61327752f643c7f9b81a5219b560c59 Mon Sep 17 00:00:00 2001 From: Sollace Date: Tue, 9 Jan 2024 16:44:28 +0100 Subject: [PATCH 5/8] Fix typo --- src/main/resources/fabric.mod.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 0db7de40..ff999d07 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -34,7 +34,7 @@ "minecraft": "${minecraftVersion}", "fabricloader": "${loaderVersion}", "java": ">=17", - "fabric-api": "${fabricVersion}" + "fabric-api": "${fabricVersion}", "kirin": "${kirinVersion}" }, "suggests": { From aa08f123200baf44d69824118e3dca1e6fbad36c Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 9 Feb 2024 19:47:31 +0000 Subject: [PATCH 6/8] Add mson to the depends block (almost forgot this) --- build.gradle | 3 ++- src/main/resources/fabric.mod.json | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 33c5f75f..9b82f8ab 100644 --- a/build.gradle +++ b/build.gradle @@ -87,7 +87,8 @@ processResources { "minecraftVersion": project.minecraft_version_range, "loaderVersion": ">=${project.loader_version}", "fabricVersion": ">=${project.fabric_version}", - "kirinVersion": ">=${project.kirin_version}" + "kirinVersion": ">=${project.kirin_version}", + "msonVersion": ">=${project.mson_version}" } from 'LICENSE' diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index ff999d07..8916f253 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -35,7 +35,8 @@ "fabricloader": "${loaderVersion}", "java": ">=17", "fabric-api": "${fabricVersion}", - "kirin": "${kirinVersion}" + "kirin": "${kirinVersion}", + "mson": "${msonVersion}" }, "suggests": { "hdskins": "*", From 76211930d515084c11479d1cf4c4bece74f9d728 Mon Sep 17 00:00:00 2001 From: Sollace Date: Tue, 5 Mar 2024 12:10:15 +0000 Subject: [PATCH 7/8] Fixed not all wearables being detected --- .../java/com/minelittlepony/api/pony/meta/TriggerPixel.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/minelittlepony/api/pony/meta/TriggerPixel.java b/src/main/java/com/minelittlepony/api/pony/meta/TriggerPixel.java index 2f818adb..6537c926 100644 --- a/src/main/java/com/minelittlepony/api/pony/meta/TriggerPixel.java +++ b/src/main/java/com/minelittlepony/api/pony/meta/TriggerPixel.java @@ -62,8 +62,8 @@ public interface TriggerPixel { @SuppressWarnings("unchecked") Set values = EnumSet.noneOf((Class)def.def().getClass()); if (flagReader.readFlag(ColorHelper.Argb.getRed(color), values) - || flagReader.readFlag(ColorHelper.Argb.getGreen(color), values) - || flagReader.readFlag(ColorHelper.Argb.getBlue(color), values)) { + | flagReader.readFlag(ColorHelper.Argb.getGreen(color), values) + | flagReader.readFlag(ColorHelper.Argb.getBlue(color), values)) { return new Flags<>(def.def(), values, color & 0x00FFFFFF); } return def; From dfa9ce89779e97347bf554592290a5561743fa87 Mon Sep 17 00:00:00 2001 From: Sollace Date: Tue, 5 Mar 2024 12:24:54 +0000 Subject: [PATCH 8/8] Fix giant scale --- .../minelittlepony/client/render/entity/ZomponyRenderer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/minelittlepony/client/render/entity/ZomponyRenderer.java b/src/main/java/com/minelittlepony/client/render/entity/ZomponyRenderer.java index 70a5bbda..967e9539 100644 --- a/src/main/java/com/minelittlepony/client/render/entity/ZomponyRenderer.java +++ b/src/main/java/com/minelittlepony/client/render/entity/ZomponyRenderer.java @@ -38,6 +38,6 @@ public class ZomponyRenderer extends PonyRenderer< } public static ZomponyRenderer giant(EntityRendererFactory.Context context) { - return new ZomponyRenderer<>(context, TextureSupplier.of(ZOMBIE), 3); + return new ZomponyRenderer<>(context, TextureSupplier.of(ZOMBIE), 6.8F); } }