From 75d5f07170bec2292c74878c13ac64ee5b151490 Mon Sep 17 00:00:00 2001 From: onebeastchris Date: Thu, 27 Nov 2025 22:18:12 +0100 Subject: [PATCH] Apply some suggestions --- .../org/geysermc/geyser/entity/BedrockEntityDefinition.java | 3 ++- .../bedrock/entity/player/input/BedrockMovePlayer.java | 4 ++-- core/src/main/java/org/geysermc/geyser/util/EntityUtils.java | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) 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 7f5b0983e..1498b3b8e 100644 --- a/core/src/main/java/org/geysermc/geyser/entity/BedrockEntityDefinition.java +++ b/core/src/main/java/org/geysermc/geyser/entity/BedrockEntityDefinition.java @@ -28,6 +28,7 @@ package org.geysermc.geyser.entity; import lombok.AccessLevel; import lombok.Getter; import lombok.Setter; +import lombok.ToString; import lombok.experimental.Accessors; import org.checkerframework.checker.nullness.qual.NonNull; import org.checkerframework.checker.nullness.qual.Nullable; @@ -41,6 +42,7 @@ import java.util.Objects; @Getter @Accessors(fluent = true) +@ToString public class BedrockEntityDefinition implements GeyserEntityDefinition { private final @NonNull Identifier identifier; private final @NonNull GeyserEntityProperties registeredProperties; @@ -101,5 +103,4 @@ public class BedrockEntityDefinition implements GeyserEntityDefinition { return new BedrockEntityDefinition(identifier, propertiesBuilder != null ? propertiesBuilder.build() : new GeyserEntityProperties()); } } - } diff --git a/core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/entity/player/input/BedrockMovePlayer.java b/core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/entity/player/input/BedrockMovePlayer.java index 4800d256d..f007a8fbc 100644 --- a/core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/entity/player/input/BedrockMovePlayer.java +++ b/core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/entity/player/input/BedrockMovePlayer.java @@ -60,7 +60,7 @@ final class BedrockMovePlayer { // Ignore movement packets until Bedrock's position matches the teleported position if (session.getUnconfirmedTeleport() != null) { - session.confirmTeleport(packet.getPosition().sub(0, VanillaEntities.PLAYER_ENTITY_OFFSET, 0)); + session.confirmTeleport(packet.getPosition().down(VanillaEntities.PLAYER_ENTITY_OFFSET)); return; } @@ -125,7 +125,7 @@ final class BedrockMovePlayer { // Therefore, we're fixing this by allowing player to no clip to clip through the floor, not only this fixed the issue but // player y velocity should match java perfectly, much better than teleport player right down :) // Shouldn't mess with anything because beyond this point there is nothing to collide and not even entities since they're prob dead. - if (packet.getPosition().getY() - VanillaEntities.PLAYER_ENTITY_OFFSET< session.getBedrockDimension().minY() - 5) { + if (packet.getPosition().getY() - VanillaEntities.PLAYER_ENTITY_OFFSET < session.getBedrockDimension().minY() - 5) { // Ensuring that we still can collide with collidable entity that are also in the void (eg: boat, shulker) boolean possibleOnGround = false; diff --git a/core/src/main/java/org/geysermc/geyser/util/EntityUtils.java b/core/src/main/java/org/geysermc/geyser/util/EntityUtils.java index d3ac2f5e8..bd1e982c5 100644 --- a/core/src/main/java/org/geysermc/geyser/util/EntityUtils.java +++ b/core/src/main/java/org/geysermc/geyser/util/EntityUtils.java @@ -271,7 +271,7 @@ public final class EntityUtils { } } } else if (mountDefinition.is(BuiltinEntityType.HAPPY_GHAST)) { - int seatingIndex = Math.min(index, 4); + int seatingIndex = Math.min(index, 3); xOffset = HappyGhastEntity.X_OFFSETS[seatingIndex]; yOffset = 3.4f; zOffset = HappyGhastEntity.Z_OFFSETS[seatingIndex];