public SarcEntry SetupFileEntry(string fullName, byte[] data, string HashName) { SarcEntry sarcEntry = new SarcEntry(); sarcEntry.FileName = fullName; sarcEntry.FileData = data; sarcEntry.HashName = HashName; return(sarcEntry); }
private void SaveFileEntryData(SarcEntry sarc) { string dir = Path.GetDirectoryName(sarc.FullName); if (dir == string.Empty) { sarc.FullName = sarc.Text; } else { sarc.FullName = Path.Combine(dir, sarc.Text); } sarcData.Files.Add(sarc.FullName, sarc.Data); }
private void SaveFileEntryData(SarcEntry sarc) { string dir = Path.GetDirectoryName(sarc.FullName); Console.WriteLine(sarc.FullName); if (dir == string.Empty) { sarc.FullName = sarc.Text; } else { sarc.FullName = dir + "/" + sarc.Text; } Console.WriteLine(sarc.FullName); sarcData.Files.Add(sarc.FullName, sarc.Data); }
public SarcEntry SetupFileEntry(byte[] data, string name, string fullName, string SarchHash) { SarcEntry sarcEntry = new SarcEntry(); sarcEntry.FullName = fullName; sarcEntry.Name = name; sarcEntry.Text = name; sarcEntry.sarc = this; sarcEntry.Data = data; sarcEntry.sarcHash = SarcHash; Console.WriteLine(name); string ext = Path.GetExtension(name); string SarcEx = SARCExt.SARC.GuessFileExtension(data); if (SarcEx == ".bfres" || ext == ".sbfres") { sarcEntry.ImageKey = "bfres"; sarcEntry.SelectedImageKey = "bfres"; } if (SarcEx == ".bntx") { sarcEntry.ImageKey = "bntx"; sarcEntry.SelectedImageKey = "bntx"; } if (SarcEx == ".byaml") { sarcEntry.ImageKey = "byaml"; sarcEntry.SelectedImageKey = "byaml"; } if (SarcEx == ".aamp") { sarcEntry.ImageKey = "aamp"; sarcEntry.SelectedImageKey = "aamp"; } return(sarcEntry); }
public static TreeNode OpenFile(string FileName, byte[] data, SarcEntry sarcEntry, bool Compressed = false, CompressionType CompType = 0) { Cursor.Current = Cursors.WaitCursor; FileReader fileReader = new FileReader(data); string Magic4 = fileReader.ReadMagic(0, 4); string Magic2 = fileReader.ReadMagic(0, 2); if (Magic4 == "Yaz0") { data = EveryFileExplorer.YAZ0.Decompress(data); return(OpenFile(FileName, data, sarcEntry, true, (CompressionType)1)); } if (Magic4 == "ZLIB") { data = FileReader.InflateZLIB(fileReader.getSection(64, data.Length - 64)); return(OpenFile(FileName, data, sarcEntry, true, (CompressionType)2)); } fileReader.Dispose(); fileReader.Close(); foreach (IFileFormat fileFormat in FileManager.GetFileFormats()) { if (fileFormat.Magic == Magic4 || fileFormat.Magic == Magic2) { fileFormat.CompressionType = CompType; fileFormat.FileIsCompressed = Compressed; fileFormat.Data = data; fileFormat.Load(); fileFormat.FileName = Path.GetFileName(FileName); fileFormat.FilePath = FileName; fileFormat.IFileInfo = new IFileInfo(); fileFormat.IFileInfo.ArchiveHash = sarcEntry.sarcHash; fileFormat.IFileInfo.InArchive = true; if (fileFormat.EditorRoot == null) { return(null); } fileFormat.EditorRoot.ImageKey = sarcEntry.ImageKey; fileFormat.EditorRoot.SelectedImageKey = sarcEntry.SelectedImageKey; fileFormat.EditorRoot.Text = sarcEntry.Text; return(fileFormat.EditorRoot); } if (fileFormat.Magic == string.Empty) { foreach (string str3 in fileFormat.Extension) { if (str3.Remove(0, 1) == Path.GetExtension(FileName)) { fileFormat.Data = data; fileFormat.Load(); fileFormat.FileName = Path.GetFileName(FileName); fileFormat.FilePath = FileName; fileFormat.IFileInfo = new IFileInfo(); fileFormat.IFileInfo.ArchiveHash = sarcEntry.sarcHash; fileFormat.IFileInfo.InArchive = true; if (fileFormat.EditorRoot == null) { return(null); } fileFormat.EditorRoot.ImageKey = sarcEntry.ImageKey; fileFormat.EditorRoot.SelectedImageKey = sarcEntry.SelectedImageKey; fileFormat.EditorRoot.Text = sarcEntry.Text; return(fileFormat.EditorRoot); } } } } return((TreeNode)null); }