From d9aae45571d0536107860d66c37318dc63311e77 Mon Sep 17 00:00:00 2001 From: Tofaa2 Date: Wed, 9 Apr 2025 21:35:48 +0400 Subject: [PATCH 1/4] idk how to fix this --- .../java/me/tofaa/entitylib/meta/mobs/golem/ShulkerMeta.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/me/tofaa/entitylib/meta/mobs/golem/ShulkerMeta.java b/api/src/main/java/me/tofaa/entitylib/meta/mobs/golem/ShulkerMeta.java index b41887c..67f5132 100644 --- a/api/src/main/java/me/tofaa/entitylib/meta/mobs/golem/ShulkerMeta.java +++ b/api/src/main/java/me/tofaa/entitylib/meta/mobs/golem/ShulkerMeta.java @@ -23,11 +23,11 @@ public class ShulkerMeta extends MobMeta { } public Direction getAttachFace() { - return super.metadata.getIndex(OFFSET, Direction.DOWN); + return super.metadata.getIndex((byte)16, Direction.DOWN); } public void setAttachFace(Direction value) { - super.metadata.setIndex(OFFSET, EntityDataTypes.INT, value.ordinal()); + super.metadata.setIndex((byte)16, EntityDataTypes.INT, value.ordinal()); } public byte getShieldHeight() { From 5a5c7c8dc19ddc8b25d66e9d649c73bf0250c23b Mon Sep 17 00:00:00 2001 From: steve <50219120+steveb05@users.noreply.github.com> Date: Wed, 30 Apr 2025 13:54:54 +0200 Subject: [PATCH 2/4] fix: correct BaseHorseMeta inheritance and remove non-functional owner methods Inheriting from MobMeta caused incorrect metadata offsets for horses, leading to client disconnections when metadata packets were sent. Vanilla horses don't synchronize Owner UUID via metadata, making the previous owner methods non-functional client-side. Changing inheritance to AgeableMeta also enables baby horse functionality. --- .../meta/mobs/horse/BaseHorseMeta.java | 21 ++++--------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/api/src/main/java/me/tofaa/entitylib/meta/mobs/horse/BaseHorseMeta.java b/api/src/main/java/me/tofaa/entitylib/meta/mobs/horse/BaseHorseMeta.java index 1dd8637..f39cd7a 100644 --- a/api/src/main/java/me/tofaa/entitylib/meta/mobs/horse/BaseHorseMeta.java +++ b/api/src/main/java/me/tofaa/entitylib/meta/mobs/horse/BaseHorseMeta.java @@ -1,16 +1,12 @@ package me.tofaa.entitylib.meta.mobs.horse; -import com.github.retrooper.packetevents.protocol.entity.data.EntityDataTypes; import me.tofaa.entitylib.meta.Metadata; -import me.tofaa.entitylib.meta.types.MobMeta; +import me.tofaa.entitylib.meta.types.AgeableMeta; -import java.util.Optional; -import java.util.UUID; +public abstract class BaseHorseMeta extends AgeableMeta { -public abstract class BaseHorseMeta extends MobMeta { - - public static final byte OFFSET = MobMeta.MAX_OFFSET; - public static final byte MAX_OFFSET = OFFSET + 2; + public static final byte OFFSET = AgeableMeta.MAX_OFFSET; + public static final byte MAX_OFFSET = OFFSET + 1; private final static byte TAMED_BIT = 0x02; private final static byte SADDLED_BIT = 0x04; @@ -70,13 +66,4 @@ public abstract class BaseHorseMeta extends MobMeta { public void setMouthOpen(boolean value) { setMaskBit(OFFSET, MOUTH_OPEN_BIT, value); } - - public Optional getOwner() { - return super.metadata.getIndex(offset(OFFSET, 1), Optional.empty()); - } - - public void setOwner(UUID value) { - super.metadata.setIndex(offset(OFFSET, 1), EntityDataTypes.OPTIONAL_UUID, Optional.of(value)); - } - } From 74871b38bbd222ba3b4bdc66b088d6ce11612e39 Mon Sep 17 00:00:00 2001 From: Bram Date: Thu, 1 May 2025 11:20:38 +0200 Subject: [PATCH 3/4] Fixed: Compile errors due to PacketEvents not being present during the test build phase --- api/build.gradle.kts | 1 + 1 file changed, 1 insertion(+) diff --git a/api/build.gradle.kts b/api/build.gradle.kts index 43334d1..bc0b925 100644 --- a/api/build.gradle.kts +++ b/api/build.gradle.kts @@ -9,6 +9,7 @@ dependencies { compileOnly(libs.bundles.adventure) compileOnly(libs.packetevents.api) + testCompileOnly(libs.packetevents.api) } tasks { From 9032d3305896eb7212322132702a45ae9ce9a3c0 Mon Sep 17 00:00:00 2001 From: Tofaa2 Date: Thu, 1 May 2025 13:41:36 +0400 Subject: [PATCH 4/4] GCI make create release step only available on head --- .github/workflows/dev-build-release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/dev-build-release.yml b/.github/workflows/dev-build-release.yml index 237e53d..e0ba3da 100644 --- a/.github/workflows/dev-build-release.yml +++ b/.github/workflows/dev-build-release.yml @@ -39,6 +39,7 @@ jobs: run: chmod +x ./gradlew && ./gradlew build - name: Create Release + if: github.ref != 'refs/heads/master' uses: softprops/action-gh-release@v2 with: name: '${{ github.ref_name }}: ${{ github.event.head_commit.message }} (${{ github.sha }})'