diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 31344ffaf..ce948ac2c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -51,16 +51,7 @@ jobs: bootstrap/viaproxy/build/libs/Geyser-ViaProxy.jar - name: Publish to Maven Repository - if: >- - ${{ - success() && - github.repository == 'GeyserMC/Geyser' && - ( - github.ref_name == 'master' || - (github.event.pull_request && - contains(github.event.pull_request.labels.*.name, 'PR: Needs Testing')) - ) - }} + if: ${{ success() && github.repository == 'GeyserMC/Geyser' && (github.ref_name == 'master' || startsWith(github.ref_name, 'feature/')) }} run: ./gradlew publish env: BUILD_NUMBER: ${{ steps.release-info.outputs.curentRelease }} diff --git a/api/src/main/java/org/geysermc/geyser/api/entity/EntityData.java b/api/src/main/java/org/geysermc/geyser/api/entity/EntityData.java index 191c037f0..c252aac6c 100644 --- a/api/src/main/java/org/geysermc/geyser/api/entity/EntityData.java +++ b/api/src/main/java/org/geysermc/geyser/api/entity/EntityData.java @@ -66,10 +66,7 @@ public interface EntityData { @Nullable GeyserEntity byGeyserId(@NonNegative long geyserId); /** - * Displays a player entity as emoting to this client. - * - * @param emoter the player entity emoting - * @param emoteId the emote ID to send to this client + * @deprecated use {@link GeyserConnection#showEmote(GeyserPlayerEntity, String)} instead */ @Deprecated void showEmote(@NonNull GeyserPlayerEntity emoter, @NonNull String emoteId); diff --git a/api/src/main/java/org/geysermc/geyser/api/entity/custom/CustomEntityDefinition.java b/api/src/main/java/org/geysermc/geyser/api/entity/custom/CustomEntityDefinition.java index f9a50de87..034739628 100644 --- a/api/src/main/java/org/geysermc/geyser/api/entity/custom/CustomEntityDefinition.java +++ b/api/src/main/java/org/geysermc/geyser/api/entity/custom/CustomEntityDefinition.java @@ -44,9 +44,19 @@ public interface CustomEntityDefinition extends GeyserEntityDefinition { * Creates or retrieves a GeyserEntityDefinition by the Bedrock entity type identifier. * * @param identifier the Bedrock entity identifier - * @return the GeyserEntityDefinition + * @return the CustomEntityDefinition */ static @NonNull CustomEntityDefinition of(@NonNull Identifier identifier) { return GeyserApi.api().provider(GeyserEntityDefinition.class, identifier); } + + /** + * Creates or retrieves a GeyserEntityDefinition by the Bedrock entity type identifier. + * + * @param identifier the Bedrock entity identifier, in string format + * @return the CustomEntityDefinition + */ + static @NonNull CustomEntityDefinition of(@NonNull String identifier) { + return of(Identifier.of(identifier)); + } } diff --git a/core/src/main/java/org/geysermc/geyser/entity/BedrockEntityDefinition.java b/core/src/main/java/org/geysermc/geyser/entity/BedrockEntityDefinition.java index 72530bea9..55ef704ad 100644 --- a/core/src/main/java/org/geysermc/geyser/entity/BedrockEntityDefinition.java +++ b/core/src/main/java/org/geysermc/geyser/entity/BedrockEntityDefinition.java @@ -58,7 +58,6 @@ public record BedrockEntityDefinition( return Registries.BEDROCK_ENTITY_DEFINITIONS.get().get(identifier); } - Objects.requireNonNull(identifier, "identifier"); if (identifier.vanilla()) { throw new IllegalArgumentException("Cannot create custom entity in vanilla namespace! " + identifier); } diff --git a/core/src/main/java/org/geysermc/geyser/entity/type/Entity.java b/core/src/main/java/org/geysermc/geyser/entity/type/Entity.java index 06c0183f0..1deac5fbc 100644 --- a/core/src/main/java/org/geysermc/geyser/entity/type/Entity.java +++ b/core/src/main/java/org/geysermc/geyser/entity/type/Entity.java @@ -853,9 +853,10 @@ public class Entity implements GeyserEntity { } public void offset(float offset) { + this.offset = offset; // TODO queue? if (isValid()) { - this.moveRelative(0, offset, 0, 0, 0, isOnGround()); + this.moveRelative(0, 0, 0, 0, 0, isOnGround()); } }