mirror of
https://github.com/FabricMC/fabric.git
synced 2025-02-17 04:01:46 -05:00
Add access to ClientConfigurationNetworkHandler in context (#4097)
(cherry picked from commit c7469b213f
)
This commit is contained in:
parent
6de299b157
commit
d3cf6d4e02
3 changed files with 14 additions and 2 deletions
|
@ -23,6 +23,7 @@ import org.jetbrains.annotations.ApiStatus;
|
|||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.network.ClientConfigurationNetworkHandler;
|
||||
import net.minecraft.network.packet.CustomPayload;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.thread.ThreadExecutor;
|
||||
|
@ -280,6 +281,11 @@ public final class ClientConfigurationNetworking {
|
|||
*/
|
||||
MinecraftClient client();
|
||||
|
||||
/**
|
||||
* @return The ClientConfigurationNetworkHandler instance
|
||||
*/
|
||||
ClientConfigurationNetworkHandler networkHandler();
|
||||
|
||||
/**
|
||||
* @return The packet sender
|
||||
*/
|
||||
|
|
|
@ -44,7 +44,7 @@ public final class ClientConfigurationNetworkAddon extends ClientCommonNetworkAd
|
|||
|
||||
public ClientConfigurationNetworkAddon(ClientConfigurationNetworkHandler handler, MinecraftClient client) {
|
||||
super(ClientNetworkingImpl.CONFIGURATION, ((ClientCommonNetworkHandlerAccessor) handler).getConnection(), "ClientPlayNetworkAddon for " + ((ClientConfigurationNetworkHandlerAccessor) handler).getProfile().getName(), handler, client);
|
||||
this.context = new ContextImpl(client, this);
|
||||
this.context = new ContextImpl(client, handler, this);
|
||||
|
||||
// Must register pending channels via lateinit
|
||||
this.registerPendingChannels((ChannelInfoHolder) this.connection, NetworkPhase.CONFIGURATION);
|
||||
|
@ -128,9 +128,10 @@ public final class ClientConfigurationNetworkAddon extends ClientCommonNetworkAd
|
|||
return (ChannelInfoHolder) ((ClientCommonNetworkHandlerAccessor) handler).getConnection();
|
||||
}
|
||||
|
||||
private record ContextImpl(MinecraftClient client, PacketSender responseSender) implements ClientConfigurationNetworking.Context {
|
||||
private record ContextImpl(MinecraftClient client, ClientConfigurationNetworkHandler networkHandler, PacketSender responseSender) implements ClientConfigurationNetworking.Context {
|
||||
private ContextImpl {
|
||||
Objects.requireNonNull(client, "client");
|
||||
Objects.requireNonNull(networkHandler, "networkHandler");
|
||||
Objects.requireNonNull(responseSender, "responseSender");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -138,6 +138,11 @@ public class CommonPacketTests {
|
|||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ClientConfigurationNetworkHandler networkHandler() {
|
||||
return clientNetworkHandler;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PacketSender responseSender() {
|
||||
return packetSender;
|
||||
|
|
Loading…
Reference in a new issue