diff --git a/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/region/FreezeListener.java b/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/region/FreezeListener.java index 7222acab..91a9d650 100644 --- a/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/region/FreezeListener.java +++ b/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/region/FreezeListener.java @@ -46,6 +46,16 @@ import org.bukkit.event.player.PlayerInteractEvent; @Linked public class FreezeListener implements Listener, ScoreboardElement { + @EventHandler + public void onBlockExplode(BlockExplodeEvent e) { + if (Region.getRegion(e.getBlock().getLocation()).getRegionData().get(Flag.FREEZE).isWithDefault(FreezeMode.INACTIVE)) return; + e.setCancelled(true); + BlockState state = e.getBlock().getState(); + Bukkit.getScheduler().runTaskLater(BauSystem.getInstance(), () -> { + state.update(true, false); + }, 1L); + } + @EventHandler public void onEntitySpawn(EntitySpawnEvent e) { if (Region.getRegion(e.getLocation()).getRegionData().get(Flag.FREEZE).isWithDefault(FreezeMode.INACTIVE)) return;