3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-10-01 23:50:11 +02:00

Properly translate player entity UUID for vaults

Dieser Commit ist enthalten in:
Camotoy 2024-06-15 22:40:29 -04:00
Ursprung 851ed36244
Commit 6025931c7d
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 7EEFB66FE798081F

Datei anzeigen

@ -76,11 +76,15 @@ public class VaultBlockEntityTranslator extends BlockEntityTranslator {
LongList bedrockPlayers = new LongArrayList(connectedPlayers.size()); LongList bedrockPlayers = new LongArrayList(connectedPlayers.size());
for (int[] player : connectedPlayers) { for (int[] player : connectedPlayers) {
UUID uuid = uuidFromIntArray(player); UUID uuid = uuidFromIntArray(player);
if (uuid.equals(session.getPlayerEntity().getUuid())) {
bedrockPlayers.add(session.getPlayerEntity().getGeyserId());
} else {
PlayerEntity playerEntity = session.getEntityCache().getPlayerEntity(uuid); PlayerEntity playerEntity = session.getEntityCache().getPlayerEntity(uuid);
if (playerEntity != null) { if (playerEntity != null) {
bedrockPlayers.add(playerEntity.getGeyserId()); bedrockPlayers.add(playerEntity.getGeyserId());
} }
} }
}
bedrockNbt.putList("connected_players", NbtType.LONG, bedrockPlayers); bedrockNbt.putList("connected_players", NbtType.LONG, bedrockPlayers);
// Fill this in, since as of Java 1.21, Bedrock always seems to include it, but Java assumes the default // Fill this in, since as of Java 1.21, Bedrock always seems to include it, but Java assumes the default