Paper/patches/api/0424-Add-API-to-get-the-collision-shape-of-a-block-before.patch
Bjarne Koll e1c0033552
Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
2b4b6d14 PR-1023: Convert InventoryView to interface

CraftBukkit Changes:
68603b1c1 Use expanded interaction ranges for traced interact events
eae9f760c PR-1414: Convert InventoryView to interface
ee9eafe67 Fix Implementation for DamageSource#isIndirect for internal custom causing entity
2024-06-16 17:23:42 +02:00

32 lines
1.4 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: TrollyLoki <trollyloki@gmail.com>
Date: Wed, 11 Oct 2023 00:45:54 -0400
Subject: [PATCH] Add API to get the collision shape of a block before it's
placed
diff --git a/src/main/java/org/bukkit/block/data/BlockData.java b/src/main/java/org/bukkit/block/data/BlockData.java
index 54664651f34311e95f6c2dcfd93e58477beda8c2..0ecc54bd810a2805b7209d9433b76743500e45a8 100644
--- a/src/main/java/org/bukkit/block/data/BlockData.java
+++ b/src/main/java/org/bukkit/block/data/BlockData.java
@@ -205,6 +205,19 @@ public interface BlockData extends Cloneable {
*/
boolean isFaceSturdy(@NotNull BlockFace face, @NotNull BlockSupport support);
+ // Paper start
+ /**
+ * Calculates the collision shape this block data would have at a particular location.
+ * <p>
+ * This does not take into account any block updates that may occur if the block was to be actually placed in the world.
+ *
+ * @param location the location to calculate the collision shape at
+ *
+ * @return a {@link org.bukkit.util.VoxelShape} representing the collision shape of this block data.
+ */
+ @NotNull org.bukkit.util.VoxelShape getCollisionShape(@NotNull Location location);
+ // Paper end
+
/**
* Gets the color this block should appear as when rendered on a map.
*