Use original user input instead of legacy event result for AbstractChatEvent#originalMessage (#5770)

This commit is contained in:
Josh Taylor
2021-06-02 23:57:54 +01:00
parent 2614cde313
commit 887b02a2ad
2 changed files with 63 additions and 10 deletions

View File

@@ -157,12 +157,14 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ final EntityPlayer player;
+ final String message;
+ final boolean async;
+ final Component originalMessage;
+
+ public ChatProcessor(final MinecraftServer server, final EntityPlayer player, final String message, final boolean async) {
+ this.server = server;
+ this.player = player;
+ this.message = message;
+ this.async = async;
+ this.originalMessage = Component.text(message);
+ }
+
+ @SuppressWarnings({"CodeBlock2Expr", "deprecated"})
@@ -280,11 +282,11 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ }
+
+ private AsyncChatEvent createAsync(final ChatRenderer renderer, final Set<Player> recipients, final Set<Audience> viewers, final Component message) {
+ return new AsyncChatEvent(this.async, this.player.getBukkitEntity(), recipients, viewers, renderer, message);
+ return new AsyncChatEvent(this.async, this.player.getBukkitEntity(), recipients, viewers, renderer, message, this.originalMessage);
+ }
+
+ private ChatEvent createSync(final ChatRenderer renderer, final Set<Player> recipients, final Set<Audience> viewers, final Component message) {
+ return new ChatEvent(this.player.getBukkitEntity(), recipients, viewers, renderer, message);
+ return new ChatEvent(this.player.getBukkitEntity(), recipients, viewers, renderer, message, this.originalMessage);
+ }
+
+ private static String legacyDisplayName(final CraftPlayer player) {