public PakFileReader(Stream stream, bool caseSensitive = true) { Stream = stream; CaseSensitive = caseSensitive; Reader = new BinaryReader(stream, Encoding.Default, true); stream.Seek(-FPakInfo.SERIALIZED_SIZE, SeekOrigin.End); Info = new FPakInfo(Reader); }
public PakFileReader(FArchive Ar) : base(Ar.Name, Ar.Game, Ar.Ver) { this.Ar = Ar; Length = Ar.Length; Info = FPakInfo.ReadFPakInfo(Ar); if (Info.Version > EPakFileVersion.PakFile_Version_Latest) { log.Warning($"Pak file \"{Name}\" has unsupported version {(int) Info.Version}"); } }
public PakFileReader(string path, Stream stream, bool caseSensitive = true) { FileName = Path.GetFileName(path); Stream = stream; CaseSensitive = caseSensitive; Reader = new BinaryReader(stream, Encoding.Default, true); Info = new FPakInfo().ReadPakInfo(Reader); Stream.Position = Info.IndexOffset; MountArray = Reader.ReadBytes(128); }