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

Add native Mojmaps to Compression and Login Finish packet (#5875)

This commit is contained in:
Aurorawr
2025-10-03 23:00:47 +01:00
committed by GitHub
parent ca23e501b4
commit 14892a2ece

View File

@@ -96,19 +96,31 @@ public class GeyserSpigotCompressionDisabler extends ChannelOutboundHandlerAdapt
private static Class<?> findCompressionPacket() throws ClassNotFoundException { private static Class<?> findCompressionPacket() throws ClassNotFoundException {
try { try {
return Class.forName("net.minecraft.network.protocol.login.PacketLoginOutSetCompression"); // Mojmaps
return Class.forName("net.minecraft.network.protocol.login.ClientboundLoginCompressionPacket");
} catch (ClassNotFoundException e) { } catch (ClassNotFoundException e) {
try {
// Spigot mappings
return Class.forName("net.minecraft.network.protocol.login.PacketLoginOutSetCompression");
} catch (ClassNotFoundException ex) {
String prefix = Bukkit.getServer().getClass().getPackage().getName().replace("org.bukkit.craftbukkit", "net.minecraft.server"); String prefix = Bukkit.getServer().getClass().getPackage().getName().replace("org.bukkit.craftbukkit", "net.minecraft.server");
return Class.forName(prefix + ".PacketLoginOutSetCompression"); return Class.forName(prefix + ".PacketLoginOutSetCompression");
} }
} }
}
private static Class<?> findLoginSuccessPacket() throws ClassNotFoundException { private static Class<?> findLoginSuccessPacket() throws ClassNotFoundException {
try { try {
return Class.forName("net.minecraft.network.protocol.login.PacketLoginOutSuccess"); // Mojmaps
return Class.forName("net.minecraft.network.protocol.login.ClientboundLoginFinishedPacket");
} catch (ClassNotFoundException e) { } catch (ClassNotFoundException e) {
try {
// Spigot mappings
return Class.forName("net.minecraft.network.protocol.login.PacketLoginOutSuccess");
} catch (ClassNotFoundException ex) {
String prefix = Bukkit.getServer().getClass().getPackage().getName().replace("org.bukkit.craftbukkit", "net.minecraft.server"); String prefix = Bukkit.getServer().getClass().getPackage().getName().replace("org.bukkit.craftbukkit", "net.minecraft.server");
return Class.forName(prefix + ".PacketLoginOutSuccess"); return Class.forName(prefix + ".PacketLoginOutSuccess");
} }
} }
}
} }