1616import de .minebench .syncinv .messenger .PlayerDataQuery ;
1717import de .minebench .syncinv .messenger .RedisMessenger ;
1818import de .minebench .syncinv .messenger .ServerMessenger ;
19+ import de .themoep .minedown .adventure .MineDown ;
1920import lombok .Getter ;
20- import org .bukkit .ChatColor ;
21+ import net .kyori .adventure .text .Component ;
22+ import net .kyori .adventure .text .format .NamedTextColor ;
2123import org .bukkit .GameRule ;
2224import org .bukkit .Location ;
2325import org .bukkit .Material ;
@@ -225,16 +227,16 @@ public void onEnable() {
225227 if (query .getYoungestServer () == null ) {
226228 openInvCommand .onCommand (sender , command , label , args );
227229 } else {
228- sender .sendMessage (ChatColor . RED + "Current server does not have newest player data! "
229- + ChatColor . GRAY + "Connecting to server " + query .getYoungestServer () + " which has the newest data..." );
230+ sender .sendMessage (Component . text ( "Current server does not have newest player data! " , NamedTextColor . RED ).
231+ append ( Component . text ( "Connecting to server " + query .getYoungestServer () + " which has the newest data..." , NamedTextColor . GRAY )) );
230232 connectToServer (((Player ) sender ).getUniqueId (), query .getYoungestServer ());
231233 }
232234 });
233235 if (q == null ) {
234- sender .sendMessage (ChatColor . RED + "Could not query information from other servers! Take a look at the log for more details." );
236+ sender .sendMessage (Component . text ( "Could not query information from other servers! Take a look at the log for more details." , NamedTextColor . RED ) );
235237 }
236238 } else {
237- sender .sendMessage (ChatColor . RED + "Player not found!" );
239+ sender .sendMessage (Component . text ( "Player not found!" , NamedTextColor . RED ) );
238240 }
239241 });
240242 return true ;
@@ -388,11 +390,11 @@ && getConfig().contains("sync-" + syncType.getKey(), true)) {
388390 }
389391 }
390392
391- public boolean onCommand (CommandSender sender , Command cmd , String label , String [] args ) {
393+ public boolean onCommand (CommandSender sender , Command cmd , String label , String [] args ) {
392394 if (args .length > 0 ) {
393395 if ("reload" .equalsIgnoreCase (args [0 ]) && sender .hasPermission ("syncing.command.reload" )) {
394396 loadConfig ();
395- sender .sendMessage (ChatColor . YELLOW + "Config reloaded!" );
397+ sender .sendMessage (Component . text ( "Config reloaded!" , NamedTextColor . YELLOW ) );
396398 return true ;
397399 }
398400 }
@@ -401,16 +403,13 @@ public boolean onCommand(CommandSender sender, Command cmd, String label, String
401403
402404 /**
403405 * Get a language message from the config and replace variables in it
404- * @param key The key of the message (lang.<key>)
405- * @param replacements An array of variables to be replaced with certain strings in the format [var,repl,var,repl,...]
406+ * @param key The key of the message (lang.<key>)
407+ * @param replacements An array of String to replace placeholders (uses the % character as placeholder indicators (suffix and prefix))
406408 * @return The message string with colorcodes and variables replaced
407409 */
408- public String getLang (String key , String ... replacements ) {
409- String msg = ChatColor .translateAlternateColorCodes ('&' , getConfig ().getString ("lang." + key , getName () + ": &cMissing language key &6" + key ));
410- for (int i = 0 ; i + 1 < replacements .length ; i += 2 ) {
411- msg = msg .replace ("%" + replacements [i ] + "%" , replacements [i +1 ]);
412- }
413- return msg ;
410+ public Component getLang (String key , String ... replacements ) {
411+ String rawMsg = getConfig ().getString ("lang." + key , getName () + ": <red>Missing language key</red><gold> " + key +"</gold>" );
412+ return MineDown .parse (rawMsg , replacements );
414413 }
415414
416415 /**
@@ -1132,7 +1131,7 @@ public void kick(UUID playerId, String key) {
11321131 runSync (() -> {
11331132 Player player = getServer ().getPlayer (playerId );
11341133 if (player != null ) {
1135- player .kickPlayer (getLang (key ));
1134+ player .kick (getLang (key ));
11361135 }
11371136 });
11381137 }
0 commit comments