Implement caching on bungee platform

This commit is contained in:
booky10 committed 2024-08-06 17:19:23 +02:00
1 parent 55c1093783
commit e9eb441a1c
1 file changed
+8
@@ -31,6 +31,7 @@ import com.github.retrooper.packetevents.netty.channel.ChannelHelper;
import com.github.retrooper.packetevents.protocol.ConnectionState;
import com.github.retrooper.packetevents.protocol.ProtocolVersion;
import com.github.retrooper.packetevents.protocol.packettype.PacketType;
import com.github.retrooper.packetevents.protocol.player.ClientVersion;
import com.github.retrooper.packetevents.protocol.player.User;
import com.github.retrooper.packetevents.protocol.player.UserProfile;
import com.github.retrooper.packetevents.settings.PacketEventsSettings;
@@ -50,6 +51,7 @@ import net.md_5.bungee.protocol.ProtocolConstants;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.Objects;
import java.util.logging.Level;
import java.util.regex.Pattern;
@@ -103,6 +105,12 @@ public class BungeePacketEventsBuilder {
}
return version;
}
@Override
public Object getRegistryCacheKey(User user, ClientVersion version) {
ProxiedPlayer player = ProxyServer.getInstance().getPlayer(user.getUUID());
return player == null ? null : Objects.hash(player.getServer().getInfo(), version);
}
};
private final PlayerManagerAbstract playerManager = new PlayerManagerAbstract() {