not displaying username in game chat.
IDK why I did not do this at the beginning but tested a few things and the username is not showing up in plain text but some weird way.
CommandPacketListener.java
Code:
if (command[0].equalsIgnoreCase("givemod")) {
String name = wholeCommand.substring(8);
Player target = World.getPlayerByName(name); //This Line
if (target == null) {
player.getPacketSender().sendMessage("Player is not online");
} else {
target.setRights(MODERATOR);
target.getPacketSender().sendRights();
target.getPacketSender().sendMessage("Your player rights have been changed.");
player.getPacketSender().sendMessage("Gave " + target + " mod.");
}
}
When you follow the target in World.java
Code:
public static Player getPlayerByName(String username) {
Optional<Player> op = players.search(p -> p != null && p.getUsername().equals(Misc.formatText(username))); //This Line
return op.orElse(null);
}
Misc.java
Code:
public static String formatText(String s) {
for (int i = 0; i < s.length(); i++) {
if (i == 0) {
s = String.format("%s%s", Character.toUpperCase(s.charAt(0)),
s.substring(1));
}
if (!Character.isLetterOrDigit(s.charAt(i)) && s.charAt(i) != '\'') {
if (i + 1 < s.length()) {
s = String.format("%s%s%s", s.subSequence(0, i + 1),
Character.toUpperCase(s.charAt(i + 1)),
s.substring(i + 2));
}
}
}
return s.replace("_", " ");
}
Not sure what is going on but the out put is
Gave [email protected] mod.