diff --git a/pom.xml b/pom.xml
index fa8a648..ebf88da 100644
--- a/pom.xml
+++ b/pom.xml
@@ -108,6 +108,10 @@
jitpack.io
https://jitpack.io
+
+ vault-repo
+ http://nexus.hc.to/content/repositories/pub_releases
+
@@ -142,5 +146,11 @@
master-SNAPSHOT
provided
+
+ net.milkbowl.vault
+ VaultAPI
+ 1.6
+ provided
+
diff --git a/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java b/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java
index 0988b26..dad17d3 100644
--- a/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java
+++ b/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java
@@ -6,6 +6,7 @@ import java.nio.charset.StandardCharsets;
import java.util.List;
import org.bukkit.Bukkit;
+import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;
import com.google.common.io.Files;
@@ -21,6 +22,7 @@ import buttondevteam.discordplugin.listeners.MCListener;
import buttondevteam.discordplugin.mccommands.DiscordMCCommandBase;
import buttondevteam.lib.TBMCCoreAPI;
import buttondevteam.lib.chat.TBMCChatAPI;
+import net.milkbowl.vault.permission.Permission;
import sx.blah.discord.api.*;
import sx.blah.discord.api.events.IListener;
import sx.blah.discord.handle.impl.events.ReadyEvent;
@@ -126,6 +128,7 @@ public class DiscordPlugin extends JavaPlugin implements IListener {
for (int i = msgs.size() - 1; i >= 10; i--) {
genchannel.unpin(msgs.get(i));
}
+ setupProviders();
TBMCCoreAPI.SendUnsentExceptions();
TBMCCoreAPI.SendUnsentDebugMessages();
} catch (Exception e) {
@@ -223,4 +226,20 @@ public class DiscordPlugin extends JavaPlugin implements IListener {
}
return null;
}
+
+ public static Permission perms;
+
+ public boolean setupProviders() {
+ try {
+ Class.forName("net.milkbowl.vault.permission.Permission");
+ Class.forName("net.milkbowl.vault.chat.Chat");
+ } catch (ClassNotFoundException e) {
+ return false;
+ }
+
+ RegisteredServiceProvider permsProvider = Bukkit.getServer().getServicesManager()
+ .getRegistration(Permission.class);
+ perms = permsProvider.getProvider();
+ return perms != null;
+ }
}