protected override void LoadOrThrow() { base.LoadOrThrow(); Size = new FileInfo(Location).Length; if (Id == PreviousReplayName) { IsNew = true; } if (!SettingsHolder.Drive.TryToLoadReplays) { return; } try { using (var reader = new ReplayReader(Location)) { var version = reader.ReadInt32(); if (version >= 0xe) { reader.ReadBytes(8); WeatherId = reader.ReadString(); TrackId = reader.ReadString(); TrackConfiguration = reader.ReadString(); } else { TrackId = reader.ReadString(); } ErrorIf(TracksManager.Instance.GetWrapperById(TrackId) == null, AcErrorType.Replay_TrackIsMissing, TrackId); CarId = reader.TryToReadNextString(); try { DriverName = reader.ReadString(); reader.ReadInt64(); CarSkinId = reader.ReadString(); } catch (Exception) { // ignored } } ParsedSuccessfully = true; } catch (Exception e) { ParsedSuccessfully = false; throw new AcErrorException(this, AcErrorType.Load_Base, e); } }
protected override void LoadOrThrow() { base.LoadOrThrow(); Size = new FileInfo(Location).Length; if (Id == PreviousReplayName) { IsNew = true; } if (!SettingsHolder.Drive.TryToLoadReplays) return; try { using (var reader = new ReplayReader(Location)) { var version = reader.ReadInt32(); if (version >= 0xe) { reader.ReadBytes(8); WeatherId = reader.ReadString(); TrackId = reader.ReadString(); TrackConfiguration = reader.ReadString(); } else { TrackId = reader.ReadString(); } ErrorIf(TracksManager.Instance.GetWrapperById(TrackId) == null, AcErrorType.Replay_TrackIsMissing, TrackId); CarId = reader.TryToReadNextString(); try { DriverName = reader.ReadString(); reader.ReadInt64(); CarSkinId = reader.ReadString(); } catch (Exception) { // ignored } } ParsedSuccessfully = true; } catch (Exception e) { ParsedSuccessfully = false; throw new AcErrorException(this, AcErrorType.Load_Base, e); } }