diff --git a/pom.xml b/pom.xml
index d18ee5fcd..fe239cf31 100755
--- a/pom.xml
+++ b/pom.xml
@@ -136,6 +136,10 @@
CodeMC
https://repo.codemc.org/repository/maven-public
+
+ sk89q-repo
+ http://maven.sk89q.com/repo/
+
@@ -150,6 +154,16 @@
1.13.2-R0.1-SNAPSHOT
provided
+
+ com.sk89q.worldguard
+ worldguard-core
+ 7.0.0-SNAPSHOT
+
+
+ com.sk89q.worldguard
+ worldguard-legacy
+ 7.0.0-SNAPSHOT
+
junit
junit-dep
diff --git a/src/main/java/com/gmail/nossr50/WorldGuardManager.java b/src/main/java/com/gmail/nossr50/WorldGuardManager.java
new file mode 100644
index 000000000..440f74e4c
--- /dev/null
+++ b/src/main/java/com/gmail/nossr50/WorldGuardManager.java
@@ -0,0 +1,66 @@
+package com.gmail.nossr50;
+
+import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
+import com.sk89q.worldguard.protection.flags.Flag;
+import com.sk89q.worldguard.protection.flags.StateFlag;
+
+public class WorldGuardManager {
+ // StateFlag with the name "my-custom-flag", which defaults to "allow"
+ public static final Flag MCMMO_DISABLE_WG_FLAG = new StateFlag("mcmmo-off", false);
+ public static final Flag MCMMO_XPOFF_WG_FLAG = new StateFlag("mcmmo-noxp", false);
+
+ private static WorldGuardPlugin worldGuardPlugin;
+
+ /*public static boolean isWgFlagActive(Location location)
+ {
+ if(flagsRegistered)
+ {
+ if(getWorldGuard() != null)
+ {
+ WorldGuardPlugin worldGuard = getWorldGuard();
+ RegionContainer container = WorldGuard.getInstance().getPlatform().getRegionContainer();
+ RegionQuery query = container.createQuery();
+
+ ApplicableRegionSet set = query.getApplicableRegions();
+
+ *//* if (!query.testState(location, (LocalPlayer)null, MCMMO_DISABLE_WG_FLAG)) {
+ // Can't build
+ }*//*
+ }
+ }
+ }
+
+ private static WorldGuardPlugin getWorldGuard() {
+ if(worldGuardPlugin != null)
+ return worldGuardPlugin;
+
+ Plugin plugin = getServer().getPluginManager().getPlugin("WorldGuard");
+
+ // WorldGuard may not be loaded
+ if (plugin == null || !(plugin instanceof WorldGuardPlugin)) {
+ return null; // Maybe you want throw an exception instead
+ }
+
+ worldGuardPlugin = (WorldGuardPlugin) plugin;
+ return worldGuardPlugin;
+ }
+
+ private static void registerFlags()
+ {
+ if(getWorldGuard() == null)
+ return;
+
+ FlagRegistry registry = WorldGuard.getInstance().getFlagRegistry();
+ try {
+ // register our flag with the registry
+ registry.register(MCMMO_DISABLE_WG_FLAG);
+ flagsRegistered = true;
+ } catch (FlagConflictException e) {
+ e.printStackTrace();
+ // some other plugin registered a flag by the same name already.
+ // you may want to re-register with a different name, but this
+ // could cause issues with saved flags in region files. it's better
+ // to print a message to let the server admin know of the conflict
+ }
+ }*/
+}
diff --git a/src/main/java/com/gmail/nossr50/commands/skills/MiningCommand.java b/src/main/java/com/gmail/nossr50/commands/skills/MiningCommand.java
index 3011f3600..790d248c5 100644
--- a/src/main/java/com/gmail/nossr50/commands/skills/MiningCommand.java
+++ b/src/main/java/com/gmail/nossr50/commands/skills/MiningCommand.java
@@ -3,7 +3,6 @@ package com.gmail.nossr50.commands.skills;
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
import com.gmail.nossr50.datatypes.skills.SubSkillType;
import com.gmail.nossr50.locale.LocaleLoader;
-import com.gmail.nossr50.skills.mining.BlastMining;
import com.gmail.nossr50.skills.mining.MiningManager;
import com.gmail.nossr50.util.Permissions;
import com.gmail.nossr50.util.TextComponentFactory;
diff --git a/src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java b/src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java
index 742847f95..39f0c9987 100644
--- a/src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java
+++ b/src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java
@@ -87,10 +87,15 @@ public abstract class SkillCommand implements TabExecutor {
getStatMessages(player, isLucky, hasEndurance, skillValue);
//Header
- player.sendMessage(LocaleLoader.getString("Overhaul.mcMMO.Header"));
+
//Link Header
- TextComponentFactory.sendPlayerUrlHeader(player);
+ if(Config.getInstance().getUrlLinksEnabled())
+ {
+ player.sendMessage(LocaleLoader.getString("Overhaul.mcMMO.Header"));
+ TextComponentFactory.sendPlayerUrlHeader(player);
+ }
+
if (Config.getInstance().getScoreboardsEnabled() && Config.getInstance().getSkillUseBoard()) {
ScoreboardManager.enablePlayerSkillScoreboard(player, skill);
diff --git a/src/main/java/com/gmail/nossr50/config/WorldBlacklist.java b/src/main/java/com/gmail/nossr50/config/WorldBlacklist.java
index ba89927bf..a37b89b3e 100644
--- a/src/main/java/com/gmail/nossr50/config/WorldBlacklist.java
+++ b/src/main/java/com/gmail/nossr50/config/WorldBlacklist.java
@@ -12,6 +12,7 @@ import java.util.ArrayList;
public class WorldBlacklist {
private static ArrayList blacklist;
private mcMMO plugin;
+
private final String blackListFileName = "world_blacklist.txt";
public WorldBlacklist(mcMMO plugin)
@@ -35,6 +36,7 @@ public class WorldBlacklist {
//Load up the blacklist
loadBlacklist(blackListFile);
+ //registerFlags();
}
private void loadBlacklist(File blackListFile) {
@@ -68,6 +70,7 @@ public class WorldBlacklist {
public static boolean isWorldBlacklisted(World world)
{
+
for(String s : blacklist)
{
if(world.getName().equalsIgnoreCase(s))
diff --git a/src/main/java/com/gmail/nossr50/util/TextComponentFactory.java b/src/main/java/com/gmail/nossr50/util/TextComponentFactory.java
index d950e4626..6ead3cc8d 100644
--- a/src/main/java/com/gmail/nossr50/util/TextComponentFactory.java
+++ b/src/main/java/com/gmail/nossr50/util/TextComponentFactory.java
@@ -1,19 +1,16 @@
package com.gmail.nossr50.util;
-import com.gmail.nossr50.config.AdvancedConfig;
import com.gmail.nossr50.config.Config;
import com.gmail.nossr50.config.RankConfig;
import com.gmail.nossr50.datatypes.interactions.NotificationType;
import com.gmail.nossr50.datatypes.json.McMMOUrl;
import com.gmail.nossr50.datatypes.json.McMMOWebLinks;
-import com.gmail.nossr50.datatypes.player.McMMOPlayer;
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
import com.gmail.nossr50.datatypes.skills.SubSkillType;
import com.gmail.nossr50.datatypes.skills.subskills.AbstractSubSkill;
import com.gmail.nossr50.listeners.InteractionManager;
import com.gmail.nossr50.locale.LocaleLoader;
import com.gmail.nossr50.util.skills.RankUtils;
-import com.gmail.nossr50.util.skills.SkillUtils;
import net.md_5.bungee.api.ChatColor;
import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.chat.*;
@@ -80,9 +77,6 @@ public class TextComponentFactory {
}
public static void sendPlayerUrlHeader(Player player) {
- if(!Config.getInstance().getUrlLinksEnabled())
- return;
-
Player.Spigot spigotPlayer = player.spigot();
TextComponent prefix = new TextComponent(LocaleLoader.getString("Overhaul.mcMMO.Url.Wrap.Prefix") + " ");
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index bc6593868..b75c74fe8 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -14,7 +14,7 @@ author: nossr50
authors: [GJ, NuclearW, bm01, Glitchfinder, TfT_02, t00thpick1, Riking]
website: https://www.mcmmo.org
main: com.gmail.nossr50.mcMMO
-softdepend: [CombatTag, HealthBar]
+softdepend: [WorldGuard, CombatTag, HealthBar]
load: STARTUP
api-version: 1.13