diff --git a/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java b/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java index 98ba3cf..02ab9e7 100644 --- a/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java +++ b/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java @@ -53,6 +53,7 @@ public class DynmapWorldGuardPlugin extends JavaPlugin { Set visible; Set hidden; boolean stop; + int maxdepth; private static class AreaStyle { String strokecolor; @@ -255,6 +256,14 @@ public class DynmapWorldGuardPlugin extends JavaPlugin { Map regions = rm.getRegions(); /* Get all the regions */ for(ProtectedRegion pr : regions.values()) { + int depth = 1; + ProtectedRegion p = pr; + while(p.getParent() != null) { + depth++; + p = p.getParent(); + } + if(depth > maxdepth) + continue; handleRegion(w, pr, newmap); } } @@ -335,6 +344,7 @@ public class DynmapWorldGuardPlugin extends JavaPlugin { set.setHideByDefault(cfg.getBoolean("layer.hidebydefault", false)); use3d = cfg.getBoolean("use3dregions", false); infowindow = cfg.getString("infowindow", DEF_INFOWINDOW); + maxdepth = cfg.getInt("maxdepth", 16); /* Get style information */ defstyle = new AreaStyle(cfg, "regionstyle"); diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index d2c3cbc..493e0d2 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -45,3 +45,7 @@ ownerstyle: kingoftheworld: strokecolor: "#C0C0C0" + +# Limit depth of child regions (1=just top regions, 2=top plus children of top) +maxdepth: 16 +