private void Read(Stream input) { X360Reader reader = new X360Reader(input, Encoding.Default, true, true); Offset = reader.ReadUInt32(); }
public override void Read(Stream input) { X360Reader reader = new X360Reader(input, Encoding.Default, true, false); uint magicNumber1 = reader.ReadUInt32(); // foxf if (magicNumber1 != FpkMagicNumber) return; ushort magicNumber2 = reader.ReadUInt16(); // pk FpkType = (FpkType) reader.ReadByte(); // ' ' or 'd' Platform = reader.ReadAsciiString(3); uint fileSize = reader.ReadUInt32(); reader.Skip(18); reader.FlipEndian = IsBigEndianPlatform(Platform); UnknownValue = reader.ReadUInt32(); // 2 (4 on some console fpks?) uint fileCount = reader.ReadUInt32(); uint referenceCount = reader.ReadUInt32(); reader.Skip(4); for (int i = 0; i < fileCount; i++) { Entries.Add(FpkEntry.ReadFpkEntry(reader)); } for (int i = 0; i < referenceCount; i++) { References.Add(FpkReference.ReadFpkReference(reader)); } }