BlockPlaceEvent event = new BlockPlaceEvent(target, oldState, against, holding, player, canBuild, hand); EventFactory.getInstance().callEvent(event);
@Override public boolean hasBuildPermission(Player player, Block block) { checkListeners(); BlockPlaceEvent placeEvent = new BlockPlaceEvent(block, block.getState(), block.getRelative(BlockFace.DOWN), player.getInventory().getItemInMainHand(), player, true, EquipmentSlot.HAND); for (RegisteredListener listener : buildListeners) { try { listener.callEvent(placeEvent); if (placeEvent.isCancelled()) { return false; } } catch (Exception ex) { owningPlugin.getLogger().log(Level.WARNING, "An error occurred sending a BlockPlaceEvent to " + listener.getPlugin().getName(), ex); } } return true; }
public boolean createField(Location location, Player player) { ForceFieldManager manager = preciousStones.getForceFieldManager(); Block targetBlock = location.getBlock(); BlockPlaceEvent event = new BlockPlaceEvent(targetBlock, targetBlock.getState(), targetBlock.getRelative(BlockFace.DOWN), new ItemStack(targetBlock.getType(), DeprecatedUtils.getData(targetBlock)), player, true, EquipmentSlot.HAND); manager.add(location.getBlock(), player, event); return !event.isCancelled(); }