public void HandleMcpeClientToServerHandshake(McpeClientToServerHandshake message)
        {
            IServerManager serverManager = _session.Server.ServerManager;
            IServer        server        = serverManager.GetServer();

            IMcpeMessageHandler messageHandler = server.CreatePlayer(_session, _playerInfo);

            _session.MessageHandler = messageHandler;             // Replace current message handler with real one.

            if (_playerInfo.ProtocolVersion < 111)
            {
                Log.Warn($"Wrong version ({_playerInfo.ProtocolVersion}) of Minecraft. Upgrade to join this server.");
                _session.Disconnect($"Wrong version ({_playerInfo.ProtocolVersion}) of Minecraft. Upgrade to join this server.");
                return;
            }

            if (Config.GetProperty("ForceXBLAuthentication", false) && _playerInfo.CertificateData.ExtraData.Xuid == null)
            {
                Log.Warn($"You must authenticate to XBOX Live to join this server.");
                _session.Disconnect(Config.GetProperty("ForceXBLLogin", "You must authenticate to XBOX Live to join this server."));

                return;
            }

            _session.MessageHandler.HandleMcpeClientToServerHandshake(null);
        }
Esempio n. 2
0
        public void HandleMcpeClientToServerHandshake(McpeClientToServerHandshake message)
        {
            IServerManager serverManager = _session.Server.ServerManager;
            IServer        server        = serverManager.GetServer();

            IMcpeMessageHandler messageHandler = server.CreatePlayer(_session, _playerInfo);

            _session.MessageHandler = messageHandler;             // Replace current message handler with real one.

            _session.MessageHandler.HandleMcpeClientToServerHandshake(null);
        }