From 0707953718fb54f5e857592cd22bfe08bbe4f104 Mon Sep 17 00:00:00 2001 From: Mike Primm Date: Mon, 9 Apr 2012 18:03:32 -0500 Subject: [PATCH] Fix handling of unknown biomes (For Trees++) --- .../java/org/dynmap/bukkit/DynmapPlugin.java | 17 ++++++++++------- .../org/dynmap/bukkit/NewMapChunkCache.java | 3 +++ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/dynmap/bukkit/DynmapPlugin.java b/src/main/java/org/dynmap/bukkit/DynmapPlugin.java index 762b94d7..9533c4ac 100644 --- a/src/main/java/org/dynmap/bukkit/DynmapPlugin.java +++ b/src/main/java/org/dynmap/bukkit/DynmapPlugin.java @@ -825,6 +825,7 @@ public class DynmapPlugin extends JavaPlugin implements DynmapAPI { return; Block b = event.getBlock(); Material m = b.getType(); + if(m == null) return; switch(m) { case STATIONARY_WATER: case WATER: @@ -832,7 +833,7 @@ public class DynmapPlugin extends JavaPlugin implements DynmapAPI { case LAVA: case GRAVEL: case SAND: - checkBlock(event.getBlock(), "blockphysics"); + checkBlock(b, "blockphysics"); break; } } @@ -847,12 +848,14 @@ public class DynmapPlugin extends JavaPlugin implements DynmapAPI { public void onBlockFromTo(BlockFromToEvent event) { if(event.isCancelled()) return; - Material m = event.getBlock().getType(); - if((m != Material.WOOD_PLATE) && (m != Material.STONE_PLATE)) - checkBlock(event.getBlock(), "blockfromto"); - m = event.getToBlock().getType(); - if((m != Material.WOOD_PLATE) && (m != Material.STONE_PLATE)) - checkBlock(event.getToBlock(), "blockfromto"); + Block b = event.getBlock(); + Material m = b.getType(); + if((m != Material.WOOD_PLATE) && (m != Material.STONE_PLATE) && (m != null)) + checkBlock(b, "blockfromto"); + b = event.getToBlock(); + m = b.getType(); + if((m != Material.WOOD_PLATE) && (m != Material.STONE_PLATE) && (m != null)) + checkBlock(b, "blockfromto"); } }; pm.registerEvents(fromtolistener, this); diff --git a/src/main/java/org/dynmap/bukkit/NewMapChunkCache.java b/src/main/java/org/dynmap/bukkit/NewMapChunkCache.java index e6f8e4ef..ae860b87 100644 --- a/src/main/java/org/dynmap/bukkit/NewMapChunkCache.java +++ b/src/main/java/org/dynmap/bukkit/NewMapChunkCache.java @@ -1060,6 +1060,9 @@ public class NewMapChunkCache implements MapChunkCache { Biome[] b = Biome.values(); BiomeMap[] bm = BiomeMap.values(); biome_to_bmap = new BiomeMap[b.length]; + for(int i = 0; i < b.length; i++) { + biome_to_bmap[i] = BiomeMap.NULL; + } for(int i = 0; i < b.length; i++) { String bs = b[i].toString(); for(int j = 0; j < bm.length; j++) {