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 commandClass, Class... commandClasses) { commandExecutor.register(commandClass);