placeholder for executed command for bukkit and waterfall version

This commit is contained in:
2024-06-27 17:13:23 +02:00
parent 1755cf5c2b
commit 1295e497b7
3 changed files with 39 additions and 4 deletions
@@ -6,6 +6,10 @@ import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.TextComponent;
import net.kyori.adventure.text.format.NamedTextColor;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.tag.Tag;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.minimessage.tag.standard.StandardTags;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -133,4 +137,23 @@ public class CWCommand {
}
}
/**
* Get a message component for a command denied message
* @param inputCommandString command that was denied as string
* @param message raw message to display
* @return parsed message component
*/
public static Component getParsedErrorMessage(String inputCommandString, String message) {
MiniMessage miniMessage = MiniMessage.builder()
.tags(TagResolver.builder()
.resolvers(StandardTags.defaults(), commandContentResolver(inputCommandString))
.build())
.build();
return miniMessage.deserialize(message);
}
private static TagResolver commandContentResolver(String rawCommand) {
return TagResolver.resolver("command", (context, builder) -> Tag.selfClosingInserting(Component.text(rawCommand)));
}
}