From 8e003c4cc693dbce3f8d26422754f3fb5d4b7dfd Mon Sep 17 00:00:00 2001 From: Mike Primm Date: Thu, 28 Jul 2011 08:08:08 -0500 Subject: [PATCH 1/2] Retired 'snowformed' event, added 'blockformed', 'blockfaded', 'blockspread' --- src/main/java/org/dynmap/DynmapPlugin.java | 69 ++++++++++++++++++---- src/main/resources/configuration.txt | 4 +- 2 files changed, 60 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/dynmap/DynmapPlugin.java b/src/main/java/org/dynmap/DynmapPlugin.java index f76ccd41..18f171f2 100644 --- a/src/main/java/org/dynmap/DynmapPlugin.java +++ b/src/main/java/org/dynmap/DynmapPlugin.java @@ -24,10 +24,12 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.event.block.BlockBreakEvent; import org.bukkit.event.block.BlockBurnEvent; +import org.bukkit.event.block.BlockFadeEvent; +import org.bukkit.event.block.BlockFormEvent; import org.bukkit.event.block.BlockListener; import org.bukkit.event.block.BlockPlaceEvent; +import org.bukkit.event.block.BlockSpreadEvent; import org.bukkit.event.block.LeavesDecayEvent; -import org.bukkit.event.block.SnowFormEvent; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerListener; import org.bukkit.event.player.PlayerMoveEvent; @@ -325,7 +327,9 @@ public class DynmapPlugin extends JavaPlugin { private boolean onplace; private boolean onbreak; - private boolean onsnow; + private boolean onblockform; + private boolean onblockfade; + private boolean onblockspread; private boolean onleaves; private boolean onburn; @@ -354,14 +358,6 @@ public class DynmapPlugin extends JavaPlugin { mm.touch(event.getBlock().getLocation()); mm.sscache.invalidateSnapshot(event.getBlock().getLocation()); } - @Override - public void onSnowForm(SnowFormEvent event) { - if(event.isCancelled()) - return; - if(onsnow) - mm.touch(event.getBlock().getLocation()); - mm.sscache.invalidateSnapshot(event.getBlock().getLocation()); - } @Override public void onLeavesDecay(LeavesDecayEvent event) { @@ -380,17 +376,66 @@ public class DynmapPlugin extends JavaPlugin { mm.touch(event.getBlock().getLocation()); mm.sscache.invalidateSnapshot(event.getBlock().getLocation()); } + + @Override + public void onBlockForm(BlockFormEvent event) { + if(event.isCancelled()) + return; + if(onblockform) + mm.touch(event.getBlock().getLocation()); + mm.sscache.invalidateSnapshot(event.getBlock().getLocation()); + } + @Override + public void onBlockFade(BlockFadeEvent event) { + if(event.isCancelled()) + return; + if(onblockfade) + mm.touch(event.getBlock().getLocation()); + mm.sscache.invalidateSnapshot(event.getBlock().getLocation()); + } + @Override + public void onBlockSpread(BlockSpreadEvent event) { + if(event.isCancelled()) + return; + if(onblockspread) + mm.touch(event.getBlock().getLocation()); + mm.sscache.invalidateSnapshot(event.getBlock().getLocation()); + } }; onplace = isTrigger("blockplaced"); pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_PLACE, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); onbreak = isTrigger("blockbreak"); pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_BREAK, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); - onsnow = isTrigger("snowform"); - pm.registerEvent(org.bukkit.event.Event.Type.SNOW_FORM, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); + if(isTrigger("snowform")) Log.info("The 'snowform' trigger has been deprecated due to Bukkit changes - use 'blockform'"); onleaves = isTrigger("leavesdecay"); pm.registerEvent(org.bukkit.event.Event.Type.LEAVES_DECAY, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); onburn = isTrigger("blockburn"); pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_BURN, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); + + onblockform = isTrigger("blockformed"); + try { + Class cls = Class.forName("org.dynmap.event.block.BlockFormEvent"); + pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_FORM, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); + } catch (ClassNotFoundException cnfx) { + if(onblockform) + Log.info("BLOCK_FORM event not supported by this version of CraftBukkit - event disabled"); + } + onblockfade = isTrigger("blockfaded"); + try { + Class cls = Class.forName("org.dynmap.event.block.BlockFadeEvent"); + pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_FADE, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); + } catch (ClassNotFoundException cnfx) { + if(onblockfade) + Log.info("BLOCK_FADE event not supported by this version of CraftBukkit - event disabled"); + } + onblockspread = isTrigger("blockspread"); + try { + Class cls = Class.forName("org.dynmap.event.block.BlockSpreadEvent"); + pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_SPREAD, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); + } catch (ClassNotFoundException cnfx) { + if(onblockspread) + Log.info("BLOCK_SPREAD event not supported by this version of CraftBukkit - event disabled"); + } } { PlayerListener renderTrigger = new PlayerListener() { diff --git a/src/main/resources/configuration.txt b/src/main/resources/configuration.txt index 2781a75a..45a12c6a 100644 --- a/src/main/resources/configuration.txt +++ b/src/main/resources/configuration.txt @@ -123,10 +123,12 @@ render-triggers: #- playerjoin - blockplaced - blockbreak - - snowform - leavesdecay - blockburn - chunkgenerated + - blockformed + - blockfaded + - blockspread # The path where the tile-files are placed. tilespath: web/tiles From 085ca16dbb2c744e76b201e4fa75a6d1bbf7fb80 Mon Sep 17 00:00:00 2001 From: Mike Primm Date: Thu, 28 Jul 2011 10:01:54 -0500 Subject: [PATCH 2/2] Fix message - blockform -> blockformed --- src/main/java/org/dynmap/DynmapPlugin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/dynmap/DynmapPlugin.java b/src/main/java/org/dynmap/DynmapPlugin.java index 18f171f2..6fb852d5 100644 --- a/src/main/java/org/dynmap/DynmapPlugin.java +++ b/src/main/java/org/dynmap/DynmapPlugin.java @@ -406,7 +406,7 @@ public class DynmapPlugin extends JavaPlugin { pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_PLACE, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); onbreak = isTrigger("blockbreak"); pm.registerEvent(org.bukkit.event.Event.Type.BLOCK_BREAK, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); - if(isTrigger("snowform")) Log.info("The 'snowform' trigger has been deprecated due to Bukkit changes - use 'blockform'"); + if(isTrigger("snowform")) Log.info("The 'snowform' trigger has been deprecated due to Bukkit changes - use 'blockformed'"); onleaves = isTrigger("leavesdecay"); pm.registerEvent(org.bukkit.event.Event.Type.LEAVES_DECAY, renderTrigger, org.bukkit.event.Event.Priority.Monitor, this); onburn = isTrigger("blockburn");