private void clearEmbeddedFilename() { this._embeddedFilename = null; if (this._fileFullNameKey.Checksum == 0) { this._fileFullNameKey = EmbeddedFilenameKey; } this._embeddedFilenameKey = new QbKey(0); this._flags &= ~PakEntryFlags.HasEmbeddedFilename; }
internal PakEntry(PakArchive sourceArchive) { this.sourceArchive = sourceArchive; FileType = new QbKey(0); HeaderOffset = 0; FileOffsetRelative = 0; FileLength = 0; EmbeddedFilenameKey = new QbKey(0); FileFullNameKey = new QbKey(0); FileShortNameKey = new QbKey(0); Unknown = 0; this._flags = 0; this._embeddedFilename = null; }
private void ReadHeader() { using (EndianBinaryReader br = new EndianBinaryReader( EndianBitConverter.Big, new NonClosingStreamWrapper(pakStream))) { PakEntry entry; QbKey lastKey = new QbKey(".last"); do { entry = PakEntry.ParseHeader(br, this); this.entries.Add(entry); }while (!entry.FileType.Equals(lastKey)); this.entries.RemoveAt(this.entries.Count - 1); this.terminator = entry; } }