From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Sotr Date: Thu, 23 Aug 2018 16:14:25 +0800 Subject: [PATCH] Add source block constructor and getChangedBlockData() to BlockPhysicsEvent diff --git a/src/main/java/org/bukkit/event/block/BlockPhysicsEvent.java b/src/main/java/org/bukkit/event/block/BlockPhysicsEvent.java index 55cdfd35a91f82b2c5bf51fff3671e45b49b7d0c..0ae137a46fc505d99c827b099d36c35d9fa891b0 100644 --- a/src/main/java/org/bukkit/event/block/BlockPhysicsEvent.java +++ b/src/main/java/org/bukkit/event/block/BlockPhysicsEvent.java @@ -32,6 +32,13 @@ public class BlockPhysicsEvent extends BlockEvent implements Cancellable { private final Block sourceBlock; private boolean cancel = false; + // Paper start - Legacy constructor, use #BlockPhysicsEvent(Block, BlockData, Block) + @Deprecated + public BlockPhysicsEvent(final Block block, final BlockData changed, final int sourceX, final int sourceY, final int sourceZ) { + this(block, changed, block.getWorld().getBlockAt(sourceX, sourceY, sourceZ)); + } + // Paper end + public BlockPhysicsEvent(@NotNull final Block block, @NotNull final BlockData changed) { this(block, changed, block); } @@ -55,7 +62,8 @@ public class BlockPhysicsEvent extends BlockEvent implements Cancellable { } /** - * Gets the type of block that changed, causing this event + * Gets the type of block that changed, causing this event. + * This is the type of {@link #getBlock()} at the time of the event. * * @return Changed block's type */ @@ -64,6 +72,19 @@ public class BlockPhysicsEvent extends BlockEvent implements Cancellable { return changed.getBlockType(); } + // Paper start - Getter for the BlockData + /** + * Gets the BlockData of the block that changed, causing this event. + * This is the BlockData of {@link #getBlock()} at the time of the event. + * + * @return Changed block's BlockData + */ + @NotNull + public BlockData getChangedBlockData() { + return changed; + } + // Paper end + @Override public boolean isCancelled() { return cancel;