// attempt to use interacted block
// DEFAULT is treated as ALLOW, and sneaking is always considered
boolean useInteractedBlock = event.useInteractedBlock() != Event.Result.DENY;
if (useInteractedBlock && clicked != null && (!player.isSneaking() || holding == null)) {
BlockType blockType = ItemTable.instance().getBlock(clicked.getType());
useInteractedBlock = blockType.blockInteract(player, clicked, face, clickedLoc);
} else {
useInteractedBlock = false;
}
// attempt to use item in hand