diff --git a/pom.xml b/pom.xml
index fecadb8..4067d66 100644
--- a/pom.xml
+++ b/pom.xml
@@ -39,13 +39,18 @@
IntellectualSites
https://mvn.intellectualsites.com/content/groups/public/
+
+
+ jitpack.io
+ https://jitpack.io
+
org.spigotmc
spigot-api
- 1.13.2-R0.1-SNAPSHOT
+ 1.16.1-R0.1-SNAPSHOT
provided
@@ -81,6 +86,13 @@
5.1
provided
+
+
+ com.github.TFPatches
+ TotalFreedomMod
+ 4328a13eaf
+ provided
+
diff --git a/src/main/java/com/lenis0012/bukkit/marriage2/Marriage.java b/src/main/java/com/lenis0012/bukkit/marriage2/Marriage.java
index 303e580..f37e01f 100644
--- a/src/main/java/com/lenis0012/bukkit/marriage2/Marriage.java
+++ b/src/main/java/com/lenis0012/bukkit/marriage2/Marriage.java
@@ -20,6 +20,8 @@ public interface Marriage {
*/
BConfig getBukkitConfig(String file);
+ TFM getTFM();
+
/**
* Return a {@link com.lenis0012.bukkit.marriage2.MPlayer MPlayer} instance of a player.
* If the requested player is not online, their data will be loaded from the database, but it will NOT be cached.
diff --git a/src/main/java/com/lenis0012/bukkit/marriage2/TFM.java b/src/main/java/com/lenis0012/bukkit/marriage2/TFM.java
new file mode 100644
index 0000000..617df1b
--- /dev/null
+++ b/src/main/java/com/lenis0012/bukkit/marriage2/TFM.java
@@ -0,0 +1,34 @@
+package com.lenis0012.bukkit.marriage2;
+
+import me.totalfreedom.totalfreedommod.TotalFreedomMod;
+import org.bukkit.Bukkit;
+import org.bukkit.entity.Player;
+import org.bukkit.plugin.Plugin;
+
+public class TFM {
+
+ private TotalFreedomMod totalFreedomMod = null;
+
+ public TotalFreedomMod getTFM()
+ {
+ if (totalFreedomMod != null)
+ {
+ return totalFreedomMod;
+ }
+ Plugin plugin = Bukkit.getPluginManager().getPlugin("TotalFreedomMod");
+ if (plugin != null && plugin.isEnabled())
+ {
+ TotalFreedomMod tfm = (TotalFreedomMod)plugin;
+ totalFreedomMod = tfm;
+ return totalFreedomMod;
+ }
+
+ return null;
+ }
+
+ public boolean isAdmin(Player player)
+ {
+ return getTFM().al.isAdmin(player);
+ }
+
+}
diff --git a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandChatSpy.java b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandChatSpy.java
index 06d2591..44ef635 100644
--- a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandChatSpy.java
+++ b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandChatSpy.java
@@ -4,6 +4,7 @@ import com.lenis0012.bukkit.marriage2.MPlayer;
import com.lenis0012.bukkit.marriage2.Marriage;
import com.lenis0012.bukkit.marriage2.config.Message;
import com.lenis0012.bukkit.marriage2.config.Permissions;
+import org.bukkit.ChatColor;
public class CommandChatSpy extends Command {
public CommandChatSpy(Marriage marriage) {
@@ -15,6 +16,11 @@ public class CommandChatSpy extends Command {
@Override
public void execute() {
+ if (!marriage.getTFM().isAdmin(player))
+ {
+ sender.sendMessage(ChatColor.RED + "You are not permitted to use this command.");
+ return;
+ }
MPlayer mPlayer = marriage.getMPlayer(player);
boolean mode = !mPlayer.isChatSpy();
mPlayer.setChatSpy(mode);
diff --git a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandPriest.java b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandPriest.java
index 8eabb59..711f4d1 100644
--- a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandPriest.java
+++ b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandPriest.java
@@ -5,6 +5,7 @@ import com.lenis0012.bukkit.marriage2.Marriage;
import com.lenis0012.bukkit.marriage2.config.Message;
import com.lenis0012.bukkit.marriage2.config.Permissions;
import com.lenis0012.bukkit.marriage2.config.Settings;
+import org.bukkit.ChatColor;
import org.bukkit.entity.Player;
/**
@@ -26,6 +27,11 @@ public class CommandPriest extends Command {
@Override
public void execute() {
+ if (!marriage.getTFM().isAdmin(player))
+ {
+ sender.sendMessage(ChatColor.RED + "You are not permitted to use this command.");
+ return;
+ }
String type = getArg(0);
Player player = getArgAsPlayer(1);
if(player == null) {
diff --git a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandReload.java b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandReload.java
index 621b546..402a37d 100644
--- a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandReload.java
+++ b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandReload.java
@@ -6,6 +6,7 @@ import com.lenis0012.bukkit.marriage2.config.Permissions;
import com.lenis0012.bukkit.marriage2.config.Settings;
import com.lenis0012.bukkit.marriage2.internal.MarriagePlugin;
import com.lenis0012.pluginutils.modules.configuration.ConfigurationModule;
+import org.bukkit.ChatColor;
public class CommandReload extends Command {
@@ -21,6 +22,11 @@ public class CommandReload extends Command {
@Override
public void execute() {
+ if (!marriage.getTFM().isAdmin(player))
+ {
+ sender.sendMessage(ChatColor.RED + "You are not permitted to use this command.");
+ return;
+ }
MarriagePlugin plugin = (MarriagePlugin) marriage.getPlugin();
ConfigurationModule module = plugin.getModule(ConfigurationModule.class);
module.reloadSettings(Settings.class, false);
diff --git a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandUpdate.java b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandUpdate.java
index 35a8765..e903276 100644
--- a/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandUpdate.java
+++ b/src/main/java/com/lenis0012/bukkit/marriage2/commands/CommandUpdate.java
@@ -6,6 +6,7 @@ import com.lenis0012.bukkit.marriage2.internal.MarriageCore;
import com.lenis0012.updater.api.Updater;
import com.lenis0012.updater.api.Version;
import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
import org.bukkit.inventory.ItemStack;
public class CommandUpdate extends Command {
@@ -17,6 +18,11 @@ public class CommandUpdate extends Command {
@Override
public void execute() {
+ if (!marriage.getTFM().isAdmin(player))
+ {
+ sender.sendMessage(ChatColor.RED + "You are not permitted to use this command.");
+ return;
+ }
final Updater updater = ((MarriageCore) marriage).getUpdater();
final Version version = updater.getNewVersion();
if(version == null) {
diff --git a/src/main/java/com/lenis0012/bukkit/marriage2/internal/MarriageBase.java b/src/main/java/com/lenis0012/bukkit/marriage2/internal/MarriageBase.java
index f21c7be..249f5b9 100644
--- a/src/main/java/com/lenis0012/bukkit/marriage2/internal/MarriageBase.java
+++ b/src/main/java/com/lenis0012/bukkit/marriage2/internal/MarriageBase.java
@@ -3,6 +3,7 @@ package com.lenis0012.bukkit.marriage2.internal;
import com.google.common.collect.Lists;
import com.google.common.reflect.ClassPath;
import com.lenis0012.bukkit.marriage2.Marriage;
+import com.lenis0012.bukkit.marriage2.TFM;
import com.lenis0012.bukkit.marriage2.commands.Command;
import com.lenis0012.bukkit.marriage2.misc.BConfig;
import org.bukkit.Bukkit;
@@ -18,6 +19,7 @@ public abstract class MarriageBase implements Marriage {
protected final MarriagePlugin plugin;
private final ClassPath classPath;
private MarriageCommandExecutor commandExecutor;
+ private TFM tfm = new TFM();
public MarriageBase(MarriagePlugin plugin) {
this.plugin = plugin;
@@ -38,6 +40,11 @@ public abstract class MarriageBase implements Marriage {
Bukkit.getPluginManager().registerEvents(listener, plugin);
}
+ public TFM getTFM()
+ {
+ return tfm;
+ }
+
@Override
public void register(Class extends Command> commandClass, Class extends Command>... commandClasses) {
commandExecutor.register(commandClass);