diff --git a/src/main/java/org/dynmap/bukkit/DynmapPlugin.java b/src/main/java/org/dynmap/bukkit/DynmapPlugin.java index 8040aa62..90ec4fb9 100644 --- a/src/main/java/org/dynmap/bukkit/DynmapPlugin.java +++ b/src/main/java/org/dynmap/bukkit/DynmapPlugin.java @@ -36,6 +36,7 @@ import org.bukkit.event.block.BlockPhysicsEvent; import org.bukkit.event.block.BlockPistonExtendEvent; import org.bukkit.event.block.BlockPistonRetractEvent; import org.bukkit.event.block.BlockPlaceEvent; +import org.bukkit.event.block.BlockRedstoneEvent; import org.bukkit.event.block.BlockSpreadEvent; import org.bukkit.event.block.LeavesDecayEvent; import org.bukkit.event.block.SignChangeEvent; @@ -806,6 +807,7 @@ public class DynmapPlugin extends JavaPlugin implements DynmapAPI { private boolean onexplosion; private boolean onstructuregrow; private boolean onblockgrow; + private boolean onblockredstone; private void registerEvents() { @@ -821,6 +823,7 @@ public class DynmapPlugin extends JavaPlugin implements DynmapAPI { onblockphysics = core.isTrigger("blockphysics"); onpiston = core.isTrigger("pistonmoved"); onblockfade = core.isTrigger("blockfaded"); + onblockredstone = core.isTrigger("blockredstone"); if(onplace) { Listener placelistener = new Listener() { @@ -1067,6 +1070,20 @@ public class DynmapPlugin extends JavaPlugin implements DynmapAPI { } } + if(onblockredstone) { + Listener redstoneTrigger = new Listener() { + @SuppressWarnings("unused") + @EventHandler(priority=EventPriority.MONITOR) + public void onBlockRedstone(BlockRedstoneEvent event) { + Location loc = event.getBlock().getLocation(); + String wn = BukkitWorld.normalizeWorldName(loc.getWorld().getName()); + sscache.invalidateSnapshot(wn, loc.getBlockX(), loc.getBlockY(), loc.getBlockZ()); + mapManager.touch(wn, loc.getBlockX(), loc.getBlockY(), loc.getBlockZ(), "blockredstone"); + } + }; + pm.registerEvents(redstoneTrigger, this); + } + /* Register player event trigger handlers */ Listener playerTrigger = new Listener() { @SuppressWarnings("unused") diff --git a/src/main/resources/configuration.txt b/src/main/resources/configuration.txt index dd6ae160..6337269c 100644 --- a/src/main/resources/configuration.txt +++ b/src/main/resources/configuration.txt @@ -263,6 +263,7 @@ render-triggers: #- blockphysics - structuregrow - blockgrow + #- blockredstone # Title for the web page - if not specified, defaults to the server's name (unless it is the default of 'Unknown Server') #webpage-title: "My Awesome Server Map"