mirror of
https://github.com/GeyserMC/GeyserConnect.git
synced 2025-06-26 14:15:22 +02:00
Changes to ensure GeyserConnect still works despite internal changes in https://github.com/GeyserMC/Geyser/pull/4604/
This commit is contained in:
parent
1c8c0386da
commit
9f2e46a998
2 changed files with 17 additions and 14 deletions
|
@ -119,6 +119,11 @@ public class GeyserConnect implements Extension {
|
||||||
@Subscribe
|
@Subscribe
|
||||||
public void onSessionInitialize(SessionInitializeEvent event) {
|
public void onSessionInitialize(SessionInitializeEvent event) {
|
||||||
GeyserSession session = (GeyserSession) event.connection();
|
GeyserSession session = (GeyserSession) event.connection();
|
||||||
|
if (config().hardPlayerLimit()) {
|
||||||
|
if (session.getGeyser().getSessionManager().size() >= session.getGeyser().getConfig().getMaxPlayers()) {
|
||||||
|
session.disconnect("disconnectionScreen.serverFull");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Change the packet handler to our own
|
// Change the packet handler to our own
|
||||||
BedrockPacketHandler packetHandler = session.getUpstream().getSession().getPacketHandler();
|
BedrockPacketHandler packetHandler = session.getUpstream().getSession().getPacketHandler();
|
||||||
|
|
|
@ -27,8 +27,9 @@ package org.geysermc.extension.connect;
|
||||||
|
|
||||||
import org.cloudburstmc.protocol.bedrock.data.AttributeData;
|
import org.cloudburstmc.protocol.bedrock.data.AttributeData;
|
||||||
import org.cloudburstmc.protocol.bedrock.packet.BedrockPacketHandler;
|
import org.cloudburstmc.protocol.bedrock.packet.BedrockPacketHandler;
|
||||||
import org.cloudburstmc.protocol.bedrock.packet.LoginPacket;
|
|
||||||
import org.cloudburstmc.protocol.bedrock.packet.NetworkStackLatencyPacket;
|
import org.cloudburstmc.protocol.bedrock.packet.NetworkStackLatencyPacket;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.packet.ResourcePackChunkRequestPacket;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.packet.ResourcePackClientResponsePacket;
|
||||||
import org.cloudburstmc.protocol.bedrock.packet.SetLocalPlayerAsInitializedPacket;
|
import org.cloudburstmc.protocol.bedrock.packet.SetLocalPlayerAsInitializedPacket;
|
||||||
import org.cloudburstmc.protocol.bedrock.packet.UpdateAttributesPacket;
|
import org.cloudburstmc.protocol.bedrock.packet.UpdateAttributesPacket;
|
||||||
import org.cloudburstmc.protocol.common.PacketSignal;
|
import org.cloudburstmc.protocol.common.PacketSignal;
|
||||||
|
@ -74,19 +75,6 @@ public class PacketHandler extends UpstreamPacketHandler {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public PacketSignal handle(LoginPacket loginPacket) {
|
|
||||||
// Check to see if the server is full and we have a hard player cap
|
|
||||||
if (geyserConnect.config().hardPlayerLimit()) {
|
|
||||||
if (session.getGeyser().getSessionManager().size() >= session.getGeyser().getConfig().getMaxPlayers()) {
|
|
||||||
session.disconnect("disconnectionScreen.serverFull");
|
|
||||||
return PacketSignal.HANDLED;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return super.handle(loginPacket);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PacketSignal handle(SetLocalPlayerAsInitializedPacket packet) {
|
public PacketSignal handle(SetLocalPlayerAsInitializedPacket packet) {
|
||||||
geyserConnect.logger().debug("Player initialized: " + Utils.displayName(session));
|
geyserConnect.logger().debug("Player initialized: " + Utils.displayName(session));
|
||||||
|
@ -165,5 +153,15 @@ public class PacketHandler extends UpstreamPacketHandler {
|
||||||
|
|
||||||
return super.handle(packet);
|
return super.handle(packet);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PacketSignal handle(ResourcePackClientResponsePacket packet) {
|
||||||
|
return originalPacketHandler.handle(packet);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PacketSignal handle(ResourcePackChunkRequestPacket packet) {
|
||||||
|
return originalPacketHandler.handle(packet);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue