11package de .lars .utilsmanager .listener .player ;
22
3+ import de .lars .utilsmanager .UtilsManager ;
34import de .lars .utilsmanager .util .RankStatements ;
45import io .papermc .paper .event .player .AsyncChatEvent ;
56import net .kyori .adventure .text .Component ;
67import net .kyori .adventure .text .format .NamedTextColor ;
78import net .kyori .adventure .text .serializer .legacy .LegacyComponentSerializer ;
9+ import net .kyori .adventure .text .serializer .plain .PlainTextComponentSerializer ;
810import org .bukkit .Bukkit ;
911import org .bukkit .ChatColor ;
1012import org .bukkit .entity .Player ;
@@ -18,17 +20,21 @@ public void onChat(AsyncChatEvent event) {
1820 Player player = event .getPlayer ();
1921 Component originalMessage = event .message ();
2022
21- String legacyMessage = LegacyComponentSerializer . legacySection ().serialize (originalMessage );
23+ String plain = PlainTextComponentSerializer . plainText ().serialize (originalMessage );
2224
23- String coloredMessage = ChatColor . translateAlternateColorCodes ( '&' , legacyMessage );
25+ Component withColors = LegacyComponentSerializer . legacyAmpersand (). deserialize ( plain );
2426
2527 Component formattedMessage = RankStatements .getRank (player )
2628 .append (Component .text (">: " , NamedTextColor .DARK_GRAY ))
27- .append (Component .text (coloredMessage , NamedTextColor .WHITE ));
29+ .append (withColors .colorIfAbsent (NamedTextColor .WHITE ));
30+
31+ Bukkit .getScheduler ().runTask (UtilsManager .getInstance (), () -> {
32+ for (Player onlinePlayer : Bukkit .getOnlinePlayers ()) {
33+ onlinePlayer .sendMessage (formattedMessage );
34+ }
35+ Bukkit .getConsoleSender ().sendMessage (formattedMessage );
36+ });
2837
29- for (Player onlinePlayer : Bukkit .getOnlinePlayers ()) {
30- onlinePlayer .sendMessage (formattedMessage );
31- }
3238 event .setCancelled (true );
3339 }
34- }
40+ }
0 commit comments