Show 'no results for query' in help when multi-help topic is empty
Signed-off-by: Irmo van den Berge <irmo.vandenberge@ziggo.nl>
This commit is contained in:
parent
cabb7f426c
commit
df52e99a8b
1 changed files with 23 additions and 9 deletions
|
|
@ -276,14 +276,11 @@ public final class MinecraftHelp<C> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void printIndexHelpTopic(
|
private void printNoResults(
|
||||||
final @NonNull C sender,
|
final @NonNull C sender,
|
||||||
final @NonNull String query,
|
final @NonNull String query
|
||||||
final int page,
|
|
||||||
final CommandHelpHandler.@NonNull IndexHelpTopic<C> helpTopic
|
|
||||||
) {
|
) {
|
||||||
final Audience audience = this.getAudience(sender);
|
final Audience audience = this.getAudience(sender);
|
||||||
if (helpTopic.isEmpty()) {
|
|
||||||
audience.sendMessage(Identity.nil(), this.basicHeader(sender));
|
audience.sendMessage(Identity.nil(), this.basicHeader(sender));
|
||||||
audience.sendMessage(Identity.nil(), Component.text(
|
audience.sendMessage(Identity.nil(), Component.text(
|
||||||
this.messageProvider.apply(sender, MESSAGE_NO_RESULTS_FOR_QUERY) + ": \"",
|
this.messageProvider.apply(sender, MESSAGE_NO_RESULTS_FOR_QUERY) + ": \"",
|
||||||
|
|
@ -292,8 +289,20 @@ public final class MinecraftHelp<C> {
|
||||||
.append(this.highlight(Component.text("/" + query, this.colors.highlight)))
|
.append(this.highlight(Component.text("/" + query, this.colors.highlight)))
|
||||||
.append(Component.text("\"", this.colors.text)));
|
.append(Component.text("\"", this.colors.text)));
|
||||||
audience.sendMessage(Identity.nil(), this.footer(sender));
|
audience.sendMessage(Identity.nil(), this.footer(sender));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void printIndexHelpTopic(
|
||||||
|
final @NonNull C sender,
|
||||||
|
final @NonNull String query,
|
||||||
|
final int page,
|
||||||
|
final CommandHelpHandler.@NonNull IndexHelpTopic<C> helpTopic
|
||||||
|
) {
|
||||||
|
if (helpTopic.isEmpty()) {
|
||||||
|
this.printNoResults(sender, query);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
final Audience audience = this.getAudience(sender);
|
||||||
new Pagination<CommandHelpHandler.VerboseHelpEntry<C>>(
|
new Pagination<CommandHelpHandler.VerboseHelpEntry<C>>(
|
||||||
(currentPage, maxPages) -> {
|
(currentPage, maxPages) -> {
|
||||||
final List<Component> header = new ArrayList<>();
|
final List<Component> header = new ArrayList<>();
|
||||||
|
|
@ -335,6 +344,11 @@ public final class MinecraftHelp<C> {
|
||||||
final int page,
|
final int page,
|
||||||
final CommandHelpHandler.@NonNull MultiHelpTopic<C> helpTopic
|
final CommandHelpHandler.@NonNull MultiHelpTopic<C> helpTopic
|
||||||
) {
|
) {
|
||||||
|
if (helpTopic.getChildSuggestions().isEmpty()) {
|
||||||
|
this.printNoResults(sender, query);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
final Audience audience = this.getAudience(sender);
|
final Audience audience = this.getAudience(sender);
|
||||||
final int headerIndentation = helpTopic.getLongestPath().length();
|
final int headerIndentation = helpTopic.getLongestPath().length();
|
||||||
new Pagination<String>(
|
new Pagination<String>(
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue