Remove some unnecessary skin checks

This commit is contained in:
Camotoy 2021-11-29 10:40:27 -05:00
parent 2ae34b69af
commit eb7d71017c
No known key found for this signature in database
GPG key ID: 7EEFB66FE798081F
2 changed files with 22 additions and 28 deletions

View file

@ -112,9 +112,7 @@ public class FakeHeadProvider {
try { try {
SkinProvider.SkinData mergedSkinData = MERGED_SKINS_LOADING_CACHE.get(new FakeHeadEntry(texturesProperty, fakeHeadSkinUrl, entity)); SkinProvider.SkinData mergedSkinData = MERGED_SKINS_LOADING_CACHE.get(new FakeHeadEntry(texturesProperty, fakeHeadSkinUrl, entity));
if (session.getUpstream().isInitialized()) { sendSkinPacket(session, entity, mergedSkinData);
sendSkinPacket(session, entity, mergedSkinData);
}
} catch (ExecutionException e) { } catch (ExecutionException e) {
GeyserImpl.getInstance().getLogger().error("Couldn't merge skin of " + entity.getUsername() + " with head skin url " + fakeHeadSkinUrl, e); GeyserImpl.getInstance().getLogger().error("Couldn't merge skin of " + entity.getUsername() + " with head skin url " + fakeHeadSkinUrl, e);
} }
@ -136,9 +134,7 @@ public class FakeHeadProvider {
return; return;
} }
if (session.getUpstream().isInitialized()) { sendSkinPacket(session, entity, skinData);
sendSkinPacket(session, entity, skinData);
}
}); });
} }

View file

@ -133,31 +133,29 @@ public class SkinManager {
SkinProvider.Cape cape = skinData.cape(); SkinProvider.Cape cape = skinData.cape();
SkinProvider.SkinGeometry geometry = skinData.geometry(); SkinProvider.SkinGeometry geometry = skinData.geometry();
if (session.getUpstream().isInitialized()) { PlayerListPacket.Entry updatedEntry = buildEntryManually(
PlayerListPacket.Entry updatedEntry = buildEntryManually( session,
session, entity.getUuid(),
entity.getUuid(), entity.getUsername(),
entity.getUsername(), entity.getGeyserId(),
entity.getGeyserId(), skin.getTextureUrl(),
skin.getTextureUrl(), skin.getSkinData(),
skin.getSkinData(), cape.getCapeId(),
cape.getCapeId(), cape.getCapeData(),
cape.getCapeData(), geometry
geometry );
);
PlayerListPacket playerAddPacket = new PlayerListPacket(); PlayerListPacket playerAddPacket = new PlayerListPacket();
playerAddPacket.setAction(PlayerListPacket.Action.ADD); playerAddPacket.setAction(PlayerListPacket.Action.ADD);
playerAddPacket.getEntries().add(updatedEntry); playerAddPacket.getEntries().add(updatedEntry);
session.sendUpstreamPacket(playerAddPacket); session.sendUpstreamPacket(playerAddPacket);
if (!entity.isPlayerList()) { if (!entity.isPlayerList()) {
PlayerListPacket playerRemovePacket = new PlayerListPacket(); PlayerListPacket playerRemovePacket = new PlayerListPacket();
playerRemovePacket.setAction(PlayerListPacket.Action.REMOVE); playerRemovePacket.setAction(PlayerListPacket.Action.REMOVE);
playerRemovePacket.getEntries().add(updatedEntry); playerRemovePacket.getEntries().add(updatedEntry);
session.sendUpstreamPacket(playerRemovePacket); session.sendUpstreamPacket(playerRemovePacket);
}
} }
} }