Skip to content

Commit

Permalink
Handle BlockExplodeEvent as other explosion.
Browse files Browse the repository at this point in the history
Also misc cleanup.
Closes #407, WORLDGUARD-3843.
  • Loading branch information
wizjany authored and DarkArc committed Jun 8, 2019
1 parent f76259d commit d296e6e
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 3 deletions.
Expand Up @@ -880,6 +880,14 @@ public void onBlockDispense(BlockDispenseEvent event) {
}
}

@EventHandler(ignoreCancelled = true)
public void onBlockExplode(BlockExplodeEvent event) {
final BreakBlockEvent eventToFire = new BreakBlockEvent(event, create(event.getBlock()),
event.getBlock().getLocation().getWorld(), event.blockList(), Material.AIR);
eventToFire.getRelevantFlags().add(DefaultFlag.OTHER_EXPLOSION);
Events.fireBulkEventToCancel(event, eventToFire);
}

/**
* Handle the right click of a block while an item is held.
*
Expand Down
Expand Up @@ -37,6 +37,7 @@
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.block.BlockBurnEvent;
import org.bukkit.event.block.BlockExplodeEvent;
import org.bukkit.event.block.BlockFadeEvent;
import org.bukkit.event.block.BlockFormEvent;
import org.bukkit.event.block.BlockFromToEvent;
Expand Down Expand Up @@ -664,4 +665,19 @@ public void onBlockFade(BlockFadeEvent event) {

}

@EventHandler(ignoreCancelled = true)
public void onBlockExplode(BlockExplodeEvent event) {
ConfigurationManager cfg = plugin.getGlobalStateManager();

if (cfg.activityHaltToggle) {
event.setCancelled(true);
return;
}

WorldConfiguration wcfg = getWorldConfig(event.getBlock().getWorld());
if (wcfg.blockOtherExplosions) {
event.setCancelled(true);
}
}

}
Expand Up @@ -410,9 +410,7 @@ public void onEntityExplode(EntityExplodeEvent event) {
Entity ent = event.getEntity();

if (cfg.activityHaltToggle) {
if (ent != null) {
ent.remove();
}
ent.remove();
event.setCancelled(true);
return;
}
Expand Down

0 comments on commit d296e6e

Please sign in to comment.