From 3e7f420532448df233bad2c63bfb6df76b06436c Mon Sep 17 00:00:00 2001 From: AJ Ferguson Date: Fri, 19 May 2023 21:11:43 -0400 Subject: [PATCH] Handle non-full blocks for Sniffer digging particles This is how Java does it --- .../geyser/entity/type/living/animal/SnifferEntity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/org/geysermc/geyser/entity/type/living/animal/SnifferEntity.java b/core/src/main/java/org/geysermc/geyser/entity/type/living/animal/SnifferEntity.java index 37babc654..a97756e39 100644 --- a/core/src/main/java/org/geysermc/geyser/entity/type/living/animal/SnifferEntity.java +++ b/core/src/main/java/org/geysermc/geyser/entity/type/living/animal/SnifferEntity.java @@ -102,7 +102,7 @@ public class SnifferEntity extends AnimalEntity implements Tickable { // The java client renders digging particles on its own, but bedrock does not if (digTicks > 0 && --digTicks < DIG_START && digTicks % 5 == 0) { Vector3f rot = Vector3f.createDirectionDeg(0, -getYaw()).mul(2.25f); - Vector3f pos = getPosition().add(rot); + Vector3f pos = getPosition().add(rot).up(0.2f).floor(); // Handle non-full blocks int blockId = session.getBlockMappings().getBedrockBlockId(session.getGeyser().getWorldManager().getBlockAt(session, pos.toInt().down())); LevelEventPacket levelEventPacket = new LevelEventPacket();