mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-16 14:33:09 +01:00
Allow Reloading of Command Aliases
Reload the aliases stored in commands.yml
This commit is contained in:
parent
2b323743b6
commit
55dc3ff664
5 changed files with 37 additions and 2 deletions
|
@ -2403,6 +2403,15 @@ public final class Bukkit {
|
||||||
public static void reloadPermissions() {
|
public static void reloadPermissions() {
|
||||||
server.reloadPermissions();
|
server.reloadPermissions();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reload the Command Aliases in commands.yml
|
||||||
|
*
|
||||||
|
* @return Whether the reload was successful
|
||||||
|
*/
|
||||||
|
public static boolean reloadCommandAliases() {
|
||||||
|
return server.reloadCommandAliases();
|
||||||
|
}
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
|
|
|
@ -2098,4 +2098,6 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||||
// Spigot end
|
// Spigot end
|
||||||
|
|
||||||
void reloadPermissions(); // Paper
|
void reloadPermissions(); // Paper
|
||||||
|
|
||||||
|
boolean reloadCommandAliases(); // Paper
|
||||||
}
|
}
|
||||||
|
|
|
@ -128,4 +128,14 @@ public interface CommandMap {
|
||||||
*/
|
*/
|
||||||
@Nullable
|
@Nullable
|
||||||
public List<String> tabComplete(@NotNull CommandSender sender, @NotNull String cmdLine, @Nullable Location location) throws IllegalArgumentException;
|
public List<String> tabComplete(@NotNull CommandSender sender, @NotNull String cmdLine, @Nullable Location location) throws IllegalArgumentException;
|
||||||
|
|
||||||
|
// Paper start - Expose Known Commands
|
||||||
|
/**
|
||||||
|
* Return a Map of known commands
|
||||||
|
*
|
||||||
|
* @return known commands
|
||||||
|
*/
|
||||||
|
@NotNull
|
||||||
|
public java.util.Map<String, Command> getKnownCommands();
|
||||||
|
// Paper end
|
||||||
}
|
}
|
||||||
|
|
|
@ -294,4 +294,11 @@ public class SimpleCommandMap implements CommandMap {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Paper start - Expose Known Commands
|
||||||
|
@NotNull
|
||||||
|
public Map<String, Command> getKnownCommands() {
|
||||||
|
return knownCommands;
|
||||||
|
}
|
||||||
|
// Paper end
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,7 +13,7 @@ public class ReloadCommand extends BukkitCommand {
|
||||||
public ReloadCommand(@NotNull String name) {
|
public ReloadCommand(@NotNull String name) {
|
||||||
super(name);
|
super(name);
|
||||||
this.description = "Reloads the server configuration and plugins";
|
this.description = "Reloads the server configuration and plugins";
|
||||||
this.usageMessage = "/reload [permissions]"; // Paper
|
this.usageMessage = "/reload [permissions|commands|confirm]"; // Paper
|
||||||
this.setPermission("bukkit.command.reload");
|
this.setPermission("bukkit.command.reload");
|
||||||
this.setAliases(Arrays.asList("rl"));
|
this.setAliases(Arrays.asList("rl"));
|
||||||
}
|
}
|
||||||
|
@ -29,6 +29,13 @@ public class ReloadCommand extends BukkitCommand {
|
||||||
Bukkit.getServer().reloadPermissions();
|
Bukkit.getServer().reloadPermissions();
|
||||||
Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Permissions successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Permissions successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||||
return true;
|
return true;
|
||||||
|
} else if ("commands".equalsIgnoreCase(args[0])) {
|
||||||
|
if (Bukkit.getServer().reloadCommandAliases()) {
|
||||||
|
Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("Command aliases successfully reloaded.", net.kyori.adventure.text.format.NamedTextColor.GREEN));
|
||||||
|
} else {
|
||||||
|
Command.broadcastCommandMessage(sender, net.kyori.adventure.text.Component.text("An error occurred while trying to reload command aliases.", net.kyori.adventure.text.format.NamedTextColor.RED));
|
||||||
|
}
|
||||||
|
return true;
|
||||||
} else if ("confirm".equalsIgnoreCase(args[0])) {
|
} else if ("confirm".equalsIgnoreCase(args[0])) {
|
||||||
confirmed = true;
|
confirmed = true;
|
||||||
} else {
|
} else {
|
||||||
|
@ -53,6 +60,6 @@ public class ReloadCommand extends BukkitCommand {
|
||||||
@NotNull
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
public List<String> tabComplete(@NotNull CommandSender sender, @NotNull String alias, @NotNull String[] args) throws IllegalArgumentException {
|
public List<String> tabComplete(@NotNull CommandSender sender, @NotNull String alias, @NotNull String[] args) throws IllegalArgumentException {
|
||||||
return java.util.Collections.singletonList("permissions"); // Paper
|
return com.google.common.collect.Lists.newArrayList("permissions", "commands"); // Paper
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue