1
0
mirror of https://github.com/GeyserMC/Floodgate.git synced 2025-12-19 14:59:20 +00:00

Backport linked player skin fix from 2.1.1

This commit is contained in:
Camotoy
2022-03-19 21:01:41 -04:00
parent c34970f0b9
commit da663b606a

View File

@@ -34,6 +34,7 @@ import java.util.UUID;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.geysermc.floodgate.api.SimpleFloodgateApi; import org.geysermc.floodgate.api.SimpleFloodgateApi;
import org.geysermc.floodgate.api.player.FloodgatePlayer;
public final class PaperProfileListener implements Listener { public final class PaperProfileListener implements Listener {
@Inject private SimpleFloodgateApi api; @Inject private SimpleFloodgateApi api;
@@ -41,9 +42,19 @@ public final class PaperProfileListener implements Listener {
@EventHandler @EventHandler
public void onFill(PreFillProfileEvent event) { public void onFill(PreFillProfileEvent event) {
UUID id = event.getPlayerProfile().getId(); UUID id = event.getPlayerProfile().getId();
if (!this.api.isFloodgatePlayer(id) || if (id == null) {
event.getPlayerProfile().getProperties().stream().anyMatch( return;
prop -> "textures".equals(prop.getName()))) { }
FloodgatePlayer player = api.getPlayer(id);
if (player == null || player.isLinked()) {
return;
}
// back when this event got added the PlayerProfile class didn't have the
// hasProperty / hasTextures methods
if (event.getPlayerProfile().getProperties().stream().anyMatch(
prop -> "textures".equals(prop.getName()))) {
return; return;
} }