From 761fddaa555c05005d8fd6bcd779c8f4eb7b144e Mon Sep 17 00:00:00 2001 From: xsun2001 <1563770452@qq.com> Date: Sat, 16 Jun 2018 23:50:50 +0800 Subject: [PATCH] re-add the null check and the permission check --- src/main/java/appeng/block/AEBaseTileBlock.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/appeng/block/AEBaseTileBlock.java b/src/main/java/appeng/block/AEBaseTileBlock.java index 98d6ff31..0b4a655e 100644 --- a/src/main/java/appeng/block/AEBaseTileBlock.java +++ b/src/main/java/appeng/block/AEBaseTileBlock.java @@ -238,7 +238,7 @@ public abstract class AEBaseTileBlock extends AEBaseBlock implements IAEFeature, @Override public boolean onBlockActivated( final World w, final int x, final int y, final int z, final EntityPlayer player, final int side, final float hitX, final float hitY, final float hitZ ) { - if( player != null ) + if( player != null && player.inventory.getCurrentItem() != null) { final ItemStack heldItem = player.inventory.getCurrentItem(); if( Platform.isWrench( player, heldItem, x, y, z ) && player.isSneaking() ) @@ -262,6 +262,13 @@ public abstract class AEBaseTileBlock extends AEBaseBlock implements IAEFeature, return false; } + BlockEvent.BreakEvent event = new BlockEvent.BreakEvent( x, y, z, w, this, 0, player ); + MinecraftForge.EVENT_BUS.post( event ); + if( event.isCanceled() ) + { + return false; + } + final ItemStack[] itemDropCandidates = Platform.getBlockDrops( w, x, y, z ); final ItemStack op = new ItemStack( this );