From 6f0940ebd43a481dbbc4ab262cfdd80eae57aa54 Mon Sep 17 00:00:00 2001 From: jmp Date: Tue, 13 Oct 2020 23:56:46 -0700 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=A6=20Update=20minecraft-extras=20for?= =?UTF-8?q?=20Adventure=204.0.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cloud-minecraft-extras/build.gradle | 2 +- .../extras/MinecraftExceptionHandler.java | 5 ++++ .../minecraft/extras/MinecraftHelp.java | 27 ++++++++++--------- .../examples/bukkit/ExamplePlugin.java | 4 ++- 4 files changed, 24 insertions(+), 14 deletions(-) diff --git a/cloud-minecraft/cloud-minecraft-extras/build.gradle b/cloud-minecraft/cloud-minecraft-extras/build.gradle index 91894abc..5169ab4a 100644 --- a/cloud-minecraft/cloud-minecraft-extras/build.gradle +++ b/cloud-minecraft/cloud-minecraft-extras/build.gradle @@ -1,4 +1,4 @@ dependencies { api project(':cloud-core') - api 'net.kyori:adventure-api:4.0.0-SNAPSHOT' + api 'net.kyori:adventure-api:4.0.0' } diff --git a/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftExceptionHandler.java b/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftExceptionHandler.java index e02abdd0..f9d21f2a 100644 --- a/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftExceptionHandler.java +++ b/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftExceptionHandler.java @@ -29,6 +29,7 @@ import cloud.commandframework.exceptions.InvalidCommandSenderException; import cloud.commandframework.exceptions.InvalidSyntaxException; import cloud.commandframework.exceptions.NoPermissionException; import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.identity.Identity; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.NamedTextColor; import org.checkerframework.checker.nullness.qual.NonNull; @@ -186,6 +187,7 @@ public final class MinecraftExceptionHandler { manager.registerExceptionHandler( InvalidSyntaxException.class, (c, e) -> audienceMapper.apply(c).sendMessage( + Identity.nil(), this.decorator.apply(this.componentBuilders.get(ExceptionType.INVALID_SYNTAX).apply(e)) ) ); @@ -194,6 +196,7 @@ public final class MinecraftExceptionHandler { manager.registerExceptionHandler( InvalidCommandSenderException.class, (c, e) -> audienceMapper.apply(c).sendMessage( + Identity.nil(), this.decorator.apply(this.componentBuilders.get(ExceptionType.INVALID_SENDER).apply(e)) ) ); @@ -202,6 +205,7 @@ public final class MinecraftExceptionHandler { manager.registerExceptionHandler( NoPermissionException.class, (c, e) -> audienceMapper.apply(c).sendMessage( + Identity.nil(), this.decorator.apply(this.componentBuilders.get(ExceptionType.NO_PERMISSION).apply(e)) ) ); @@ -210,6 +214,7 @@ public final class MinecraftExceptionHandler { manager.registerExceptionHandler( ArgumentParseException.class, (c, e) -> audienceMapper.apply(c).sendMessage( + Identity.nil(), this.decorator.apply(this.componentBuilders.get(ExceptionType.ARGUMENT_PARSING).apply(e)) ) ); diff --git a/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftHelp.java b/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftHelp.java index 7ae34dec..209d13af 100644 --- a/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftHelp.java +++ b/cloud-minecraft/cloud-minecraft-extras/src/main/java/cloud/commandframework/minecraft/extras/MinecraftHelp.java @@ -27,6 +27,7 @@ import cloud.commandframework.CommandHelpHandler; import cloud.commandframework.CommandManager; import cloud.commandframework.arguments.CommandArgument; import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.identity.Identity; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.TextComponent; import net.kyori.adventure.text.event.ClickEvent; @@ -268,14 +269,14 @@ public final class MinecraftHelp { ) { final Audience audience = this.getAudience(sender); if (helpTopic.isEmpty()) { - audience.sendMessage(this.basicHeader(sender)); - audience.sendMessage(Component.text( + audience.sendMessage(Identity.nil(), this.basicHeader(sender)); + audience.sendMessage(Identity.nil(), Component.text( this.messageProvider.apply(sender, MESSAGE_NO_RESULTS_FOR_QUERY) + ": \"", this.colors.text ) .append(this.highlight(Component.text("/" + query, this.colors.highlight))) .append(Component.text("\"", this.colors.text))); - audience.sendMessage(this.footer(sender)); + audience.sendMessage(Identity.nil(), this.footer(sender)); return; } new Pagination>( @@ -309,7 +310,8 @@ public final class MinecraftHelp { }, (currentPage, maxPages) -> this.paginatedFooter(sender, currentPage, maxPages, query), (attemptedPage, maxPages) -> this.pageOutOfRange(sender, attemptedPage, maxPages) - ).render(helpTopic.getEntries(), page, this.maxResultsPerPage).forEach(audience::sendMessage); + ).render(helpTopic.getEntries(), page, this.maxResultsPerPage).forEach(line -> + audience.sendMessage(Identity.nil(), line)); } private void printMultiHelpTopic( @@ -344,7 +346,8 @@ public final class MinecraftHelp { }, (currentPage, maxPages) -> this.paginatedFooter(sender, currentPage, maxPages, query), (attemptedPage, maxPages) -> this.pageOutOfRange(sender, attemptedPage, maxPages) - ).render(helpTopic.getChildSuggestions(), page, this.maxResultsPerPage).forEach(audience::sendMessage); + ).render(helpTopic.getChildSuggestions(), page, this.maxResultsPerPage).forEach(line -> + audience.sendMessage(Identity.nil(), line)); } private void printVerboseHelpTopic( @@ -353,12 +356,12 @@ public final class MinecraftHelp { final CommandHelpHandler.@NonNull VerboseHelpTopic helpTopic ) { final Audience audience = this.getAudience(sender); - audience.sendMessage(this.basicHeader(sender)); - audience.sendMessage(this.showingResults(sender, query)); + audience.sendMessage(Identity.nil(), this.basicHeader(sender)); + audience.sendMessage(Identity.nil(), this.showingResults(sender, query)); final String command = this.commandManager.getCommandSyntaxFormatter() .apply(helpTopic.getCommand().getArguments(), null); audience.sendMessage( - this.lastBranch() + Identity.nil(), this.lastBranch() .append(Component.text( " " + this.messageProvider.apply(sender, MESSAGE_COMMAND) + ": ", this.colors.primary @@ -370,7 +373,7 @@ public final class MinecraftHelp { : helpTopic.getDescription(); final boolean hasArguments = helpTopic.getCommand().getArguments().size() > 1; audience.sendMessage( - Component.text(" ") + Identity.nil(), Component.text(" ") .append(hasArguments ? this.branch() : this.lastBranch()) .append(Component.text( " " + this.messageProvider.apply(sender, MESSAGE_DESCRIPTION) + ": ", @@ -380,7 +383,7 @@ public final class MinecraftHelp { ); if (hasArguments) { audience.sendMessage( - Component.text(" ") + Identity.nil(), Component.text(" ") .append(this.lastBranch()) .append(Component.text( " " + this.messageProvider.apply(sender, MESSAGE_ARGUMENTS) + ":", @@ -415,10 +418,10 @@ public final class MinecraftHelp { .append(Component.text(description, this.colors.text)); } - audience.sendMessage(component); + audience.sendMessage(Identity.nil(), component); } } - audience.sendMessage(this.footer(sender)); + audience.sendMessage(Identity.nil(), this.footer(sender)); } private @NonNull Component showingResults( diff --git a/examples/example-bukkit/src/main/java/cloud/commandframework/examples/bukkit/ExamplePlugin.java b/examples/example-bukkit/src/main/java/cloud/commandframework/examples/bukkit/ExamplePlugin.java index 0a61c52f..cbc6686a 100644 --- a/examples/example-bukkit/src/main/java/cloud/commandframework/examples/bukkit/ExamplePlugin.java +++ b/examples/example-bukkit/src/main/java/cloud/commandframework/examples/bukkit/ExamplePlugin.java @@ -64,6 +64,7 @@ import cloud.commandframework.paper.PaperCommandManager; import cloud.commandframework.types.tuples.Triplet; import com.google.common.collect.ImmutableList; import io.leangen.geantyref.TypeToken; +import net.kyori.adventure.identity.Identity; import net.kyori.adventure.platform.bukkit.BukkitAudiences; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.NamedTextColor; @@ -438,7 +439,7 @@ public final class ExamplePlugin extends JavaPlugin { private void commandClear(final @NonNull Player player) { player.getInventory().clear(); this.bukkitAudiences.player(player) - .sendMessage(Component.text("Your inventory has been cleared", NamedTextColor.GOLD)); + .sendMessage(Identity.nil(), Component.text("Your inventory has been cleared", NamedTextColor.GOLD)); } @CommandMethod("example give ") @@ -481,6 +482,7 @@ public final class ExamplePlugin extends JavaPlugin { failureCaption = "regex.money") String money ) { bukkitAudiences.sender(sender).sendMessage( + Identity.nil(), Component.text().append(Component.text("You have been given ", NamedTextColor.AQUA)) .append(Component.text(money, NamedTextColor.GOLD)) );