#3848: Add support for showing dialogs in configuration state
Co-authored-by: Outfluencer <git@outfluencer.dev>
This commit is contained in:
parent
3cd530f007
commit
d5bcabdc60
@ -45,6 +45,7 @@ import net.md_5.bungee.protocol.packet.ServerData;
|
||||
import net.md_5.bungee.protocol.packet.ServerLinks;
|
||||
import net.md_5.bungee.protocol.packet.SetCompression;
|
||||
import net.md_5.bungee.protocol.packet.ShowDialog;
|
||||
import net.md_5.bungee.protocol.packet.ShowDialogDirect;
|
||||
import net.md_5.bungee.protocol.packet.StartConfiguration;
|
||||
import net.md_5.bungee.protocol.packet.StatusRequest;
|
||||
import net.md_5.bungee.protocol.packet.StatusResponse;
|
||||
@ -287,6 +288,10 @@ public abstract class AbstractPacketHandler
|
||||
{
|
||||
}
|
||||
|
||||
public void handle(ShowDialogDirect showDialogDirect) throws Exception
|
||||
{
|
||||
}
|
||||
|
||||
public void handle(ClearDialog clearDialog) throws Exception
|
||||
{
|
||||
}
|
||||
|
@ -51,6 +51,7 @@ import net.md_5.bungee.protocol.packet.ServerData;
|
||||
import net.md_5.bungee.protocol.packet.ServerLinks;
|
||||
import net.md_5.bungee.protocol.packet.SetCompression;
|
||||
import net.md_5.bungee.protocol.packet.ShowDialog;
|
||||
import net.md_5.bungee.protocol.packet.ShowDialogDirect;
|
||||
import net.md_5.bungee.protocol.packet.StartConfiguration;
|
||||
import net.md_5.bungee.protocol.packet.StatusRequest;
|
||||
import net.md_5.bungee.protocol.packet.StatusResponse;
|
||||
@ -857,6 +858,16 @@ public enum Protocol
|
||||
ServerLinks::new,
|
||||
map( ProtocolConstants.MINECRAFT_1_21, 0x10 )
|
||||
);
|
||||
TO_CLIENT.registerPacket(
|
||||
ClearDialog.class,
|
||||
ClearDialog::new,
|
||||
map( ProtocolConstants.MINECRAFT_1_21_6, 0x11 )
|
||||
);
|
||||
TO_CLIENT.registerPacket(
|
||||
ShowDialogDirect.class,
|
||||
ShowDialogDirect::new,
|
||||
map( ProtocolConstants.MINECRAFT_1_21_6, 0x12 )
|
||||
);
|
||||
|
||||
TO_SERVER.registerPacket(
|
||||
ClientSettings.class,
|
||||
|
@ -62,6 +62,7 @@ import net.md_5.bungee.protocol.packet.PlayerListHeaderFooter;
|
||||
import net.md_5.bungee.protocol.packet.PluginMessage;
|
||||
import net.md_5.bungee.protocol.packet.SetCompression;
|
||||
import net.md_5.bungee.protocol.packet.ShowDialog;
|
||||
import net.md_5.bungee.protocol.packet.ShowDialogDirect;
|
||||
import net.md_5.bungee.protocol.packet.StoreCookie;
|
||||
import net.md_5.bungee.protocol.packet.SystemChat;
|
||||
import net.md_5.bungee.protocol.packet.Transfer;
|
||||
@ -851,6 +852,12 @@ public final class UserConnection implements ProxiedPlayer
|
||||
{
|
||||
Preconditions.checkState( getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_21_6, "Dialogs are only supported in 1.21.6 and above" );
|
||||
|
||||
if ( ch.getEncodeProtocol() == Protocol.CONFIGURATION )
|
||||
{
|
||||
unsafe.sendPacket( new ShowDialogDirect( dialog ) );
|
||||
return;
|
||||
}
|
||||
|
||||
unsafe.sendPacket( new ShowDialog( Either.right( dialog ) ) );
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user