From 39dc0963ce5d087207f5dec48020f2b086db95bf Mon Sep 17 00:00:00 2001 From: Klesti Selimaj Date: Sat, 21 Mar 2026 20:40:29 +0100 Subject: [PATCH] Fixed saturn player tracking --- common | 2 +- .../impl/cosmetics/CloakFeatureRenderer.java | 2 +- .../impl/mixins/MinecraftClientMixin.java | 32 ++++++++++++ .../saturnclient/PlayerTracker.java | 52 ------------------- .../saturnclient/mixin/TabListMixin.java | 2 +- 5 files changed, 35 insertions(+), 55 deletions(-) delete mode 100644 versions/1.21.4/src/main/java/org/saturnclient/saturnclient/PlayerTracker.java diff --git a/common b/common index 9064238..f1913de 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit 9064238c3a421ef11bd5045e98502c9a63aea484 +Subproject commit f1913de95caf6df98fb57c7d7bdbc3295625db56 diff --git a/versions/1.21.4/src/main/java/org/saturnclient/impl/cosmetics/CloakFeatureRenderer.java b/versions/1.21.4/src/main/java/org/saturnclient/impl/cosmetics/CloakFeatureRenderer.java index cbe509f..def02ba 100644 --- a/versions/1.21.4/src/main/java/org/saturnclient/impl/cosmetics/CloakFeatureRenderer.java +++ b/versions/1.21.4/src/main/java/org/saturnclient/impl/cosmetics/CloakFeatureRenderer.java @@ -279,7 +279,7 @@ public class CloakFeatureRenderer extends FeatureRenderer trackedPlayers = new HashSet<>(); - - public static void initialize() { - // When client joins a server, reset tracked players - ClientPlayConnectionEvents.JOIN.register((handler, sender, client) -> { - trackedPlayers.clear(); - client.execute(() -> { - checkForNewPlayers(SaturnClient.client); - }); - }); - - // Check for new players every tick - ClientTickEvents.END_CLIENT_TICK.register(client -> checkForNewPlayers(client)); - } - - private static void checkForNewPlayers(MinecraftClient client) { - if (client.getNetworkHandler() == null) - return; - - for (PlayerListEntry player : client.getNetworkHandler().getPlayerList()) { - UUID playerUUID = player.getProfile().getId(); - - if (!trackedPlayers.contains(playerUUID)) { - // A new player has joined - onPlayerJoin(client, player); - trackedPlayers.add(playerUUID); - } - } - } - - private static void onPlayerJoin(MinecraftClient client, PlayerListEntry player) { - GameProfile profile = player.getProfile(); - ServiceClient.player(profile.getId(), profile.getName()); - } -} diff --git a/versions/1.21.4/src/main/java/org/saturnclient/saturnclient/mixin/TabListMixin.java b/versions/1.21.4/src/main/java/org/saturnclient/saturnclient/mixin/TabListMixin.java index 5dd00f6..41b6bdb 100644 --- a/versions/1.21.4/src/main/java/org/saturnclient/saturnclient/mixin/TabListMixin.java +++ b/versions/1.21.4/src/main/java/org/saturnclient/saturnclient/mixin/TabListMixin.java @@ -33,7 +33,7 @@ public abstract class TabListMixin { String name = profile.getName(); UUID uuid = profile.getId(); - if (SaturnPlayer.get(uuid) != null) { + if (SaturnPlayer.get(name, uuid) != null) { return Text.literal(Roles.getSaturnIndicator()) .styled(style -> style.withColor(Roles.getIconColor(uuid))) .append(Text.literal(name).styled(style -> style.withColor(Formatting.WHITE)));