private async void button24_Click(object sender, EventArgs e) { OpenFileDialog ofd = new OpenFileDialog(); ofd.Filter = "Crash Team Racing BIG file|*.big"; if (ofd.ShowDialog() == DialogResult.OK) { Task load = new Task(() => big = BigFile.FromFile(ofd.FileName)); load.Start(); await load; LoadBig(ofd.FileName); } }
private async void LoadBigFull(string path) { if (!File.Exists(path)) { MessageBox.Show($"File doesn't exist!\r\n{path}"); return; } Task load = new Task(() => big = BigFile.FromFile(path)); load.Start(); await load; LoadBig(path); MessageBox.Show("Done."); }
static void Main(string[] args) { Console.WriteLine( "{0}\r\n{1}\r\n\r\n{2}\r\n", "CTR-tools: BigTool", "Builds and extracts Crash Team Racing BIG files", Meta.GetVersion()); if (args.Length > 0) { Console.WriteLine("Current path: " + Environment.CurrentDirectory); string ext = Path.GetExtension(args[0]).ToLower(); try { BigFile big = BigFile.FromFile(args[0]); if (big.Entries.Count > 0) { switch (ext) { case ".big": big.Export(".\\bigfile"); break; case ".txt": big.Build(".\\bigfile.big"); break; default: Console.WriteLine("{0}: {1}", "Unsupported file", ext); break; } } } catch (Exception ex) { Console.WriteLine("Error: " + ex.Message); } return; } Console.WriteLine( "{0}:\r\n\t{1}: {2}\r\n\t{3}: {4}", "Usage", "Extract example", "bigtool C:\\BIGFILE.BIG", "Build example", "bigtool C:\\BIGFILE.TXT" ); }
static void Main(string[] args) { Console.WriteLine( "{0}\r\n{1}\r\n\r\n{2}\r\n", "CTR-tools: bigtool by DCxDemo*", "Builds and extracts Crash Team Racing BIG files", Meta.GetVersionInfo()); if (args.Length > 0) { Console.WriteLine("Current path: " + Environment.CurrentDirectory); string name = Path.GetFileNameWithoutExtension(args[0]).ToLower(); string ext = Path.GetExtension(args[0]).ToLower(); string bigpath = Path.GetDirectoryName(args[0]); if (!Path.IsPathRooted(args[0])) { bigpath = Environment.CurrentDirectory; if (!File.Exists(Path.Combine(bigpath, args[0]))) { bigpath = bigpath = Meta.BasePath; if (!File.Exists(Path.Combine(bigpath, args[0]))) { Console.WriteLine("Check filename."); return; } } } string path = Path.Combine(bigpath, name); try { BigFile big = BigFile.FromFile(Path.Combine(bigpath, $"{name}{ext}")); if (big.Entries.Count == 0) { Console.WriteLine("No files to process."); return; } switch (ext) { case ".big": big.Extract(path); break; case ".txt": big.Save(Path.Combine(bigpath, $"{name}.big")); break; default: Console.WriteLine($"Unsupported file type: {ext}"); break; } } catch (Exception ex) { Console.WriteLine("Error: " + ex.Message); } return; } Console.WriteLine( "{0}:\r\n\t{1}: {2}\r\n\t{3}: {4}", "Usage", "Extract example", "bigtool C:\\BIGFILE.BIG", "Build example", "bigtool C:\\BIGFILE.TXT" ); }