private void OnCharacterListResponse(Packet inPacket) { string hash = inPacket.ReadString(); User user = LoginServer.GetUser(hash); if (user != null) { bool online = inPacket.ReadBool(); if (online) { using (Packet outPacket = new Packet(ServerMessages.SelectWorldResult)) { outPacket.WriteByte(); outPacket.WriteByte(inPacket.ReadByte()); outPacket.WriteBytes(inPacket.ReadLeftoverBytes()); user.Client.Send(outPacket); } } else { using (Packet outPacket = new Packet(ServerMessages.SelectWorldResult)) { outPacket.WriteByte(9); user.Client.Send(outPacket); } } } }
private void OnCheckUserLimitResponse(Packet inPacket) { string hash = inPacket.ReadString(); User user = LoginServer.GetUser(hash); if (user != null) { using (Packet outPacket = new Packet(ServerMessages.CheckUserLimitResult)) { outPacket.WriteShort(inPacket.ReadByte()); user.Client.Send(outPacket); } } }
private void OnServerListResponse(Packet inPacket) { string hash = inPacket.ReadString(); User user = LoginServer.GetUser(hash); if (user != null) { using (Packet outPacket = new Packet(ServerMessages.WorldInformation)) { outPacket.WriteBytes(inPacket.ReadLeftoverBytes()); user.Client.Send(outPacket); } } }
private void OnCharacterCreationResponse(Packet inPacket) { string hash = inPacket.ReadString(); User user = LoginServer.GetUser(hash); if (user != null) { using (Packet outPacket = new Packet(ServerMessages.CreateNewCharacterResult)) { outPacket.WriteBool(!inPacket.ReadBool()); outPacket.WriteBytes(inPacket.ReadLeftoverBytes()); user.Client.Send(outPacket); } } }
private void OnMigrateResponse(Packet inPacket) { string hash = inPacket.ReadString(); User user = LoginServer.GetUser(hash); if (user != null) { int characterId = inPacket.ReadInt(); byte[] ip = inPacket.ReadBytes(4); ushort port = inPacket.ReadUShort(); using (Packet outPacket = new Packet(ServerMessages.SelectCharacterResult)) { outPacket.WriteShort(); // NOTE: Status. Otherwise will show error connecting. outPacket.WriteBytes(ip); outPacket.WriteUShort(port); outPacket.WriteInt(characterId); outPacket.WriteByte(); // NOTE: Unknown. outPacket.WriteInt(); // NOTE: Unknown. user.Client.Send(outPacket); } } }