private void testFilterToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog FD1 = new OpenFileDialog() { Multiselect = true, Filter = "All SL2 Scripts|*.sl2", Title = "Select Scripts to Test" }; if (FD1.ShowDialog() != DialogResult.OK) { return; } byte[] Ori = File.ReadAllBytes(FD1.FileName); SpriteTL TST = new SpriteTL(Ori); byte[] Edt = TST.Export(TST.Import()); SpriteListEditor tst1 = new SpriteListEditor(Ori); SpriteListEditor tst2 = new SpriteListEditor(Edt); System.Diagnostics.Debug.Assert(tst1.Import() == tst2.Import()); string Dir = AppDomain.CurrentDomain.BaseDirectory; File.WriteAllText(Dir + "f1.txt", tst1.Import().Replace("[", "[\n\r").Replace("]", "]\n\r"), System.Text.Encoding.UTF8); File.WriteAllText(Dir + "f2.txt", tst2.Import().Replace("[", "[\n\r").Replace("]", "]\n\r"), System.Text.Encoding.UTF8); }
private void recoveryScriptsToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog FD1 = new OpenFileDialog() { Multiselect = true, Filter = "All SL2 Scripts|*.sl2", Title = "Select Original Scripts to Process" }; FolderBrowserDialog FD2 = new FolderBrowserDialog() { Description = "Select Corrupted Scripts Directory" }; if (FD1.ShowDialog() != DialogResult.OK || FD2.ShowDialog() != DialogResult.OK) { return; } if (!FD2.SelectedPath.EndsWith("\\")) { FD2.SelectedPath += "\\"; } foreach (string f in FD1.FileNames) { string CS = FD2.SelectedPath + Path.GetFileName(f); if (!File.Exists(CS)) { continue; } SpriteListEditor Ori = new SpriteListEditor(File.ReadAllBytes(f)); Ori.Import(); SpriteListEditor Corrupted = new SpriteListEditor(File.ReadAllBytes(CS)); byte[] Result = Ori.Export(Corrupted.Import()); File.WriteAllBytes(CS, Result); } MessageBox.Show("Scripts Restored.", "STGUI", MessageBoxButtons.OK, MessageBoxIcon.Information); }