类 ServerLoginNetworkHandler

  • 所有已实现的接口:
    PacketListener, ServerLoginPacketListener

    public class ServerLoginNetworkHandler
    extends Object
    implements ServerLoginPacketListener
    The server login network handler.

    It listens to packets on the netty event loop and is ticked on the server thread simultaneously.

    Implementation Requirements:
    The vanilla implementation is created by a handshake network handler. It first receives a hello packet from the client. If it's in online mode, it goes through an additional authentication process. Then it optionally sends a network compression packet next. Finally, when it can accept the player (no player UUID conflicts), it will accept the player by sending a login success packet and then transitions the connection's packet listener to a server play network handler.
    Mappings:
    Namespace Name
    official acd
    intermediary net/minecraft/class_3248
    named net/minecraft/server/network/ServerLoginNetworkHandler
    • 字段详细资料

      • NEXT_AUTHENTICATOR_THREAD_ID

        private static final AtomicInteger NEXT_AUTHENTICATOR_THREAD_ID
        Mappings:
        Namespace Name Mixin selector
        official b Lacd;b:Ljava/util/concurrent/atomic/AtomicInteger;
        intermediary field_14157 Lnet/minecraft/class_3248;field_14157:Ljava/util/concurrent/atomic/AtomicInteger;
        named NEXT_AUTHENTICATOR_THREAD_ID Lnet/minecraft/server/network/ServerLoginNetworkHandler;NEXT_AUTHENTICATOR_THREAD_ID:Ljava/util/concurrent/atomic/AtomicInteger;
      • LOGGER

        private static final Logger LOGGER
        Mappings:
        Namespace Name Mixin selector
        official c Lacd;c:Lorg/apache/logging/log4j/Logger;
        intermediary field_14166 Lnet/minecraft/class_3248;field_14166:Lorg/apache/logging/log4j/Logger;
        named LOGGER Lnet/minecraft/server/network/ServerLoginNetworkHandler;LOGGER:Lorg/apache/logging/log4j/Logger;
      • field_29779

        private static final int field_29779
        另请参阅:
        常量字段值
        Mappings:
        Namespace Name Mixin selector
        official d Lacd;d:I
        intermediary field_29779 Lnet/minecraft/class_3248;field_29779:I
        named field_29779 Lnet/minecraft/server/network/ServerLoginNetworkHandler;field_29779:I
      • RANDOM

        private static final Random RANDOM
        Mappings:
        Namespace Name Mixin selector
        official e Lacd;e:Ljava/util/Random;
        intermediary field_14164 Lnet/minecraft/class_3248;field_14164:Ljava/util/Random;
        named RANDOM Lnet/minecraft/server/network/ServerLoginNetworkHandler;RANDOM:Ljava/util/Random;
      • nonce

        private final byte[] nonce
        Mappings:
        Namespace Name Mixin selector
        official f Lacd;f:[B
        intermediary field_14167 Lnet/minecraft/class_3248;field_14167:[B
        named nonce Lnet/minecraft/server/network/ServerLoginNetworkHandler;nonce:[B
      • server

        private final MinecraftServer server
        Mappings:
        Namespace Name Mixin selector
        official g Lacd;g:Lnet/minecraft/server/MinecraftServer;
        intermediary field_14162 Lnet/minecraft/class_3248;field_14162:Lnet/minecraft/server/MinecraftServer;
        named server Lnet/minecraft/server/network/ServerLoginNetworkHandler;server:Lnet/minecraft/server/MinecraftServer;
      • connection

        public final ClientConnection connection
        Mappings:
        Namespace Name Mixin selector
        official a Lacd;a:Lnz;
        intermediary field_14158 Lnet/minecraft/class_3248;field_14158:Lnet/minecraft/class_2535;
        named connection Lnet/minecraft/server/network/ServerLoginNetworkHandler;connection:Lnet/minecraft/network/ClientConnection;
      • state

        private ServerLoginNetworkHandler.State state
        Mappings:
        Namespace Name Mixin selector
        official h Lacd;h:Lacd$a;
        intermediary field_14163 Lnet/minecraft/class_3248;field_14163:Lnet/minecraft/class_3248$class_3249;
        named state Lnet/minecraft/server/network/ServerLoginNetworkHandler;state:Lnet/minecraft/server/network/ServerLoginNetworkHandler$State;
      • loginTicks

        private int loginTicks
        Mappings:
        Namespace Name Mixin selector
        official i Lacd;i:I
        intermediary field_14156 Lnet/minecraft/class_3248;field_14156:I
        named loginTicks Lnet/minecraft/server/network/ServerLoginNetworkHandler;loginTicks:I
      • profile

        @Nullable
        private @Nullable com.mojang.authlib.GameProfile profile
        Mappings:
        Namespace Name Mixin selector
        official j Lacd;j:Lcom/mojang/authlib/GameProfile;
        intermediary field_14160 Lnet/minecraft/class_3248;field_14160:Lcom/mojang/authlib/GameProfile;
        named profile Lnet/minecraft/server/network/ServerLoginNetworkHandler;profile:Lcom/mojang/authlib/GameProfile;
      • serverId

        private final String serverId
        另请参阅:
        常量字段值
        Mappings:
        Namespace Name Mixin selector
        official k Lacd;k:Ljava/lang/String;
        intermediary field_14165 Lnet/minecraft/class_3248;field_14165:Ljava/lang/String;
        named serverId Lnet/minecraft/server/network/ServerLoginNetworkHandler;serverId:Ljava/lang/String;
      • delayedPlayer

        @Nullable
        private @Nullable ServerPlayerEntity delayedPlayer
        The delayed player, waiting to join the server once the existing player with the same UUID is gone.

        This will only be non-null if the state is delay-accept, and is reset to null once the player is accepted.

        Mappings:
        Namespace Name Mixin selector
        official l Lacd;l:Labk;
        intermediary field_14161 Lnet/minecraft/class_3248;field_14161:Lnet/minecraft/class_3222;
        named delayedPlayer Lnet/minecraft/server/network/ServerLoginNetworkHandler;delayedPlayer:Lnet/minecraft/server/network/ServerPlayerEntity;
    • 构造器详细资料

      • ServerLoginNetworkHandler

        public ServerLoginNetworkHandler​(MinecraftServer server,
                                         ClientConnection connection)
        Mappings:
        Namespace Name Mixin selector
        official <init> Lacd;<init>(Lnet/minecraft/server/MinecraftServer;Lnz;)V
        intermediary <init> Lnet/minecraft/class_3248;<init>(Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2535;)V
        named <init> Lnet/minecraft/server/network/ServerLoginNetworkHandler;<init>(Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/ClientConnection;)V
    • 方法详细资料

      • tick

        public void tick()
        Ticks this login network handler.

        This accepts the player to the server if ready. If the state is delay accept, it checks if the old player with the same UUID is gone and admits the player.

        API Note:
        This should only be called on the server thread.
        Mappings:
        Namespace Name Mixin selector
        official b Lacd;b()V
        intermediary method_18785 Lnet/minecraft/class_3248;method_18785()V
        named tick Lnet/minecraft/server/network/ServerLoginNetworkHandler;tick()V
      • getConnection

        public ClientConnection getConnection()
        Returns the connection this packet listener intends to listen to.
        指定者:
        getConnection 在接口中 PacketListener
        另请参阅:
        ClientConnection.getPacketListener()
        Mappings:
        Namespace Name Mixin selector
        official a Loe;a()Lnz;
        intermediary method_2872 Lnet/minecraft/class_2547;method_2872()Lnet/minecraft/class_2535;
        named getConnection Lnet/minecraft/network/listener/PacketListener;getConnection()Lnet/minecraft/network/ClientConnection;
      • disconnect

        public void disconnect​(Text reason)
        Mappings:
        Namespace Name Mixin selector
        official b Lacd;b(Lon;)V
        intermediary method_14380 Lnet/minecraft/class_3248;method_14380(Lnet/minecraft/class_2561;)V
        named disconnect Lnet/minecraft/server/network/ServerLoginNetworkHandler;disconnect(Lnet/minecraft/text/Text;)V
      • acceptPlayer

        public void acceptPlayer()
        Creates the player to be added to the server and adds it to the server.

        If a player with the same UUID is in the world, it will create the player and transition to the delay accept state.

        API Note:
        This method should only be called on the server thread.
        Mappings:
        Namespace Name Mixin selector
        official c Lacd;c()V
        intermediary method_14384 Lnet/minecraft/class_3248;method_14384()V
        named acceptPlayer Lnet/minecraft/server/network/ServerLoginNetworkHandler;acceptPlayer()V
      • addToServer

        private void addToServer​(ServerPlayerEntity player)
        Mappings:
        Namespace Name Mixin selector
        official a Lacd;a(Labk;)V
        intermediary method_33800 Lnet/minecraft/class_3248;method_33800(Lnet/minecraft/class_3222;)V
        named addToServer Lnet/minecraft/server/network/ServerLoginNetworkHandler;addToServer(Lnet/minecraft/server/network/ServerPlayerEntity;)V
      • onDisconnected

        public void onDisconnected​(Text reason)
        Called when the connection this listener listens to has disconnected. Can be used to display the disconnection reason.
        指定者:
        onDisconnected 在接口中 PacketListener
        参数:
        reason - the reason of disconnection; may be a generic message
        Mappings:
        Namespace Name Mixin selector
        official a Loe;a(Lon;)V
        intermediary method_10839 Lnet/minecraft/class_2547;method_10839(Lnet/minecraft/class_2561;)V
        named onDisconnected Lnet/minecraft/network/listener/PacketListener;onDisconnected(Lnet/minecraft/text/Text;)V
      • getConnectionInfo

        public String getConnectionInfo()
        Mappings:
        Namespace Name Mixin selector
        official d Lacd;d()Ljava/lang/String;
        intermediary method_14383 Lnet/minecraft/class_3248;method_14383()Ljava/lang/String;
        named getConnectionInfo Lnet/minecraft/server/network/ServerLoginNetworkHandler;getConnectionInfo()Ljava/lang/String;
      • onHello

        public void onHello​(LoginHelloC2SPacket packet)
        指定者:
        onHello 在接口中 ServerLoginPacketListener
        Mappings:
        Namespace Name Mixin selector
        official a Lvk;a(Lvm;)V
        intermediary method_12641 Lnet/minecraft/class_2911;method_12641(Lnet/minecraft/class_2915;)V
        named onHello Lnet/minecraft/network/listener/ServerLoginPacketListener;onHello(Lnet/minecraft/network/packet/c2s/login/LoginHelloC2SPacket;)V
      • onKey

        public void onKey​(LoginKeyC2SPacket packet)
        指定者:
        onKey 在接口中 ServerLoginPacketListener
        Mappings:
        Namespace Name Mixin selector
        official a Lvk;a(Lvn;)V
        intermediary method_12642 Lnet/minecraft/class_2911;method_12642(Lnet/minecraft/class_2917;)V
        named onKey Lnet/minecraft/network/listener/ServerLoginPacketListener;onKey(Lnet/minecraft/network/packet/c2s/login/LoginKeyC2SPacket;)V
      • onQueryResponse

        public void onQueryResponse​(LoginQueryResponseC2SPacket packet)
        指定者:
        onQueryResponse 在接口中 ServerLoginPacketListener
        Mappings:
        Namespace Name Mixin selector
        official a Lvk;a(Lvl;)V
        intermediary method_12640 Lnet/minecraft/class_2911;method_12640(Lnet/minecraft/class_2913;)V
        named onQueryResponse Lnet/minecraft/network/listener/ServerLoginPacketListener;onQueryResponse(Lnet/minecraft/network/packet/c2s/login/LoginQueryResponseC2SPacket;)V
      • toOfflineProfile

        protected com.mojang.authlib.GameProfile toOfflineProfile​(com.mojang.authlib.GameProfile profile)
        Mappings:
        Namespace Name Mixin selector
        official a Lacd;a(Lcom/mojang/authlib/GameProfile;)Lcom/mojang/authlib/GameProfile;
        intermediary method_14375 Lnet/minecraft/class_3248;method_14375(Lcom/mojang/authlib/GameProfile;)Lcom/mojang/authlib/GameProfile;
        named toOfflineProfile Lnet/minecraft/server/network/ServerLoginNetworkHandler;toOfflineProfile(Lcom/mojang/authlib/GameProfile;)Lcom/mojang/authlib/GameProfile;