From c7663abcaaef708fe5cdedcc4f7ec1fcaa0a81f7 Mon Sep 17 00:00:00 2001 From: CraftBukkit/Spigot Date: Sun, 18 Nov 2018 09:27:46 +1100 Subject: [PATCH] Add Player to BlockCanBuildEvent By: md_5 --- paper-server/nms-patches/ItemBlock.patch | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/paper-server/nms-patches/ItemBlock.patch b/paper-server/nms-patches/ItemBlock.patch index b0bf1a67a7..ac90114c2a 100644 --- a/paper-server/nms-patches/ItemBlock.patch +++ b/paper-server/nms-patches/ItemBlock.patch @@ -21,15 +21,16 @@ itemstack.subtract(1); return EnumInteractionResult.SUCCESS; } -@@ -64,7 +69,14 @@ +@@ -64,7 +69,15 @@ } protected boolean b(BlockActionContext blockactioncontext, IBlockData iblockdata) { - return iblockdata.canPlace(blockactioncontext.getWorld(), blockactioncontext.getClickPosition()) && blockactioncontext.getWorld().a(iblockdata, blockactioncontext.getClickPosition()); + // CraftBukkit start - store default return + boolean defaultReturn = iblockdata.canPlace(blockactioncontext.getWorld(), blockactioncontext.getClickPosition()) && blockactioncontext.getWorld().a(iblockdata, blockactioncontext.getClickPosition()); ++ org.bukkit.entity.Player player = (blockactioncontext.getEntity() instanceof EntityPlayer) ? (org.bukkit.entity.Player) blockactioncontext.getEntity().getBukkitEntity() : null; + -+ BlockCanBuildEvent event = new BlockCanBuildEvent(CraftBlock.at(blockactioncontext.getWorld(), blockactioncontext.getClickPosition()), CraftBlockData.fromData(iblockdata), defaultReturn); ++ BlockCanBuildEvent event = new BlockCanBuildEvent(CraftBlock.at(blockactioncontext.getWorld(), blockactioncontext.getClickPosition()), player, CraftBlockData.fromData(iblockdata), defaultReturn); + blockactioncontext.getWorld().getServer().getPluginManager().callEvent(event); + + return event.isBuildable();