From a2f7394c88f281292e3c59aeb70aaf1ac308b28b Mon Sep 17 00:00:00 2001 From: spacerocket62 Date: Wed, 28 Oct 2020 13:47:00 -0700 Subject: [PATCH] a --- .../totalfreedom/plex/cache/PlayerCache.java | 1 + .../me/totalfreedom/plex/util/PlexUtils.java | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/src/main/java/me/totalfreedom/plex/cache/PlayerCache.java b/src/main/java/me/totalfreedom/plex/cache/PlayerCache.java index 69a7280..4bce5d3 100644 --- a/src/main/java/me/totalfreedom/plex/cache/PlayerCache.java +++ b/src/main/java/me/totalfreedom/plex/cache/PlayerCache.java @@ -20,4 +20,5 @@ public class PlayerCache { return plexPlayerMap; } + } diff --git a/src/main/java/me/totalfreedom/plex/util/PlexUtils.java b/src/main/java/me/totalfreedom/plex/util/PlexUtils.java index 9f927d5..888a874 100644 --- a/src/main/java/me/totalfreedom/plex/util/PlexUtils.java +++ b/src/main/java/me/totalfreedom/plex/util/PlexUtils.java @@ -1,8 +1,16 @@ package me.totalfreedom.plex.util; import java.sql.SQLException; +import java.util.List; +import java.util.stream.Collectors; + +import com.google.common.collect.Lists; import me.totalfreedom.plex.Plex; import me.totalfreedom.plex.storage.StorageType; +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.PluginCommandYamlParser; +import org.bukkit.plugin.Plugin; public class PlexUtils { @@ -32,4 +40,24 @@ public class PlexUtils } } + public static boolean isPluginCMD(String cmd, String pluginName) + { + Plugin plugin = Bukkit.getServer().getPluginManager().getPlugin(pluginName); + if (plugin == null) + { + PlexLog.error(pluginName + " can not be found on the server! Make sure it is spelt correctly!"); + return false; + } + List cmds = PluginCommandYamlParser.parse(plugin); + for (Command pluginCmd : cmds) + { + List cmdAliases = pluginCmd.getAliases().size() > 0 ? pluginCmd.getAliases().stream().map(String::toLowerCase).collect(Collectors.toList()) : null; + if (pluginCmd.getName().equalsIgnoreCase(cmd) || (cmdAliases != null && cmdAliases.contains(cmd.toLowerCase()))) + { + return true; + } + } + return false; + } + }