diff --git a/WGCustomFlags-1.7.jar b/WGCustomFlags-1.7.jar
deleted file mode 100644
index 167736b..0000000
Binary files a/WGCustomFlags-1.7.jar and /dev/null differ
diff --git a/pom.xml b/pom.xml
index fd6f555..f0edc2e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,7 +52,7 @@
us.dynmap
dynmap-api
- 2.2-SNAPSHOT
+ 3.0-SNAPSHOT
org.bukkit
@@ -62,23 +62,16 @@
com.sk89q
WorldGuard
- 6.1
+ 7.0.0-SNAPSHOT
system
- ${project.basedir}/worldguard-6.1.jar
+ ${project.basedir}/worldguard-legacy-7.0.0-SNAPSHOT-dist.jar
com.sk89q
WorldEdit
- 6.1
+ 7.0.0-SNAPSHOT
system
- ${project.basedir}/worldedit-bukkit-6.1.jar
-
-
- com.sk89q
- WGCustomFlags
- 1.7
- system
- ${project.basedir}/WGCustomFlags-1.7.jar
+ ${project.basedir}/worldedit-bukkit-7.0.0-SNAPSHOT-dist.jar
\ No newline at end of file
diff --git a/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java b/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java
index cdab301..38a0aaa 100644
--- a/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java
+++ b/src/main/java/org/dynmap/worldguard/DynmapWorldGuardPlugin.java
@@ -11,7 +11,7 @@ import java.util.UUID;
import java.util.logging.Level;
import java.util.logging.Logger;
-import org.bukkit.World;
+import org.bukkit.Bukkit;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.event.EventHandler;
@@ -26,20 +26,23 @@ import org.dynmap.markers.AreaMarker;
import org.dynmap.markers.MarkerAPI;
import org.dynmap.markers.MarkerSet;
-import com.mewin.WGCustomFlags.WGCustomFlagsPlugin;
import com.sk89q.worldedit.BlockVector;
import com.sk89q.worldedit.BlockVector2D;
+import com.sk89q.worldedit.world.World;
+import com.sk89q.worldguard.WorldGuard;
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
import com.sk89q.worldguard.domains.DefaultDomain;
import com.sk89q.worldguard.domains.PlayerDomain;
+import com.sk89q.worldguard.internal.platform.WorldGuardPlatform;
import com.sk89q.worldguard.protection.flags.BooleanFlag;
import com.sk89q.worldguard.protection.flags.Flag;
+import com.sk89q.worldguard.protection.flags.Flags;
+import com.sk89q.worldguard.protection.flags.registry.FlagRegistry;
import com.sk89q.worldguard.protection.managers.RegionManager;
import com.sk89q.worldguard.protection.regions.ProtectedPolygonalRegion;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
+import com.sk89q.worldguard.protection.regions.RegionContainer;
import com.sk89q.worldguard.protection.regions.RegionType;
-import com.sk89q.worldguard.util.profile.Profile;
-import com.sk89q.worldguard.util.profile.cache.ProfileCache;
public class DynmapWorldGuardPlugin extends JavaPlugin {
private static Logger log;
@@ -51,8 +54,7 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
WorldGuardPlugin wg;
BooleanFlag boost_flag;
int updatesPerTick = 20;
- ProfileCache pc;
-
+
FileConfiguration cfg;
MarkerSet set;
long updperiod;
@@ -70,6 +72,7 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
@Override
public void onLoad() {
log = this.getLogger();
+ this.registerCustomFlags();
}
private static class AreaStyle {
@@ -109,13 +112,15 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
}
private Map resareas = new HashMap();
+ private WorldGuardPlatform platform;
+ public WorldGuardPlatform p;
private String formatInfoWindow(ProtectedRegion region, AreaMarker m) {
String v = ""+infowindow+"
";
v = v.replace("%regionname%", m.getLabel());
- v = v.replace("%playerowners%", region.getOwners().toPlayersString(pc));
+ v = v.replace("%playerowners%", region.getOwners().toPlayersString());
v = v.replace("%groupowners%", region.getOwners().toGroupsString());
- v = v.replace("%playermembers%", region.getMembers().toPlayersString(pc));
+ v = v.replace("%playermembers%", region.getMembers().toPlayersString());
v = v.replace("%groupmembers%", region.getMembers().toGroupsString());
if(region.getParent() != null)
v = v.replace("%parent%", region.getParent().getId());
@@ -177,8 +182,7 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
}
}
if (as == null) {
- for(UUID uuid : pd.getUniqueIds()) {
- String p = resolveUUID(uuid);
+ for(String p : pd.getPlayers()) {
if (p != null) {
as = ownerstyle.get(p.toLowerCase());
if (as != null) break;
@@ -226,15 +230,7 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
m.setBoostFlag((b == null)?false:b.booleanValue());
}
}
-
- private String resolveUUID(UUID uuid) {
- Profile p = pc.getIfPresent(uuid);
- if (p != null) {
- return p.getName();
- }
- return null;
- }
-
+
/* Handle specific region */
private void handleRegion(World world, ProtectedRegion region, Map newmap) {
String name = region.getId();
@@ -311,7 +307,11 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
}
// If worlds list isn't primed, prime it
if (worldsToDo == null) {
- worldsToDo = new ArrayList(getServer().getWorlds());
+ List w = Bukkit.getWorlds();
+ worldsToDo = new ArrayList();
+ for (org.bukkit.World wrld : w) {
+ worldsToDo.add(platform.getWorldByName(wrld.getName()));
+ }
}
while (regionsToDo == null) { // No pending regions for world
if (worldsToDo.isEmpty()) { // No more worlds?
@@ -327,7 +327,8 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
}
else {
curworld = worldsToDo.remove(0);
- RegionManager rm = wg.getRegionManager(curworld); /* Get region manager for world */
+ RegionContainer rc = platform.getRegionContainer();
+ RegionManager rm = rc.get(curworld); /* Get region manager for world */
if(rm != null) {
Map regions = rm.getRegions(); /* Get all the regions */
if ((regions != null) && (regions.isEmpty() == false)) {
@@ -387,11 +388,11 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
return;
}
wg = (WorldGuardPlugin)p;
- pc = wg.getProfileCache();
+
+ platform = WorldGuard.getInstance().getPlatform();
getServer().getPluginManager().registerEvents(new OurServerListener(), this);
- registerCustomFlags();
/* If both enabled, activate */
if(dynmap.isEnabled() && wg.isEnabled())
activate();
@@ -403,28 +404,15 @@ public class DynmapWorldGuardPlugin extends JavaPlugin {
}
}
-
- private WGCustomFlagsPlugin getWGCustomFlags()
- {
- Plugin plugin = getServer().getPluginManager().getPlugin("WGCustomFlags");
-
- if (plugin == null || !(plugin instanceof WGCustomFlagsPlugin))
- {
- return null;
- }
-
- return (WGCustomFlagsPlugin) plugin;
- }
private void registerCustomFlags() {
try {
- WGCustomFlagsPlugin cf = getWGCustomFlags();
- if (cf != null) {
- BooleanFlag bf = new BooleanFlag(BOOST_FLAG);
- cf.addCustomFlag(bf);
- boost_flag = bf;
- }
+ BooleanFlag bf = new BooleanFlag(BOOST_FLAG);
+ FlagRegistry fr = WorldGuard.getInstance().getFlagRegistry();
+ fr.register(bf);
+ boost_flag = bf;
} catch (Exception x) {
+ log.info("Error registering flag - " + x.getMessage());
}
if (boost_flag == null) {
log.info("Custom flag '" + BOOST_FLAG + "' not registered - WGCustomFlags not found");
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index 2381be8..a5dddbe 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -2,6 +2,5 @@ name: Dynmap-WorldGuard
main: org.dynmap.worldguard.DynmapWorldGuardPlugin
version: "${project.version}"
author: mikeprimm
-depend: [ dynmap, WorldGuard ]
-softdepend: [ WGCustomFlags ]
+depend: [ dynmap, WorldGuard ]
diff --git a/worldedit-bukkit-6.1.jar b/worldedit-bukkit-6.1.jar
deleted file mode 100644
index 753c4f2..0000000
Binary files a/worldedit-bukkit-6.1.jar and /dev/null differ
diff --git a/worldedit-bukkit-7.0.0-SNAPSHOT-dist.jar b/worldedit-bukkit-7.0.0-SNAPSHOT-dist.jar
new file mode 100644
index 0000000..1b5b20f
Binary files /dev/null and b/worldedit-bukkit-7.0.0-SNAPSHOT-dist.jar differ
diff --git a/worldguard-6.1.jar b/worldguard-6.1.jar
deleted file mode 100644
index 7824963..0000000
Binary files a/worldguard-6.1.jar and /dev/null differ
diff --git a/worldguard-legacy-7.0.0-SNAPSHOT-dist.jar b/worldguard-legacy-7.0.0-SNAPSHOT-dist.jar
new file mode 100644
index 0000000..3e2310a
Binary files /dev/null and b/worldguard-legacy-7.0.0-SNAPSHOT-dist.jar differ