예제 #1
0
        public override void OnFinishPacketSent(DataPacket packet)
        {
            switch (packet.Pid())
            {
            case (short)PacketType.S2CValidAccount:
                DataPacket response = null;
                Internet.Get("http://localhost:3000/", "server/all", result =>
                {
                    List <GameServer> servers = JsonConvert.DeserializeObject <List <GameServer> >(result);
                    response = new SendServerListPacket {
                        Servers = servers, User = _user
                    };
                }, error =>
                {
                    response = new LoginErrorResponsePacket {
                        Error = ErrorsType.CouldNotConnectToTheServer
                    };
                });
                SendPacket(response);
                break;

            case (short)PacketType.C2SExit:
                Close();
                break;
            }
            _kickTask.Inactive = 0;
            base.OnFinishPacketSent(packet);
        }
 public void Authenticate(LoginErrorsType type, LoginRequestDataPacket request)
 {
     if (type == LoginErrorsType.NoError)
     {
         server.Log($"[SESSION] [AUTHENTICATE STATUS: {type.ToString()}].");
     }
     else
     {
         LoginErrorResponsePacket packet = new LoginErrorResponsePacket {
             Identifier = 0, Error = type
         };
         SendPacket(packet);
         server.Log($"[SESSION] [AUTHENTICATE STATUS: {type.ToString()}].");
     }
 }
예제 #3
0
 private void Authenticate(ErrorsType type, LoginRequestDataPacket request)
 {
     if (type == ErrorsType.NoError)
     {
         Id = request.Identifier;
         LoginResponsePacket packet = new LoginResponsePacket();
         SendPacket(packet);
         LogFactory.GetLog(server.Name).LogInfo($"[SESSION] [AUTHENTICATE STATUS: {type.ToString()}].");
     }
     else
     {
         LoginErrorResponsePacket packet = new LoginErrorResponsePacket {
             Identifier = 0, Error = type
         };
         SendPacket(packet);
         LogFactory.GetLog(server.Name).LogInfo($"[SESSION] [AUTHENTICATE STATUS: {type.ToString()}].");
     }
 }