diff --git a/sakura-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/ThrownEnderpearl.java.patch b/sakura-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/ThrownEnderpearl.java.patch index 062a3d5..697d6eb 100644 --- a/sakura-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/ThrownEnderpearl.java.patch +++ b/sakura-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/ThrownEnderpearl.java.patch @@ -6,7 +6,7 @@ if (owner instanceof ServerPlayer serverPlayer) { + // Sakura start - prevent ender pearls teleporting inside blocks + if (this.level().sakuraConfig().entity.enderPearl.preventTeleportingInsideBlocks && serverPlayer.insideAnyCollisionAt(serverLevel, vec3)) { -+ vec3 = Vec3.atBottomCenterOf(this.blockPosition()); // teleportation position ++ vec3 = Vec3.atBottomCenterOf(BlockPos.containing(vec3)); // teleportation position + if (serverPlayer.insideAnyCollisionAt(serverLevel, vec3)) { + this.discard(org.bukkit.event.entity.EntityRemoveEvent.Cause.HIT); + return;