From e190fe08589096bc8cb662481203a3bed65d9d85 Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Wed, 1 Apr 2026 19:43:31 +0200 Subject: [PATCH] Fix FreezeListener --- .../bausystem/features/region/FreezeListener.java | 10 ++++++++++ 1 file changed, 10 insertions(+) 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;