public static GameSessionLocation DeserializeLengthDelimited(Stream stream) { GameSessionLocation gameSessionLocation = new GameSessionLocation(); GameSessionLocation.DeserializeLengthDelimited(stream, gameSessionLocation); return(gameSessionLocation); }
public static GameSessionInfo Deserialize(Stream stream, GameSessionInfo instance, long limit) { while (limit < 0L || stream.get_Position() < limit) { int num = stream.ReadByte(); if (num == -1) { if (limit >= 0L) { throw new EndOfStreamException(); } return(instance); } else { int num2 = num; if (num2 != 24) { if (num2 != 34) { if (num2 != 40) { if (num2 != 48) { if (num2 != 56) { Key key = ProtocolParser.ReadKey((byte)num, stream); uint field = key.Field; if (field == 0u) { throw new ProtocolBufferException("Invalid field id: 0, something went wrong in the stream"); } ProtocolParser.SkipKey(stream, key); } else { instance.ParentalControlsActive = ProtocolParser.ReadBool(stream); } } else { instance.IsUsingIgr = ProtocolParser.ReadBool(stream); } } else { instance.HasBenefactor = ProtocolParser.ReadBool(stream); } } else if (instance.Location == null) { instance.Location = GameSessionLocation.DeserializeLengthDelimited(stream); } else { GameSessionLocation.DeserializeLengthDelimited(stream, instance.Location); } } else { instance.StartTime = ProtocolParser.ReadUInt32(stream); } } } if (stream.get_Position() == limit) { return(instance); } throw new ProtocolBufferException("Read past max limit"); }