2016-03-02 19:28:01 +00:00
|
|
|
package me.totalfreedom.totalfreedommod.command;
|
2013-05-16 18:45:21 +00:00
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.Collections;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.Map;
|
|
|
|
import java.util.Map.Entry;
|
2016-03-06 15:56:15 +00:00
|
|
|
import me.totalfreedom.totalfreedommod.rank.Rank;
|
2019-07-28 06:04:16 +00:00
|
|
|
import org.apache.commons.lang.StringUtils;
|
2013-05-16 18:45:21 +00:00
|
|
|
import org.bukkit.command.Command;
|
|
|
|
import org.bukkit.command.CommandSender;
|
|
|
|
import org.bukkit.entity.Player;
|
|
|
|
import org.bukkit.plugin.Plugin;
|
|
|
|
import org.bukkit.plugin.PluginDescriptionFile;
|
|
|
|
|
2016-03-06 15:56:15 +00:00
|
|
|
@CommandPermissions(level = Rank.NON_OP, source = SourceType.BOTH)
|
2015-11-15 23:32:04 +00:00
|
|
|
@CommandParameters(description = "Show all commands for all server plugins.", usage = "/<command>", aliases = "cmdlist")
|
|
|
|
public class Command_commandlist extends FreedomCommand
|
2013-05-16 18:45:21 +00:00
|
|
|
{
|
2015-11-22 18:26:47 +00:00
|
|
|
|
2013-05-16 18:45:21 +00:00
|
|
|
@Override
|
2015-11-22 18:26:47 +00:00
|
|
|
public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
|
2013-05-16 18:45:21 +00:00
|
|
|
{
|
2016-03-02 19:28:01 +00:00
|
|
|
List<String> commands = new ArrayList<>();
|
2013-05-16 18:45:21 +00:00
|
|
|
|
2013-08-14 14:55:37 +00:00
|
|
|
for (Plugin targetPlugin : server.getPluginManager().getPlugins())
|
2013-05-16 18:45:21 +00:00
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
2013-08-14 14:55:37 +00:00
|
|
|
PluginDescriptionFile desc = targetPlugin.getDescription();
|
2018-07-25 22:09:35 +00:00
|
|
|
Map<String, Map<String, Object>> map = desc.getCommands();
|
2013-05-16 18:45:21 +00:00
|
|
|
|
|
|
|
if (map != null)
|
|
|
|
{
|
|
|
|
for (Entry<String, Map<String, Object>> entry : map.entrySet())
|
|
|
|
{
|
2018-07-25 22:09:35 +00:00
|
|
|
String command_name = entry.getKey();
|
2013-05-16 18:45:21 +00:00
|
|
|
commands.add(command_name);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2013-08-14 13:28:19 +00:00
|
|
|
catch (Throwable ex)
|
2013-05-16 18:45:21 +00:00
|
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
Collections.sort(commands);
|
|
|
|
|
2018-07-25 22:09:35 +00:00
|
|
|
sender.sendMessage(StringUtils.join(commands, ", "));
|
2013-05-16 18:45:21 +00:00
|
|
|
|
|
|
|
return true;
|
|
|
|
}
|
2014-08-23 18:19:25 +00:00
|
|
|
}
|