Esempio n. 1
0
        private void ParseGeneric(int version, ReplayReader reader)
        {
            AllowToOverrideTime = false;

            if (version >= 14)
            {
                reader.Skip(8);

                WeatherId = reader.ReadString();

                /*if (!string.IsNullOrWhiteSpace(WeatherId)) {
                 *  ErrorIf(WeatherManager.Instance.GetWrapperById(WeatherId) == null,
                 *          AcErrorType.Replay_WeatherIsMissing, WeatherId);
                 * }*/

                TrackId            = reader.ReadString();
                TrackConfiguration = reader.ReadString();
            }
            else
            {
                TrackId = reader.ReadString();
            }

            CarId = reader.TryToReadNextString();
            try {
                DriverName = reader.ReadString();
                reader.ReadInt64();
                CarSkinId = reader.ReadString();
            } catch (Exception) {
                // ignored
            }
        }
Esempio n. 2
0
        public static ReplayFile ReadFile(string filePath)
        {
            ReplayFile replayFile = new ReplayFile();

            using (_reader = new ReplayReader(File.Open(filePath, FileMode.Open)))
            {
                replayFile.Passed               = true;
                replayFile.Mode                 = _reader.ReadByte();
                replayFile.Version              = _reader.ReadInt32();
                replayFile.BeatmapHash          = _reader.ReadString();
                replayFile.PlayerName           = _reader.ReadString();
                replayFile.ReplayHash           = _reader.ReadString();
                replayFile.Count300             = _reader.ReadUInt16();
                replayFile.Count100             = _reader.ReadUInt16();
                replayFile.Count50              = _reader.ReadUInt16();
                replayFile.CountGeki            = _reader.ReadUInt16();
                replayFile.CountKatu            = _reader.ReadUInt16();
                replayFile.CountMiss            = _reader.ReadUInt16();
                replayFile.Score                = _reader.ReadInt32();
                replayFile.MaxCombo             = _reader.ReadUInt16();
                replayFile.FullCombo            = _reader.ReadBoolean();
                replayFile.UsedMods             = _reader.ReadInt32();
                replayFile.PerformanceGraphData = _reader.ReadString();
                replayFile.ReplayDate           = _reader.ReadDateTime();
                replayFile.Replay               = _reader.ReadByteArray();
                if (replayFile.Version >= 20140721)
                {
                    replayFile.Long0 = _reader.ReadInt64();
                }
            }

            return(replayFile);
        }