public void onPlayerBucketEmpty(PlayerBucketEmptyEvent event) { if (!arena.getReadyPlayersInLobby().contains(event.getPlayer()) && !arena.inArena(event.getPlayer())) return; if (!arena.isRunning()) { event.getBlockClicked().getRelative(event.getBlockFace()).setType(Material.AIR); event.setCancelled(true); return; } Block liquid = event.getBlockClicked().getRelative(event.getBlockFace()); arena.addBlock(liquid); }
/** * Emptying a bucket (water or lava) will remove the adjacent block * from the tracked set */ @EventHandler public void onPlayerBucketEmpty(PlayerBucketEmptyEvent event) { Block adjacent = event.getBlockClicked().getRelative(event.getBlockFace()); adjacent.removeMetadata(SEALEVEL_BLOCK, GlobalWarming.getInstance()); }
@EventHandler public void onPlayerBucketEmpty(final PlayerBucketEmptyEvent event) { final Block block = event.getBlockClicked().getRelative(event.getBlockFace()); if (Illumination.isIlluminationTorch(block)) { final Player player = Illumination.getBlocks().get(TempBlock.get(block)); CoreAbility.getAbility(player, Illumination.class).remove(); } }
/** * Prevents emptying of buckets * @param e - event */ @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onBucketEmpty(final PlayerBucketEmptyEvent e) { if (e.getBlockClicked() != null) { // This is where the water or lava actually will be dumped Block dumpBlock = e.getBlockClicked().getRelative(e.getBlockFace()); checkIsland(e, dumpBlock.getLocation(), Flags.BUCKET); } }
@EventHandler(ignoreCancelled = true) private void bucketEmpty(PlayerBucketEmptyEvent event){ MinigamePlayer ply = pdata.getMinigamePlayer(event.getPlayer()); if(ply == null) return; if(ply.isInMinigame()){ Minigame mgm = ply.getMinigame(); RecorderData d = mgm.getBlockRecorder(); if(((d.getWhitelistMode() && d.getWBBlocks().contains(event.getBlockClicked().getType())) || (!d.getWhitelistMode() && !d.getWBBlocks().contains(event.getBlockClicked().getType()))) && mgm.canBlockPlace()){ Location loc = new Location(event.getBlockClicked().getWorld(), event.getBlockFace().getModX() + event.getBlockClicked().getX(), event.getBlockFace().getModY() + event.getBlockClicked().getY(), event.getBlockFace().getModZ() + event.getBlockClicked().getZ()); d.addBlock(loc.getBlock(), pdata.getMinigamePlayer(event.getPlayer())); } else{ event.setCancelled(true); } } }
@EventHandler(ignoreCancelled = true) public void onPlayerBucketEmpty(PlayerBucketEmptyEvent event) { Player player = event.getPlayer(); Block blockAffected = event.getBlockClicked().getRelative(event.getBlockFace()); boolean allowed = false; // Milk buckets can't be emptied as of writing if (event.getBucket() == Material.MILK_BUCKET) { allowed = true; } ItemStack item = new ItemStack(event.getBucket(), 1); Material blockMaterial = Materials.getBucketBlockMaterial(event.getBucket()); Events.fireToCancel(event, new PlaceBlockEvent(event, create(player), blockAffected.getLocation(), blockMaterial).setAllowed(allowed)); Events.fireToCancel(event, new UseItemEvent(event, create(player), player.getWorld(), item).setAllowed(allowed)); if (event.isCancelled()) { playDenyEffect(event.getPlayer(), blockAffected.getLocation().add(0.5, 0.5, 0.5)); } }
@EventHandler(priority = EventPriority.HIGH) public void onBucketEmpty(PlayerBucketEmptyEvent e) { Block clicked = e.getBlockClicked(); Block underWater = clicked.getRelative(BlockFace.DOWN).getRelative(e.getBlockFace()); if (shopUtils.isShop(clicked.getLocation())) { if (e.getBucket() == Material.LAVA_BUCKET) { Shop shop = shopUtils.getShop(clicked.getLocation()); if (shop.getItem() != null) { shop.getItem().resetForPlayer(e.getPlayer()); } } } else if (shopUtils.isShop(underWater.getLocation())) { if (e.getBucket() == Material.LAVA_BUCKET) { Shop shop = shopUtils.getShop(underWater.getLocation()); if (shop.getItem() != null) { shop.getItem().resetForPlayer(e.getPlayer()); } } } else { return; } e.setCancelled(true); }
Block block = bucketEvent.getBlockClicked().getRelative(bucketEvent.getBlockFace()); int minLavaDistance = 10;
final Block liquid = block.getRelative(event.getBlockFace());