1
0

use login event instead

This commit is contained in:
Lee
2024-03-22 01:19:25 +00:00
parent 379a21721a
commit a76e54ed62

View File

@ -10,6 +10,7 @@ import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerLoginEvent;
import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.scoreboard.Scoreboard; import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.Team; import org.bukkit.scoreboard.Team;
@ -67,10 +68,7 @@ public class ColorManager implements Listener {
*/ */
private NamedTextColor getColorForPlayer(Player player) { private NamedTextColor getColorForPlayer(Player player) {
return chatColors.computeIfAbsent(player, (e) -> { return chatColors.computeIfAbsent(player, (e) -> {
int hash = HashCommon.mix(player.getUniqueId().hashCode()); return validColors.get(Math.abs(player.getUniqueId().hashCode()) % validColors.size());
int index = HashCommon.mix(hash) & (validColors.size() - 1);
return validColors.get(index);
}); });
} }
@ -92,7 +90,7 @@ public class ColorManager implements Listener {
} }
@EventHandler @EventHandler
public void onJoin(PlayerJoinEvent event) { public void onLogin(PlayerLoginEvent event) {
Player player = event.getPlayer(); Player player = event.getPlayer();
setChatColor(player); setChatColor(player);