2020-05-06 09:48:49 +00:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
2017-07-31 07:09:13 +00:00
|
|
|
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
|
|
|
Date: Mon, 31 Jul 2017 02:08:55 -0500
|
|
|
|
Subject: [PATCH] Make /plugins list alphabetical
|
|
|
|
|
|
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
|
2020-07-05 01:04:35 +00:00
|
|
|
index e8a7f435fb30da3506b2b4fa8c5675c829edc105..ba399ee5ab33b4fd8741bce53509a17b1aabc84d 100644
|
2017-07-31 07:09:13 +00:00
|
|
|
--- a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
|
|
|
|
+++ b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
|
2019-04-23 04:47:07 +00:00
|
|
|
@@ -3,6 +3,9 @@ package org.bukkit.command.defaults;
|
2017-07-31 07:09:13 +00:00
|
|
|
import java.util.Arrays;
|
2017-11-10 22:31:39 +00:00
|
|
|
import java.util.Collections;
|
|
|
|
import java.util.List;
|
2017-07-31 07:09:13 +00:00
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.TreeMap;
|
2019-04-23 04:47:07 +00:00
|
|
|
+
|
2017-07-31 07:09:13 +00:00
|
|
|
import org.bukkit.Bukkit;
|
|
|
|
import org.bukkit.ChatColor;
|
2019-04-23 04:47:07 +00:00
|
|
|
import org.bukkit.command.CommandSender;
|
2020-07-05 01:04:35 +00:00
|
|
|
@@ -49,34 +52,51 @@ public class PluginsCommand extends BukkitCommand {
|
2017-07-31 07:09:13 +00:00
|
|
|
|
2019-03-20 00:28:15 +00:00
|
|
|
@NotNull
|
2017-07-31 07:09:13 +00:00
|
|
|
private String getPluginList() {
|
|
|
|
- StringBuilder pluginList = new StringBuilder();
|
|
|
|
- Plugin[] plugins = Bukkit.getPluginManager().getPlugins();
|
|
|
|
+ // Paper start
|
2020-03-26 02:37:20 +00:00
|
|
|
+ TreeMap<String, Plugin> plugins = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
|
2020-07-05 01:04:35 +00:00
|
|
|
+
|
2017-07-31 07:09:13 +00:00
|
|
|
+ for (Plugin plugin : Bukkit.getPluginManager().getPlugins()) {
|
2020-03-26 02:37:20 +00:00
|
|
|
+ plugins.put(plugin.getDescription().getName(), plugin);
|
2017-07-31 07:09:13 +00:00
|
|
|
+ }
|
2020-07-05 01:04:35 +00:00
|
|
|
|
|
|
|
- for (Plugin plugin : plugins) {
|
2017-07-31 07:09:13 +00:00
|
|
|
+ StringBuilder pluginList = new StringBuilder();
|
2020-03-26 02:37:20 +00:00
|
|
|
+ for (Map.Entry<String, Plugin> entry : plugins.entrySet()) {
|
2017-07-31 07:09:13 +00:00
|
|
|
if (pluginList.length() > 0) {
|
|
|
|
pluginList.append(ChatColor.WHITE);
|
|
|
|
pluginList.append(", ");
|
|
|
|
}
|
2020-03-26 02:37:20 +00:00
|
|
|
|
2017-07-31 07:09:13 +00:00
|
|
|
- pluginList.append(plugin.isEnabled() ? ChatColor.GREEN : ChatColor.RED);
|
|
|
|
- pluginList.append(plugin.getDescription().getName());
|
2020-03-26 02:37:20 +00:00
|
|
|
+ Plugin plugin = entry.getValue();
|
|
|
|
|
|
|
|
if (plugin.getDescription().getProvides().size() > 0) {
|
|
|
|
pluginList.append(" (").append(String.join(", ", plugin.getDescription().getProvides())).append(")");
|
|
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ pluginList.append(plugin.isEnabled() ? ChatColor.GREEN : ChatColor.RED);
|
|
|
|
+ pluginList.append(plugin.getDescription().getName());
|
2017-07-31 07:09:13 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
- return "(" + plugins.length + "): " + pluginList.toString();
|
|
|
|
+ return "(" + plugins.size() + "): " + pluginList.toString();
|
|
|
|
+ // Paper end
|
|
|
|
}
|
2020-06-28 01:54:05 +00:00
|
|
|
|
|
|
|
// Spigot start
|
2020-07-05 01:04:35 +00:00
|
|
|
@NotNull
|
|
|
|
private BaseComponent[] getPluginListSpigot() {
|
|
|
|
- Plugin[] plugins = Bukkit.getPluginManager().getPlugins();
|
|
|
|
- ComponentBuilder pluginList = new ComponentBuilder("Plugins (" + plugins.length + "): ");
|
|
|
|
+ // Paper start
|
|
|
|
+ TreeMap<String, Plugin> plugins = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
|
|
|
|
+ for (Plugin plugin : Bukkit.getPluginManager().getPlugins()) {
|
|
|
|
+ plugins.put(plugin.getDescription().getName(), plugin);
|
|
|
|
+ }
|
|
|
|
+ ComponentBuilder pluginList = new ComponentBuilder("Plugins (" + plugins.size() + "): ");
|
|
|
|
+ // Paper end
|
|
|
|
|
|
|
|
int index = 0;
|
|
|
|
- for (Plugin plugin : plugins) {
|
|
|
|
+ // Paper start
|
|
|
|
+ for (Map.Entry<String, Plugin> entry : plugins.entrySet()) {
|
|
|
|
+ Plugin plugin = entry.getValue();
|
|
|
|
+ // Paper end
|
|
|
|
if (index++ > 0) {
|
|
|
|
pluginList.append(", ", FormatRetention.NONE).color(net.md_5.bungee.api.ChatColor.WHITE);
|
|
|
|
}
|