Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private static Map<String, String> aliasToCanonicalNameMap = new HashMap<>();
- private void registerCommandAliases(CommandDispatcher<ServerCommandSource> dispatcher, Map<String, List<String>> configuredAliases) {
- aliasToCanonicalNameMap.clear();
- for (Map.Entry<String, List<String>> entry : configuredAliases.entrySet()) {
- String canonicalCommandName = entry.getKey();
- List<String> aliases = entry.getValue();
- CommandNode<ServerCommandSource> canonicalNode = dispatcher.getRoot().getChild(canonicalCommandName);
- if (canonicalNode == null) {
- // Warning logged if canonical command not found
- continue;
- }
- for (String alias : aliases) {
- String cleanAlias = alias.startsWith("/") ? alias.substring(1) : alias;
- dispatcher.register(CommandManager.literal(cleanAlias).redirect(canonicalNode));
- aliasToCanonicalNameMap.put(cleanAlias, canonicalCommandName);
- }
- }
- }
- public static Map<String, String> getAliasToCanonicalNameMap() {
- return aliasToCanonicalNameMap;
- }
Advertisement
Add Comment
Please, Sign In to add comment