From 43d0a498b5a0c6c2bc702793c54c897192d94d20 Mon Sep 17 00:00:00 2001 From: KillzXGaming Date: Wed, 12 Feb 2020 18:24:21 -0500 Subject: [PATCH] WTA : Add support for uncompressed files. --- File_Format_Library/FileFormats/Archives/WTA.cs | 12 +++++++----- File_Format_Library/FileFormats/Layout/Rev/BRLYT.cs | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/File_Format_Library/FileFormats/Archives/WTA.cs b/File_Format_Library/FileFormats/Archives/WTA.cs index f5304947..a64c0be9 100644 --- a/File_Format_Library/FileFormats/Archives/WTA.cs +++ b/File_Format_Library/FileFormats/Archives/WTA.cs @@ -110,12 +110,14 @@ namespace FirstPlugin reader.SeekBegin(dataOffset); for (int i = 0; i < FileCount; i++) { - if (files[i].CompressedSize == 0) - continue; - files[i].FileName = $"File {i}"; files[i].DataOffset = reader.Position; - reader.Seek((int)files[i].CompressedSize); + if (files[i].CompressedSize != 0) + reader.Seek((int)files[i].CompressedSize); + else + reader.Seek((int)files[i].UncompressedSize); + + // Console.WriteLine($"{i} {files[i].DataOffset} {files[i].CompressedSize} {files[i].Alignment}"); if (files[i].Alignment != 0) reader.Align((int)files[i].Alignment); @@ -130,7 +132,7 @@ namespace FirstPlugin reader.SeekBegin(files[i].DataOffset); var data = reader.ReadBytes((int)files[i].CompressedSize); - if (files[i].CompressedSize != files[i].UncompressedSize && data[0] == 0x78 && data[1] == 0x5E) + if (files[i].CompressedSize != 0 && files[i].CompressedSize != files[i].UncompressedSize && data[0] == 0x78 && data[1] == 0x5E) data = STLibraryCompression.ZLIB.Decompress(data); using (var dataReader = new FileReader(data)) diff --git a/File_Format_Library/FileFormats/Layout/Rev/BRLYT.cs b/File_Format_Library/FileFormats/Layout/Rev/BRLYT.cs index df9327a0..a10d503a 100644 --- a/File_Format_Library/FileFormats/Layout/Rev/BRLYT.cs +++ b/File_Format_Library/FileFormats/Layout/Rev/BRLYT.cs @@ -16,7 +16,7 @@ using LayoutBXLYT.Revolution; namespace LayoutBXLYT { - public class BRLYT : IFileFormat, IEditorForm, IConvertableTextFormat + public class BRLYT : IFileFormat, IEditorForm, IConvertableTextFormat, ILeaveOpenOnLoad { public FileType FileType { get; set; } = FileType.Layout;