private ArchiveFileInfo CreateAfi(Stream stream, int index, BlnSubEntry entry) { // Every file not compressed with the headered Spike Chunsoft compression, is compressed headerless var compressionMagic = PeekInt32LittleEndian(stream); if (compressionMagic != 0xa755aafc) { return(new BlnSubArchiveFileInfo(stream, CreateFileName(index, stream, false), entry, Kompression.Implementations.Compressions.SpikeChunsoftHeaderless, SpikeChunsoftHeaderlessDecoder.CalculateDecompressedSize(stream))); } stream.Position = 0; return(new BlnSubArchiveFileInfo(stream, CreateFileName(index, stream, true), entry, Kompression.Implementations.Compressions.SpikeChunsoft, PeekDecompressedSize(stream))); }
public SpikeChunsoftDecoder() { _decoder = new SpikeChunsoftHeaderlessDecoder(); }