Upload 3.0-alpha-201019r1 source code

modified:   Sonic '06 Toolkit.sln
	new file:   Sonic-06-Toolkit/App.config
	renamed:    Sonic '06 Toolkit/Properties/AssemblyInfo.cs -> Sonic-06-Toolkit/Properties/AssemblyInfo.cs
	new file:   Sonic-06-Toolkit/Properties/Resources.Designer.cs
	new file:   Sonic-06-Toolkit/Properties/Resources.resx
	new file:   Sonic-06-Toolkit/Properties/Settings.Designer.cs
	new file:   Sonic-06-Toolkit/Properties/Settings.settings
	new file:   Sonic-06-Toolkit/Sonic '06 Toolkit.csproj
	new file:   Sonic-06-Toolkit/packages.config
	renamed:    Sonic '06 Toolkit/Resources/HedgeLib.dll -> Sonic-06-Toolkit/res/HedgeLib.dll
	renamed:    Sonic '06 Toolkit/Resources/logo_main.png -> Sonic-06-Toolkit/res/logo_main.png
	renamed:    Sonic '06 Toolkit/Resources/logo_main_icon.ico -> Sonic-06-Toolkit/res/logo_main_icon.ico
	renamed:    Sonic '06 Toolkit/Resources/repack.exe -> Sonic-06-Toolkit/res/repack.exe
	renamed:    Sonic '06 Toolkit/Resources/unpack.exe -> Sonic-06-Toolkit/res/unpack.exe
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitEnvironment.Designer.cs
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitEnvironment.cs
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitEnvironment.resx
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitProgram.cs
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitSessionLog.Designer.cs
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitSessionLog.cs
	renamed:    Sonic '06 Toolkit/Forms/Updater.resx -> Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitSessionLog.resx
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitTabControl.cs
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitText.cs
	new file:   Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitTools.cs
	renamed:    Sonic '06 Toolkit/Forms/Studios/SET Studio.Designer.cs -> Sonic-06-Toolkit/src/Tools/HedgeLib/PlacementConverter.Designer.cs
	new file:   Sonic-06-Toolkit/src/Tools/HedgeLib/PlacementConverter.cs
	renamed:    Sonic '06 Toolkit/Forms/Studios/SET Studio.resx -> Sonic-06-Toolkit/src/Tools/HedgeLib/PlacementConverter.resx
	new file:   Sonic-06-Toolkit/src/Tools/XISOExtractor/EndianConverter.cs
	new file:   Sonic-06-Toolkit/src/Tools/XISOExtractor/EventArg.cs
	new file:   Sonic-06-Toolkit/src/Tools/XISOExtractor/SfvGenerator.cs
	new file:   Sonic-06-Toolkit/src/Tools/XISOExtractor/Utils.cs
	new file:   Sonic-06-Toolkit/src/Tools/XISOExtractor/XISOExtractor.cs
This commit is contained in:
HyperPolygon64 2019-10-20 19:26:26 +01:00
parent c2a1fe6a85
commit 22051a6abf
139 changed files with 12526 additions and 106491 deletions

View File

@ -1,9 +1,9 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.28803.156
VisualStudioVersion = 16.0.29409.12
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sonic '06 Toolkit", "Sonic '06 Toolkit\Sonic '06 Toolkit.csproj", "{759AF035-14B4-4177-BC0D-073DF098725B}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sonic-06-Toolkit", "Sonic-06-Toolkit\Sonic '06 Toolkit.csproj", "{9D283F82-DD54-44B8-867A-5384CE6AEDC5}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -11,15 +11,15 @@ Global
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{759AF035-14B4-4177-BC0D-073DF098725B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{759AF035-14B4-4177-BC0D-073DF098725B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{759AF035-14B4-4177-BC0D-073DF098725B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{759AF035-14B4-4177-BC0D-073DF098725B}.Release|Any CPU.Build.0 = Release|Any CPU
{9D283F82-DD54-44B8-867A-5384CE6AEDC5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9D283F82-DD54-44B8-867A-5384CE6AEDC5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9D283F82-DD54-44B8-867A-5384CE6AEDC5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9D283F82-DD54-44B8-867A-5384CE6AEDC5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {F1A17A6E-C564-4F4C-A32E-7BA54A432253}
SolutionGuid = {386EE09A-A0E1-437D-AAF2-9AEE877637D1}
EndGlobalSection
EndGlobal

View File

@ -1,897 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class About
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(About));
this.lbl_Title = new System.Windows.Forms.Label();
this.lbl_Subtitle = new System.Windows.Forms.Label();
this.lbl_versionNumber = new System.Windows.Forms.Label();
this.lbl_Description = new System.Windows.Forms.Label();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.tab_Information = new System.Windows.Forms.TabControl();
this.page_About = new System.Windows.Forms.TabPage();
this.btn_GitHub = new System.Windows.Forms.Button();
this.page_History = new System.Windows.Forms.TabPage();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.tabPage3 = new System.Windows.Forms.TabPage();
this.tabControl2 = new System.Windows.Forms.TabControl();
this.tabPage7 = new System.Windows.Forms.TabPage();
this.richTextBox4 = new System.Windows.Forms.RichTextBox();
this.tabPage4 = new System.Windows.Forms.TabPage();
this.tabControl5 = new System.Windows.Forms.TabControl();
this.tabPage15 = new System.Windows.Forms.TabPage();
this.tabControl6 = new System.Windows.Forms.TabControl();
this.tabPage17 = new System.Windows.Forms.TabPage();
this.richTextBox3 = new System.Windows.Forms.RichTextBox();
this.tabPage18 = new System.Windows.Forms.TabPage();
this.richTextBox13 = new System.Windows.Forms.RichTextBox();
this.tabPage16 = new System.Windows.Forms.TabPage();
this.tabControl7 = new System.Windows.Forms.TabControl();
this.tabPage19 = new System.Windows.Forms.TabPage();
this.richTextBox12 = new System.Windows.Forms.RichTextBox();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.richTextBox5 = new System.Windows.Forms.RichTextBox();
this.tabPage5 = new System.Windows.Forms.TabPage();
this.tabControl3 = new System.Windows.Forms.TabControl();
this.tabPage11 = new System.Windows.Forms.TabPage();
this.richTextBox10 = new System.Windows.Forms.RichTextBox();
this.tabPage12 = new System.Windows.Forms.TabPage();
this.tabControl4 = new System.Windows.Forms.TabControl();
this.tabPage13 = new System.Windows.Forms.TabPage();
this.richTextBox6 = new System.Windows.Forms.RichTextBox();
this.tabPage14 = new System.Windows.Forms.TabPage();
this.richTextBox11 = new System.Windows.Forms.RichTextBox();
this.tabPage20 = new System.Windows.Forms.TabPage();
this.richTextBox14 = new System.Windows.Forms.RichTextBox();
this.tabPage9 = new System.Windows.Forms.TabPage();
this.richTextBox8 = new System.Windows.Forms.RichTextBox();
this.tabPage8 = new System.Windows.Forms.TabPage();
this.richTextBox7 = new System.Windows.Forms.RichTextBox();
this.tabPage21 = new System.Windows.Forms.TabPage();
this.richTextBox15 = new System.Windows.Forms.RichTextBox();
this.tabPage10 = new System.Windows.Forms.TabPage();
this.richTextBox9 = new System.Windows.Forms.RichTextBox();
this.tabPage22 = new System.Windows.Forms.TabPage();
this.richTextBox16 = new System.Windows.Forms.RichTextBox();
this.tabPage23 = new System.Windows.Forms.TabPage();
this.richTextBox17 = new System.Windows.Forms.RichTextBox();
this.tabPage6 = new System.Windows.Forms.TabPage();
this.web_Credits = new System.Windows.Forms.WebBrowser();
this.tabPage24 = new System.Windows.Forms.TabPage();
this.richTextBox2 = new System.Windows.Forms.RichTextBox();
this.tabControl1.SuspendLayout();
this.tabPage1.SuspendLayout();
this.tab_Information.SuspendLayout();
this.page_About.SuspendLayout();
this.page_History.SuspendLayout();
this.tabPage3.SuspendLayout();
this.tabControl2.SuspendLayout();
this.tabPage7.SuspendLayout();
this.tabPage4.SuspendLayout();
this.tabControl5.SuspendLayout();
this.tabPage15.SuspendLayout();
this.tabControl6.SuspendLayout();
this.tabPage17.SuspendLayout();
this.tabPage18.SuspendLayout();
this.tabPage16.SuspendLayout();
this.tabControl7.SuspendLayout();
this.tabPage19.SuspendLayout();
this.tabPage2.SuspendLayout();
this.tabPage5.SuspendLayout();
this.tabControl3.SuspendLayout();
this.tabPage11.SuspendLayout();
this.tabPage12.SuspendLayout();
this.tabControl4.SuspendLayout();
this.tabPage13.SuspendLayout();
this.tabPage14.SuspendLayout();
this.tabPage20.SuspendLayout();
this.tabPage9.SuspendLayout();
this.tabPage8.SuspendLayout();
this.tabPage21.SuspendLayout();
this.tabPage10.SuspendLayout();
this.tabPage22.SuspendLayout();
this.tabPage23.SuspendLayout();
this.tabPage6.SuspendLayout();
this.tabPage24.SuspendLayout();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.Location = new System.Drawing.Point(10, 9);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(293, 47);
this.lbl_Title.TabIndex = 0;
this.lbl_Title.Text = "Sonic \'06 Toolkit";
this.lbl_Title.Click += new System.EventHandler(this.Lbl_Title_Click);
//
// lbl_Subtitle
//
this.lbl_Subtitle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_Subtitle.AutoSize = true;
this.lbl_Subtitle.Font = new System.Drawing.Font("Segoe UI", 18F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Subtitle.Location = new System.Drawing.Point(431, 8);
this.lbl_Subtitle.Name = "lbl_Subtitle";
this.lbl_Subtitle.Size = new System.Drawing.Size(129, 32);
this.lbl_Subtitle.TabIndex = 1;
this.lbl_Subtitle.Text = "C# Version";
//
// lbl_versionNumber
//
this.lbl_versionNumber.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_versionNumber.AutoSize = true;
this.lbl_versionNumber.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_versionNumber.Location = new System.Drawing.Point(517, 37);
this.lbl_versionNumber.Name = "lbl_versionNumber";
this.lbl_versionNumber.Size = new System.Drawing.Size(40, 21);
this.lbl_versionNumber.TabIndex = 2;
this.lbl_versionNumber.Text = "0.00";
this.lbl_versionNumber.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// lbl_Description
//
this.lbl_Description.Anchor = System.Windows.Forms.AnchorStyles.None;
this.lbl_Description.AutoSize = true;
this.lbl_Description.BackColor = System.Drawing.Color.Transparent;
this.lbl_Description.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Description.Location = new System.Drawing.Point(90, 80);
this.lbl_Description.Name = "lbl_Description";
this.lbl_Description.Size = new System.Drawing.Size(361, 105);
this.lbl_Description.TabIndex = 3;
this.lbl_Description.Text = "Sonic \'06 Toolkit is an application to help make\r\nmodding easier for SONIC THE HE" +
"DGEHOG (2006)\r\n\r\nThis project is open-source for anyone to step in\r\nand contribu" +
"te to from GitHub.";
this.lbl_Description.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// tabControl1
//
this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.tabControl1.Controls.Add(this.tabPage1);
this.tabControl1.Controls.Add(this.tabPage3);
this.tabControl1.Controls.Add(this.tabPage6);
this.tabControl1.Location = new System.Drawing.Point(3, 65);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(562, 340);
this.tabControl1.TabIndex = 7;
//
// tabPage1
//
this.tabPage1.Controls.Add(this.tab_Information);
this.tabPage1.Location = new System.Drawing.Point(4, 22);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage1.Size = new System.Drawing.Size(554, 314);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = "Information";
this.tabPage1.UseVisualStyleBackColor = true;
//
// tab_Information
//
this.tab_Information.Controls.Add(this.page_About);
this.tab_Information.Controls.Add(this.page_History);
this.tab_Information.Dock = System.Windows.Forms.DockStyle.Fill;
this.tab_Information.Location = new System.Drawing.Point(3, 3);
this.tab_Information.Name = "tab_Information";
this.tab_Information.SelectedIndex = 0;
this.tab_Information.Size = new System.Drawing.Size(548, 308);
this.tab_Information.TabIndex = 4;
//
// page_About
//
this.page_About.Controls.Add(this.btn_GitHub);
this.page_About.Controls.Add(this.lbl_Description);
this.page_About.Location = new System.Drawing.Point(4, 22);
this.page_About.Name = "page_About";
this.page_About.Padding = new System.Windows.Forms.Padding(3);
this.page_About.Size = new System.Drawing.Size(540, 282);
this.page_About.TabIndex = 0;
this.page_About.Text = "About";
this.page_About.UseVisualStyleBackColor = true;
//
// btn_GitHub
//
this.btn_GitHub.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.btn_GitHub.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(156)))), ((int)(((byte)(218)))), ((int)(((byte)(240)))));
this.btn_GitHub.FlatAppearance.BorderSize = 0;
this.btn_GitHub.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_GitHub.Location = new System.Drawing.Point(6, 253);
this.btn_GitHub.Name = "btn_GitHub";
this.btn_GitHub.Size = new System.Drawing.Size(528, 23);
this.btn_GitHub.TabIndex = 5;
this.btn_GitHub.Text = "GitHub";
this.btn_GitHub.UseVisualStyleBackColor = false;
this.btn_GitHub.Click += new System.EventHandler(this.Btn_GitHub_Click_1);
//
// page_History
//
this.page_History.Controls.Add(this.richTextBox1);
this.page_History.Location = new System.Drawing.Point(4, 22);
this.page_History.Name = "page_History";
this.page_History.Size = new System.Drawing.Size(540, 282);
this.page_History.TabIndex = 3;
this.page_History.Text = "History";
this.page_History.UseVisualStyleBackColor = true;
//
// richTextBox1
//
this.richTextBox1.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox1.Location = new System.Drawing.Point(0, 0);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.ReadOnly = true;
this.richTextBox1.Size = new System.Drawing.Size(540, 282);
this.richTextBox1.TabIndex = 1;
this.richTextBox1.Text = resources.GetString("richTextBox1.Text");
//
// tabPage3
//
this.tabPage3.Controls.Add(this.tabControl2);
this.tabPage3.Location = new System.Drawing.Point(4, 22);
this.tabPage3.Name = "tabPage3";
this.tabPage3.Size = new System.Drawing.Size(554, 314);
this.tabPage3.TabIndex = 2;
this.tabPage3.Text = "Legal";
this.tabPage3.UseVisualStyleBackColor = true;
//
// tabControl2
//
this.tabControl2.Controls.Add(this.tabPage7);
this.tabControl2.Controls.Add(this.tabPage4);
this.tabControl2.Controls.Add(this.tabPage2);
this.tabControl2.Controls.Add(this.tabPage5);
this.tabControl2.Controls.Add(this.tabPage20);
this.tabControl2.Controls.Add(this.tabPage9);
this.tabControl2.Controls.Add(this.tabPage8);
this.tabControl2.Controls.Add(this.tabPage21);
this.tabControl2.Controls.Add(this.tabPage10);
this.tabControl2.Controls.Add(this.tabPage22);
this.tabControl2.Controls.Add(this.tabPage23);
this.tabControl2.Controls.Add(this.tabPage24);
this.tabControl2.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl2.Location = new System.Drawing.Point(0, 0);
this.tabControl2.Name = "tabControl2";
this.tabControl2.SelectedIndex = 0;
this.tabControl2.Size = new System.Drawing.Size(554, 314);
this.tabControl2.TabIndex = 5;
//
// tabPage7
//
this.tabPage7.Controls.Add(this.richTextBox4);
this.tabPage7.Location = new System.Drawing.Point(4, 22);
this.tabPage7.Name = "tabPage7";
this.tabPage7.Size = new System.Drawing.Size(546, 288);
this.tabPage7.TabIndex = 5;
this.tabPage7.Text = "Sonic \'06 Toolkit";
this.tabPage7.UseVisualStyleBackColor = true;
//
// richTextBox4
//
this.richTextBox4.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox4.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox4.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox4.Location = new System.Drawing.Point(0, 0);
this.richTextBox4.Name = "richTextBox4";
this.richTextBox4.ReadOnly = true;
this.richTextBox4.Size = new System.Drawing.Size(546, 288);
this.richTextBox4.TabIndex = 5;
this.richTextBox4.Text = resources.GetString("richTextBox4.Text");
//
// tabPage4
//
this.tabPage4.Controls.Add(this.tabControl5);
this.tabPage4.Location = new System.Drawing.Point(4, 22);
this.tabPage4.Name = "tabPage4";
this.tabPage4.Size = new System.Drawing.Size(546, 288);
this.tabPage4.TabIndex = 3;
this.tabPage4.Text = "Sonic \'06 SDK";
this.tabPage4.UseVisualStyleBackColor = true;
//
// tabControl5
//
this.tabControl5.Controls.Add(this.tabPage15);
this.tabControl5.Controls.Add(this.tabPage16);
this.tabControl5.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl5.Location = new System.Drawing.Point(0, 0);
this.tabControl5.Name = "tabControl5";
this.tabControl5.SelectedIndex = 0;
this.tabControl5.Size = new System.Drawing.Size(546, 288);
this.tabControl5.TabIndex = 0;
//
// tabPage15
//
this.tabPage15.Controls.Add(this.tabControl6);
this.tabPage15.Location = new System.Drawing.Point(4, 22);
this.tabPage15.Name = "tabPage15";
this.tabPage15.Padding = new System.Windows.Forms.Padding(3);
this.tabPage15.Size = new System.Drawing.Size(538, 262);
this.tabPage15.TabIndex = 0;
this.tabPage15.Text = "License";
this.tabPage15.UseVisualStyleBackColor = true;
//
// tabControl6
//
this.tabControl6.Controls.Add(this.tabPage17);
this.tabControl6.Controls.Add(this.tabPage18);
this.tabControl6.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl6.Location = new System.Drawing.Point(3, 3);
this.tabControl6.Name = "tabControl6";
this.tabControl6.SelectedIndex = 0;
this.tabControl6.Size = new System.Drawing.Size(532, 256);
this.tabControl6.TabIndex = 0;
//
// tabPage17
//
this.tabPage17.Controls.Add(this.richTextBox3);
this.tabPage17.Location = new System.Drawing.Point(4, 22);
this.tabPage17.Name = "tabPage17";
this.tabPage17.Padding = new System.Windows.Forms.Padding(3);
this.tabPage17.Size = new System.Drawing.Size(524, 230);
this.tabPage17.TabIndex = 0;
this.tabPage17.Text = "Lua";
this.tabPage17.UseVisualStyleBackColor = true;
//
// richTextBox3
//
this.richTextBox3.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox3.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox3.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox3.Location = new System.Drawing.Point(3, 3);
this.richTextBox3.Name = "richTextBox3";
this.richTextBox3.ReadOnly = true;
this.richTextBox3.Size = new System.Drawing.Size(518, 224);
this.richTextBox3.TabIndex = 1;
this.richTextBox3.Text = resources.GetString("richTextBox3.Text");
//
// tabPage18
//
this.tabPage18.Controls.Add(this.richTextBox13);
this.tabPage18.Location = new System.Drawing.Point(4, 22);
this.tabPage18.Name = "tabPage18";
this.tabPage18.Padding = new System.Windows.Forms.Padding(3);
this.tabPage18.Size = new System.Drawing.Size(524, 230);
this.tabPage18.TabIndex = 1;
this.tabPage18.Text = "Java";
this.tabPage18.UseVisualStyleBackColor = true;
//
// richTextBox13
//
this.richTextBox13.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox13.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox13.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox13.Location = new System.Drawing.Point(3, 3);
this.richTextBox13.Name = "richTextBox13";
this.richTextBox13.ReadOnly = true;
this.richTextBox13.Size = new System.Drawing.Size(518, 224);
this.richTextBox13.TabIndex = 2;
this.richTextBox13.Text = resources.GetString("richTextBox13.Text");
//
// tabPage16
//
this.tabPage16.Controls.Add(this.tabControl7);
this.tabPage16.Location = new System.Drawing.Point(4, 22);
this.tabPage16.Name = "tabPage16";
this.tabPage16.Padding = new System.Windows.Forms.Padding(3);
this.tabPage16.Size = new System.Drawing.Size(538, 262);
this.tabPage16.TabIndex = 1;
this.tabPage16.Text = "Copyright";
this.tabPage16.UseVisualStyleBackColor = true;
//
// tabControl7
//
this.tabControl7.Controls.Add(this.tabPage19);
this.tabControl7.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl7.Location = new System.Drawing.Point(3, 3);
this.tabControl7.Name = "tabControl7";
this.tabControl7.SelectedIndex = 0;
this.tabControl7.Size = new System.Drawing.Size(532, 256);
this.tabControl7.TabIndex = 1;
//
// tabPage19
//
this.tabPage19.Controls.Add(this.richTextBox12);
this.tabPage19.Location = new System.Drawing.Point(4, 22);
this.tabPage19.Name = "tabPage19";
this.tabPage19.Padding = new System.Windows.Forms.Padding(3);
this.tabPage19.Size = new System.Drawing.Size(524, 230);
this.tabPage19.TabIndex = 0;
this.tabPage19.Text = "Lua";
this.tabPage19.UseVisualStyleBackColor = true;
//
// richTextBox12
//
this.richTextBox12.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox12.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox12.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox12.Location = new System.Drawing.Point(3, 3);
this.richTextBox12.Name = "richTextBox12";
this.richTextBox12.ReadOnly = true;
this.richTextBox12.Size = new System.Drawing.Size(518, 224);
this.richTextBox12.TabIndex = 2;
this.richTextBox12.Text = resources.GetString("richTextBox12.Text");
//
// tabPage2
//
this.tabPage2.Controls.Add(this.richTextBox5);
this.tabPage2.Location = new System.Drawing.Point(4, 22);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Size = new System.Drawing.Size(546, 288);
this.tabPage2.TabIndex = 6;
this.tabPage2.Text = "xno2dae";
this.tabPage2.UseVisualStyleBackColor = true;
//
// richTextBox5
//
this.richTextBox5.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox5.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox5.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox5.Location = new System.Drawing.Point(0, 0);
this.richTextBox5.Name = "richTextBox5";
this.richTextBox5.ReadOnly = true;
this.richTextBox5.Size = new System.Drawing.Size(546, 288);
this.richTextBox5.TabIndex = 2;
this.richTextBox5.Text = resources.GetString("richTextBox5.Text");
//
// tabPage5
//
this.tabPage5.Controls.Add(this.tabControl3);
this.tabPage5.Location = new System.Drawing.Point(4, 22);
this.tabPage5.Name = "tabPage5";
this.tabPage5.Size = new System.Drawing.Size(546, 288);
this.tabPage5.TabIndex = 7;
this.tabPage5.Text = "SonicAudioTools";
this.tabPage5.UseVisualStyleBackColor = true;
//
// tabControl3
//
this.tabControl3.Controls.Add(this.tabPage11);
this.tabControl3.Controls.Add(this.tabPage12);
this.tabControl3.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl3.Location = new System.Drawing.Point(0, 0);
this.tabControl3.Name = "tabControl3";
this.tabControl3.SelectedIndex = 0;
this.tabControl3.Size = new System.Drawing.Size(546, 288);
this.tabControl3.TabIndex = 4;
//
// tabPage11
//
this.tabPage11.Controls.Add(this.richTextBox10);
this.tabPage11.Location = new System.Drawing.Point(4, 22);
this.tabPage11.Name = "tabPage11";
this.tabPage11.Padding = new System.Windows.Forms.Padding(3);
this.tabPage11.Size = new System.Drawing.Size(538, 262);
this.tabPage11.TabIndex = 0;
this.tabPage11.Text = "License";
this.tabPage11.UseVisualStyleBackColor = true;
//
// richTextBox10
//
this.richTextBox10.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox10.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox10.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox10.Location = new System.Drawing.Point(3, 3);
this.richTextBox10.Name = "richTextBox10";
this.richTextBox10.ReadOnly = true;
this.richTextBox10.Size = new System.Drawing.Size(532, 256);
this.richTextBox10.TabIndex = 6;
this.richTextBox10.Text = resources.GetString("richTextBox10.Text");
//
// tabPage12
//
this.tabPage12.Controls.Add(this.tabControl4);
this.tabPage12.Location = new System.Drawing.Point(4, 22);
this.tabPage12.Name = "tabPage12";
this.tabPage12.Padding = new System.Windows.Forms.Padding(3);
this.tabPage12.Size = new System.Drawing.Size(538, 262);
this.tabPage12.TabIndex = 1;
this.tabPage12.Text = "Copyright";
this.tabPage12.UseVisualStyleBackColor = true;
//
// tabControl4
//
this.tabControl4.Controls.Add(this.tabPage13);
this.tabControl4.Controls.Add(this.tabPage14);
this.tabControl4.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl4.Location = new System.Drawing.Point(3, 3);
this.tabControl4.Name = "tabControl4";
this.tabControl4.SelectedIndex = 0;
this.tabControl4.Size = new System.Drawing.Size(532, 256);
this.tabControl4.TabIndex = 0;
//
// tabPage13
//
this.tabPage13.Controls.Add(this.richTextBox6);
this.tabPage13.Location = new System.Drawing.Point(4, 22);
this.tabPage13.Name = "tabPage13";
this.tabPage13.Padding = new System.Windows.Forms.Padding(3);
this.tabPage13.Size = new System.Drawing.Size(524, 230);
this.tabPage13.TabIndex = 0;
this.tabPage13.Text = "NAudio";
this.tabPage13.UseVisualStyleBackColor = true;
//
// richTextBox6
//
this.richTextBox6.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox6.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox6.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox6.Location = new System.Drawing.Point(3, 3);
this.richTextBox6.Name = "richTextBox6";
this.richTextBox6.ReadOnly = true;
this.richTextBox6.Size = new System.Drawing.Size(518, 224);
this.richTextBox6.TabIndex = 6;
this.richTextBox6.Text = resources.GetString("richTextBox6.Text");
//
// tabPage14
//
this.tabPage14.Controls.Add(this.richTextBox11);
this.tabPage14.Location = new System.Drawing.Point(4, 22);
this.tabPage14.Name = "tabPage14";
this.tabPage14.Padding = new System.Windows.Forms.Padding(3);
this.tabPage14.Size = new System.Drawing.Size(524, 230);
this.tabPage14.TabIndex = 1;
this.tabPage14.Text = "vgmstream";
this.tabPage14.UseVisualStyleBackColor = true;
//
// richTextBox11
//
this.richTextBox11.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox11.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox11.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox11.Location = new System.Drawing.Point(3, 3);
this.richTextBox11.Name = "richTextBox11";
this.richTextBox11.ReadOnly = true;
this.richTextBox11.Size = new System.Drawing.Size(518, 224);
this.richTextBox11.TabIndex = 7;
this.richTextBox11.Text = resources.GetString("richTextBox11.Text");
//
// tabPage20
//
this.tabPage20.Controls.Add(this.richTextBox14);
this.tabPage20.Location = new System.Drawing.Point(4, 22);
this.tabPage20.Name = "tabPage20";
this.tabPage20.Size = new System.Drawing.Size(546, 288);
this.tabPage20.TabIndex = 11;
this.tabPage20.Text = "CRI Atom Encoder";
this.tabPage20.UseVisualStyleBackColor = true;
//
// richTextBox14
//
this.richTextBox14.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox14.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox14.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox14.Location = new System.Drawing.Point(0, 0);
this.richTextBox14.Name = "richTextBox14";
this.richTextBox14.ReadOnly = true;
this.richTextBox14.Size = new System.Drawing.Size(546, 288);
this.richTextBox14.TabIndex = 4;
this.richTextBox14.Text = "CRI Atom Encoder (version 2.07.03) is copyright of CRI Middleware Co.\n\nCopyright " +
"(c) 2009-2016 CRI Middleware Co., Ltd.";
//
// tabPage9
//
this.tabPage9.Controls.Add(this.richTextBox8);
this.tabPage9.Location = new System.Drawing.Point(4, 22);
this.tabPage9.Name = "tabPage9";
this.tabPage9.Size = new System.Drawing.Size(546, 288);
this.tabPage9.TabIndex = 9;
this.tabPage9.Text = "HedgeLib";
this.tabPage9.UseVisualStyleBackColor = true;
//
// richTextBox8
//
this.richTextBox8.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox8.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox8.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox8.Location = new System.Drawing.Point(0, 0);
this.richTextBox8.Name = "richTextBox8";
this.richTextBox8.ReadOnly = true;
this.richTextBox8.Size = new System.Drawing.Size(546, 288);
this.richTextBox8.TabIndex = 4;
this.richTextBox8.Text = resources.GetString("richTextBox8.Text");
//
// tabPage8
//
this.tabPage8.Controls.Add(this.richTextBox7);
this.tabPage8.Location = new System.Drawing.Point(4, 22);
this.tabPage8.Name = "tabPage8";
this.tabPage8.Size = new System.Drawing.Size(546, 288);
this.tabPage8.TabIndex = 8;
this.tabPage8.Text = "extract-xiso";
this.tabPage8.UseVisualStyleBackColor = true;
//
// richTextBox7
//
this.richTextBox7.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox7.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox7.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox7.Location = new System.Drawing.Point(0, 0);
this.richTextBox7.Name = "richTextBox7";
this.richTextBox7.ReadOnly = true;
this.richTextBox7.Size = new System.Drawing.Size(546, 288);
this.richTextBox7.TabIndex = 4;
this.richTextBox7.Text = resources.GetString("richTextBox7.Text");
//
// tabPage21
//
this.tabPage21.Controls.Add(this.richTextBox15);
this.tabPage21.Location = new System.Drawing.Point(4, 22);
this.tabPage21.Name = "tabPage21";
this.tabPage21.Size = new System.Drawing.Size(546, 288);
this.tabPage21.TabIndex = 12;
this.tabPage21.Text = "ATRAC3plus Codec TOOL";
this.tabPage21.UseVisualStyleBackColor = true;
//
// richTextBox15
//
this.richTextBox15.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox15.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox15.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox15.Location = new System.Drawing.Point(0, 0);
this.richTextBox15.Name = "richTextBox15";
this.richTextBox15.ReadOnly = true;
this.richTextBox15.Size = new System.Drawing.Size(546, 288);
this.richTextBox15.TabIndex = 4;
this.richTextBox15.Text = resources.GetString("richTextBox15.Text");
//
// tabPage10
//
this.tabPage10.Controls.Add(this.richTextBox9);
this.tabPage10.Location = new System.Drawing.Point(4, 22);
this.tabPage10.Name = "tabPage10";
this.tabPage10.Size = new System.Drawing.Size(546, 288);
this.tabPage10.TabIndex = 10;
this.tabPage10.Text = "mst06";
this.tabPage10.UseVisualStyleBackColor = true;
//
// richTextBox9
//
this.richTextBox9.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox9.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox9.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox9.Location = new System.Drawing.Point(0, 0);
this.richTextBox9.Name = "richTextBox9";
this.richTextBox9.ReadOnly = true;
this.richTextBox9.Size = new System.Drawing.Size(546, 288);
this.richTextBox9.TabIndex = 3;
this.richTextBox9.Text = resources.GetString("richTextBox9.Text");
//
// tabPage22
//
this.tabPage22.Controls.Add(this.richTextBox16);
this.tabPage22.Location = new System.Drawing.Point(4, 22);
this.tabPage22.Name = "tabPage22";
this.tabPage22.Size = new System.Drawing.Size(546, 288);
this.tabPage22.TabIndex = 13;
this.tabPage22.Text = "XMA Encode 2008";
this.tabPage22.UseVisualStyleBackColor = true;
//
// richTextBox16
//
this.richTextBox16.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox16.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox16.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox16.Location = new System.Drawing.Point(0, 0);
this.richTextBox16.Name = "richTextBox16";
this.richTextBox16.ReadOnly = true;
this.richTextBox16.Size = new System.Drawing.Size(546, 288);
this.richTextBox16.TabIndex = 5;
this.richTextBox16.Text = "XMA Encode 2008 is copyright of Microsoft Corporation.\n\nCopyright (c) 2008 Micros" +
"oft Corporation.";
//
// tabPage23
//
this.tabPage23.Controls.Add(this.richTextBox17);
this.tabPage23.Location = new System.Drawing.Point(4, 22);
this.tabPage23.Name = "tabPage23";
this.tabPage23.Size = new System.Drawing.Size(546, 288);
this.tabPage23.TabIndex = 14;
this.tabPage23.Text = "libgens-sonicglvl";
this.tabPage23.UseVisualStyleBackColor = true;
//
// richTextBox17
//
this.richTextBox17.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox17.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox17.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox17.Location = new System.Drawing.Point(0, 0);
this.richTextBox17.Name = "richTextBox17";
this.richTextBox17.ReadOnly = true;
this.richTextBox17.Size = new System.Drawing.Size(546, 288);
this.richTextBox17.TabIndex = 6;
this.richTextBox17.Text = resources.GetString("richTextBox17.Text");
//
// tabPage6
//
this.tabPage6.Controls.Add(this.web_Credits);
this.tabPage6.Location = new System.Drawing.Point(4, 22);
this.tabPage6.Name = "tabPage6";
this.tabPage6.Size = new System.Drawing.Size(554, 314);
this.tabPage6.TabIndex = 3;
this.tabPage6.Text = "Credits";
this.tabPage6.UseVisualStyleBackColor = true;
//
// web_Credits
//
this.web_Credits.Dock = System.Windows.Forms.DockStyle.Fill;
this.web_Credits.IsWebBrowserContextMenuEnabled = false;
this.web_Credits.Location = new System.Drawing.Point(0, 0);
this.web_Credits.MinimumSize = new System.Drawing.Size(20, 20);
this.web_Credits.Name = "web_Credits";
this.web_Credits.Size = new System.Drawing.Size(554, 314);
this.web_Credits.TabIndex = 7;
this.web_Credits.WebBrowserShortcutsEnabled = false;
//
// tabPage24
//
this.tabPage24.Controls.Add(this.richTextBox2);
this.tabPage24.Location = new System.Drawing.Point(4, 22);
this.tabPage24.Name = "tabPage24";
this.tabPage24.Size = new System.Drawing.Size(546, 288);
this.tabPage24.TabIndex = 15;
this.tabPage24.Text = "luac50";
this.tabPage24.UseVisualStyleBackColor = true;
//
// richTextBox2
//
this.richTextBox2.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.richTextBox2.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.richTextBox2.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox2.Location = new System.Drawing.Point(0, 0);
this.richTextBox2.Name = "richTextBox2";
this.richTextBox2.ReadOnly = true;
this.richTextBox2.Size = new System.Drawing.Size(546, 288);
this.richTextBox2.TabIndex = 2;
this.richTextBox2.Text = resources.GetString("richTextBox2.Text");
//
// About
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.ClientSize = new System.Drawing.Size(568, 407);
this.Controls.Add(this.tabControl1);
this.Controls.Add(this.lbl_versionNumber);
this.Controls.Add(this.lbl_Subtitle);
this.Controls.Add(this.lbl_Title);
this.DoubleBuffered = true;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(510, 365);
this.Name = "About";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "About";
this.Load += new System.EventHandler(this.About_Load);
this.tabControl1.ResumeLayout(false);
this.tabPage1.ResumeLayout(false);
this.tab_Information.ResumeLayout(false);
this.page_About.ResumeLayout(false);
this.page_About.PerformLayout();
this.page_History.ResumeLayout(false);
this.tabPage3.ResumeLayout(false);
this.tabControl2.ResumeLayout(false);
this.tabPage7.ResumeLayout(false);
this.tabPage4.ResumeLayout(false);
this.tabControl5.ResumeLayout(false);
this.tabPage15.ResumeLayout(false);
this.tabControl6.ResumeLayout(false);
this.tabPage17.ResumeLayout(false);
this.tabPage18.ResumeLayout(false);
this.tabPage16.ResumeLayout(false);
this.tabControl7.ResumeLayout(false);
this.tabPage19.ResumeLayout(false);
this.tabPage2.ResumeLayout(false);
this.tabPage5.ResumeLayout(false);
this.tabControl3.ResumeLayout(false);
this.tabPage11.ResumeLayout(false);
this.tabPage12.ResumeLayout(false);
this.tabControl4.ResumeLayout(false);
this.tabPage13.ResumeLayout(false);
this.tabPage14.ResumeLayout(false);
this.tabPage20.ResumeLayout(false);
this.tabPage9.ResumeLayout(false);
this.tabPage8.ResumeLayout(false);
this.tabPage21.ResumeLayout(false);
this.tabPage10.ResumeLayout(false);
this.tabPage22.ResumeLayout(false);
this.tabPage23.ResumeLayout(false);
this.tabPage6.ResumeLayout(false);
this.tabPage24.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Label lbl_Subtitle;
private System.Windows.Forms.Label lbl_versionNumber;
private System.Windows.Forms.Label lbl_Description;
private System.Windows.Forms.TabControl tabControl1;
private System.Windows.Forms.TabPage tabPage1;
private System.Windows.Forms.TabPage tabPage3;
private System.Windows.Forms.TabControl tab_Information;
private System.Windows.Forms.TabPage page_About;
private System.Windows.Forms.Button btn_GitHub;
private System.Windows.Forms.TabPage tabPage6;
private System.Windows.Forms.TabPage page_History;
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.TabControl tabControl2;
private System.Windows.Forms.TabPage tabPage7;
private System.Windows.Forms.TabPage tabPage4;
private System.Windows.Forms.RichTextBox richTextBox3;
private System.Windows.Forms.TabPage tabPage2;
private System.Windows.Forms.RichTextBox richTextBox5;
private System.Windows.Forms.TabPage tabPage5;
private System.Windows.Forms.TabPage tabPage8;
private System.Windows.Forms.RichTextBox richTextBox7;
private System.Windows.Forms.TabPage tabPage9;
private System.Windows.Forms.RichTextBox richTextBox8;
private System.Windows.Forms.TabPage tabPage10;
private System.Windows.Forms.RichTextBox richTextBox9;
private System.Windows.Forms.TabControl tabControl5;
private System.Windows.Forms.TabPage tabPage15;
private System.Windows.Forms.TabControl tabControl6;
private System.Windows.Forms.TabPage tabPage17;
private System.Windows.Forms.TabPage tabPage18;
private System.Windows.Forms.RichTextBox richTextBox13;
private System.Windows.Forms.TabPage tabPage16;
private System.Windows.Forms.TabControl tabControl7;
private System.Windows.Forms.TabPage tabPage19;
private System.Windows.Forms.RichTextBox richTextBox12;
private System.Windows.Forms.TabControl tabControl3;
private System.Windows.Forms.TabPage tabPage11;
private System.Windows.Forms.RichTextBox richTextBox10;
private System.Windows.Forms.TabPage tabPage12;
private System.Windows.Forms.TabControl tabControl4;
private System.Windows.Forms.TabPage tabPage13;
private System.Windows.Forms.RichTextBox richTextBox6;
private System.Windows.Forms.TabPage tabPage14;
private System.Windows.Forms.RichTextBox richTextBox11;
private System.Windows.Forms.TabPage tabPage20;
private System.Windows.Forms.RichTextBox richTextBox14;
private System.Windows.Forms.TabPage tabPage21;
private System.Windows.Forms.RichTextBox richTextBox15;
private System.Windows.Forms.TabPage tabPage22;
private System.Windows.Forms.RichTextBox richTextBox16;
private System.Windows.Forms.RichTextBox richTextBox4;
private System.Windows.Forms.TabPage tabPage23;
private System.Windows.Forms.RichTextBox richTextBox17;
private System.Windows.Forms.WebBrowser web_Credits;
private System.Windows.Forms.TabPage tabPage24;
private System.Windows.Forms.RichTextBox richTextBox2;
}
}

View File

@ -1,116 +0,0 @@
using System;
using System.Diagnostics;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class About : Form
{
public About()
{
InitializeComponent();
}
public string changeLogs = new Tools.TimedWebClient { Timeout = 100000 }.DownloadString("https://segacarnival.com/hyper/updates/changelogs.txt");
void About_Load(object sender, EventArgs e)
{
lbl_versionNumber.Text = Tools.Global.versionNumber;
if (Tools.Global.versionNumber.Contains("-indev")) lbl_versionNumber.Left -= 44;
else if (Tools.Global.versionNumber.Contains("-test")) lbl_versionNumber.Left -= 32;
else if (Tools.Global.versionNumber.Contains("_")) lbl_versionNumber.Left -= 24;
web_Credits.DocumentText = $"<html><body><style>{Properties.Resources.CreditsStyleSheet}</style><center>" +
$"<h1>Sonic '06 Toolkit</h1>" +
$"<center>Developed by <a href=\"http://hyper-dev.xyz/main/\" target=\"_blank\">Hyper Development Team</a></center>" +
$"<center>Hosted by <a href=\"https://segacarnival.com/forum/index.php\" target=\"_blank\">SEGA Carnival</a></center>" +
$"<center>Licensed under the <a href=\"https://github.com/HyperPolygon64/Sonic-06-Toolkit/blob/master/LICENSE\" target=\"_blank\">MIT License</a></center>" +
$"<p align=\"left\">Contributors:<br>" +
$"<a href=\"https://github.com/HyperPolygon64\" target=\"_blank\">Hyper</a> - Lead Developer<br>" +
$"Shadow LAG - <a href=\"https://drive.google.com/file/d/1auuHtR91zWwNDih4l6ddlwcCbczW_b0L/view\" target=\"_blank\">Sonic '06 SDK</a><br>" +
$"xose - ARC Unpacker<br>" +
$"g0ldenlink - ARC Repacker<br>" +
$"<a href=\"https://github.com/NatsumiFox\" target=\"_blank\">Natsumi</a> - <a href=\"https://github.com/HyperPolygon64/Sonic-06-Toolkit/commit/54f1ee53a1155b990058c9d8d15e91a8e09a5f23#diff-e664d6debe0eb815513a7b8c8bb39512R52\" target=\"_blank\">Deep Search</a>, <a href=\"https://github.com/HyperPolygon64/Sonic-06-Toolkit/commit/4e1e7e7b8e50eab1a0dbbe3f3c2b969b7a51c3c3\" target=\"_blank\">MST Decoder (1.83)</a> and Design Guidance<br>" +
$"<a href=\"https://github.com/blueskythlikesclouds\" target=\"_blank\">Skyth</a> - <a href=\"https://github.com/blueskythlikesclouds/SkythTools/blob/master/Sonic%20'06/xno2dae.exe\" target=\"_blank\">XNO Converter</a>, <a href=\"https://github.com/blueskythlikesclouds/SonicAudioTools\" target=\"_blank\">Sonic Audio Tools</a> and <a href=\"https://github.com/DarioSamo/libgens-sonicglvl/blob/master/src/LibS06/S06Collision.cpp\" target=\"_blank\">S06Collision</a><br>" +
$"<a href=\"https://github.com/DarioSamo\" target=\"_blank\">DarioSamo</a> - <a href=\"https://github.com/blueskythlikesclouds/SkythTools/blob/master/Sonic%20'06/xno2dae.exe\" target=\"_blank\">XNO Converter</a> and <a href=\"https://github.com/DarioSamo/libgens-sonicglvl/tree/master/src/LibS06\" target=\"_blank\">LibS06</a><br>" +
$"<a href=\"https://www.criware.com/en/\" target=\"_blank\">CRI Middleware Co.</a> - CRI Atom Encoder<br>" +
$"<a href=\"https://github.com/Radfordhound\" target=\"_blank\">Radfordhound</a> - <a href=\"https://github.com/Radfordhound/HedgeLib\" target=\"_blank\">HedgeLib</a><br>" +
$"<a href=\"in@fishtank.com\" target=\"_blank\">in</a> - <a href=\"https://github.com/XboxDev/extract-xiso\" target=\"_blank\">extract-xiso</a><br>" +
$"<a href=\"https://www.playstation.com/en-gb/\" target=\"_blank\">SONY Computer Entertainment Inc.</a> - ATRAC3plus Codec TOOL<br>" +
$"<a href=\"https://github.com/GerbilSoft\" target=\"_blank\">GerbilSoft</a> - <a href=\"https://github.com/GerbilSoft/mst06\" target=\"_blank\">mst06</a><br>" +
$"<a href=\"https://www.microsoft.com/\" target=\"_blank\">Microsoft Corporation</a> - XMA Encode 2008<br>" +
$"<a href=\"https://www.youtube.com/channel/UC35wsF1NUwoUWmw2DLz6uJg\" target=\"_blank\">Nonami</a> - XMA and XNO Backface Culling Research<br>" +
$"Reimous - XMA Research<br>" +
$"<a href=\"https://twitter.com/nectarhime\" target=\"_blank\">Sable</a> - BIN Studio Logo<br>" +
$"<a href=\"https://gamebanana.com/members/1615034\" target=\"_blank\">Sajid</a> - <a href=\"https://github.com/DarioSamo/libgens-sonicglvl/blob/master/src/LibS06/S06Collision.cpp\" target=\"_blank\">S06Collision</a><br>" +
$"<a href=\"http://www.puc-rio.br/index.html\" target=\"_blank\">PUC-Rio</a> - luac50<br>" +
$"</p></body></html>";
}
void Btn_Close_Click(object sender, EventArgs e)
{
Close();
}
void Lbl_Title_Click(object sender, EventArgs e)
{
new Logo().ShowDialog();
}
private void Btn_GitHub_Click_1(object sender, EventArgs e)
{
Process.Start("https://github.com/HyperPolygon64/Sonic-06-Toolkit");
}
//void Btn_Credits_Click(object sender, EventArgs e)
//{
// MessageBox.Show(
// "Sonic '06 Toolkit\n" +
// "Developed by Hyper Development Team\n" +
// "Hosted by SEGA Carnival\n\n" +
// "" +
// "Licensed under the GNU General Public License v2.0\n\n" +
// "" +
// "Contributors:\n" +
// "Hyper - Lead Developer\n" +
// "Shadow LAG - Sonic '06 SDK\n" +
// "xose - ARC Unpacker\n" +
// "g0ldenlink - ARC Repacker\n" +
// "Natsumi - MST Decoder (1.83) & Design Guidance\n" +
// "Skyth - XNO Converter & Sonic Audio Tools\n" +
// "DarioSamo - XNO Converter\n" +
// "CRI Middleware Co. - ADX Encoder\n" +
// "Radfordhound - HedgeLib\n" +
// "in - extract-xiso\n" +
// "Aiyyo - extract-xiso\n" +
// "somski - extract-xiso\n" +
// "SONY Computer Entertainment Inc. - AT3 Tool",
// "Credits", MessageBoxButtons.OK, MessageBoxIcon.Information);
//}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,237 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class DeepSearch
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DeepSearch));
this.list_Search = new System.Windows.Forms.ListBox();
this.clb_ARCs = new System.Windows.Forms.CheckedListBox();
this.group_Search = new System.Windows.Forms.GroupBox();
this.s06PathButton = new System.Windows.Forms.Button();
this.lbl_ModsDirectory = new System.Windows.Forms.Label();
this.s06PathBox = new System.Windows.Forms.TextBox();
this.lbl_GameDirectory = new System.Windows.Forms.Label();
this.searchBox = new System.Windows.Forms.TextBox();
this.btn_Cancel = new System.Windows.Forms.Button();
this.btn_Search = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.group_Search.SuspendLayout();
this.SuspendLayout();
//
// list_Search
//
this.list_Search.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.list_Search.FormattingEnabled = true;
this.list_Search.HorizontalScrollbar = true;
this.list_Search.Location = new System.Drawing.Point(174, 83);
this.list_Search.Name = "list_Search";
this.list_Search.Size = new System.Drawing.Size(355, 394);
this.list_Search.TabIndex = 20;
//
// clb_ARCs
//
this.clb_ARCs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_ARCs.CheckOnClick = true;
this.clb_ARCs.FormattingEnabled = true;
this.clb_ARCs.Location = new System.Drawing.Point(5, 83);
this.clb_ARCs.Name = "clb_ARCs";
this.clb_ARCs.Size = new System.Drawing.Size(165, 394);
this.clb_ARCs.TabIndex = 0;
this.clb_ARCs.SelectedIndexChanged += new System.EventHandler(this.Clb_ARCs_SelectedIndexChanged);
//
// group_Search
//
this.group_Search.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.group_Search.Controls.Add(this.s06PathButton);
this.group_Search.Controls.Add(this.lbl_ModsDirectory);
this.group_Search.Controls.Add(this.s06PathBox);
this.group_Search.Controls.Add(this.lbl_GameDirectory);
this.group_Search.Controls.Add(this.searchBox);
this.group_Search.Location = new System.Drawing.Point(5, 3);
this.group_Search.Name = "group_Search";
this.group_Search.Size = new System.Drawing.Size(524, 75);
this.group_Search.TabIndex = 53;
this.group_Search.TabStop = false;
this.group_Search.Text = "Search";
//
// s06PathButton
//
this.s06PathButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.s06PathButton.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.s06PathButton.FlatAppearance.BorderSize = 0;
this.s06PathButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.s06PathButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.s06PathButton.Location = new System.Drawing.Point(496, 18);
this.s06PathButton.Name = "s06PathButton";
this.s06PathButton.Size = new System.Drawing.Size(22, 20);
this.s06PathButton.TabIndex = 45;
this.s06PathButton.Text = "...";
this.s06PathButton.UseVisualStyleBackColor = false;
this.s06PathButton.Click += new System.EventHandler(this.S06PathButton_Click);
//
// lbl_ModsDirectory
//
this.lbl_ModsDirectory.AutoSize = true;
this.lbl_ModsDirectory.Location = new System.Drawing.Point(7, 21);
this.lbl_ModsDirectory.Name = "lbl_ModsDirectory";
this.lbl_ModsDirectory.Size = new System.Drawing.Size(83, 13);
this.lbl_ModsDirectory.TabIndex = 44;
this.lbl_ModsDirectory.Text = "Game Directory:";
//
// s06PathBox
//
this.s06PathBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.s06PathBox.Location = new System.Drawing.Point(92, 18);
this.s06PathBox.Name = "s06PathBox";
this.s06PathBox.Size = new System.Drawing.Size(400, 20);
this.s06PathBox.TabIndex = 43;
this.s06PathBox.TextChanged += new System.EventHandler(this.S06PathBox_TextChanged);
//
// lbl_GameDirectory
//
this.lbl_GameDirectory.AutoSize = true;
this.lbl_GameDirectory.Location = new System.Drawing.Point(15, 47);
this.lbl_GameDirectory.Name = "lbl_GameDirectory";
this.lbl_GameDirectory.Size = new System.Drawing.Size(75, 13);
this.lbl_GameDirectory.TabIndex = 38;
this.lbl_GameDirectory.Text = "Search Query:";
//
// searchBox
//
this.searchBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.searchBox.Location = new System.Drawing.Point(92, 44);
this.searchBox.Name = "searchBox";
this.searchBox.Size = new System.Drawing.Size(426, 20);
this.searchBox.TabIndex = 37;
//
// btn_Cancel
//
this.btn_Cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Cancel.BackColor = System.Drawing.Color.Tomato;
this.btn_Cancel.FlatAppearance.BorderSize = 0;
this.btn_Cancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Cancel.Location = new System.Drawing.Point(454, 482);
this.btn_Cancel.Name = "btn_Cancel";
this.btn_Cancel.Size = new System.Drawing.Size(75, 23);
this.btn_Cancel.TabIndex = 57;
this.btn_Cancel.Text = "Cancel";
this.btn_Cancel.UseVisualStyleBackColor = false;
this.btn_Cancel.Click += new System.EventHandler(this.Btn_Cancel_Click);
//
// btn_Search
//
this.btn_Search.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Search.BackColor = System.Drawing.Color.LightGreen;
this.btn_Search.Enabled = false;
this.btn_Search.FlatAppearance.BorderSize = 0;
this.btn_Search.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Search.Location = new System.Drawing.Point(373, 482);
this.btn_Search.Name = "btn_Search";
this.btn_Search.Size = new System.Drawing.Size(75, 23);
this.btn_Search.TabIndex = 56;
this.btn_Search.Text = "Search";
this.btn_Search.UseVisualStyleBackColor = false;
this.btn_Search.Click += new System.EventHandler(this.Btn_Search_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 482);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(80, 23);
this.btn_DeselectAll.TabIndex = 59;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(5, 482);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(80, 23);
this.btn_SelectAll.TabIndex = 58;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// DeepSearch
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(534, 511);
this.Controls.Add(this.list_Search);
this.Controls.Add(this.clb_ARCs);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.btn_Cancel);
this.Controls.Add(this.btn_Search);
this.Controls.Add(this.group_Search);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimumSize = new System.Drawing.Size(550, 510);
this.Name = "DeepSearch";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Deep Search";
this.Load += new System.EventHandler(this.DeepSearch_Load);
this.group_Search.ResumeLayout(false);
this.group_Search.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.ListBox list_Search;
private System.Windows.Forms.CheckedListBox clb_ARCs;
private System.Windows.Forms.GroupBox group_Search;
private System.Windows.Forms.Button s06PathButton;
private System.Windows.Forms.Label lbl_ModsDirectory;
private System.Windows.Forms.TextBox s06PathBox;
private System.Windows.Forms.Label lbl_GameDirectory;
private System.Windows.Forms.TextBox searchBox;
internal System.Windows.Forms.Button btn_Cancel;
private System.Windows.Forms.Button btn_Search;
internal System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
}
}

View File

@ -1,149 +0,0 @@
using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections.Generic;
namespace Sonic_06_Toolkit
{
public partial class DeepSearch : Form
{
List<string> checkedARCsList = new List<string>() { };
public DeepSearch()
{
InitializeComponent();
}
private void DeepSearch_Load(object sender, EventArgs e)
{
s06PathBox.Text = Properties.Settings.Default.gamePath;
}
private void S06PathBox_TextChanged(object sender, EventArgs e)
{
try
{
var mods = Directory.GetFiles(s06PathBox.Text, "*.*", SearchOption.AllDirectories).Where(s => s.EndsWith(".arc"));
foreach (var item in mods)
{
clb_ARCs.Items.Add(Path.GetFileName(item));
}
}
catch { }
}
private void S06PathButton_Click(object sender, EventArgs e)
{
FolderBrowserDialog s06PathBrowser = new FolderBrowserDialog();
s06PathBrowser.Description = "Select your SONIC THE HEDGEHOG (2006) game directory...";
if (s06PathBrowser.ShowDialog() == DialogResult.OK)
{
s06PathBox.Text = s06PathBrowser.SelectedPath;
Properties.Settings.Default.gamePath = s06PathBrowser.SelectedPath;
Properties.Settings.Default.Save();
}
}
private void Btn_Search_Click(object sender, EventArgs e)
{
ProcessStrings();
}
private void ProcessStrings()
{
list_Search.Items.Clear();
var files = Directory.GetFiles(s06PathBox.Text, "*.*", SearchOption.AllDirectories).Where(s => s.EndsWith(".arc"));
foreach (string selectedARC in clb_ARCs.CheckedItems)
{
foreach (var ARC in files)
{
if (ARC.Contains(selectedARC))
{
using (FileStream stream = new FileStream(ARC, FileMode.Open))
{
// here is some stream 'stream' which contains any number of bytes, where we search for various strings inside of it
FindStrings(stream, new string[] { searchBox.Text }, Path.GetFileName(ARC));
}
}
}
}
}
private void FindStrings(Stream stream, string[] str, string arc)
{
int[] pos = new int[str.Length];
byte[] buf = new byte[1024];
int len = 0;
while (true)
{
// read data from stream into buffer, and exit if length is 0
if ((len = stream.Read(buf, 0, buf.Length)) == 0)
break;
// check str array for every character, making sure they are up-to-date
for (int x = 0; x < str.Length; x++)
{
for (int i = 0; i < len; i++)
{
if (str[x][pos[x]] == buf[i])
{
// there is a match, increment position and check if we finished the string
if (++pos[x] == str[x].Length)
{
// why yes, this string is now finished, print out the information
list_Search.Items.Add($"Found instances of {str[x]} in {arc}");
// reset position
pos[x] = 0;
}
// no match, reset position to 0
}
else pos[x] = 0;
}
}
}
}
private void Btn_Cancel_Click(object sender, EventArgs e)
{
Close();
}
private void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_ARCs.Items.Count; i++) clb_ARCs.SetItemChecked(i, true);
btn_Search.Enabled = true;
}
private void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_ARCs.Items.Count; i++) clb_ARCs.SetItemChecked(i, false);
btn_Search.Enabled = false;
}
private void Clb_ARCs_SelectedIndexChanged(object sender, EventArgs e)
{
clb_ARCs.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Encode button, depending on whether a box has been checked.
if (clb_ARCs.CheckedItems.Count > 0)
{
btn_Search.Enabled = true;
}
else
{
btn_Search.Enabled = false;
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,409 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Documentation
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Documentation));
System.Windows.Forms.TreeNode treeNode1 = new System.Windows.Forms.TreeNode("ARC");
System.Windows.Forms.TreeNode treeNode2 = new System.Windows.Forms.TreeNode("Core", new System.Windows.Forms.TreeNode[] {
treeNode1});
System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("DDS");
System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("FXO");
System.Windows.Forms.TreeNode treeNode5 = new System.Windows.Forms.TreeNode("FTM");
System.Windows.Forms.TreeNode treeNode6 = new System.Windows.Forms.TreeNode("MAB");
System.Windows.Forms.TreeNode treeNode7 = new System.Windows.Forms.TreeNode("PEB");
System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("PLC");
System.Windows.Forms.TreeNode treeNode9 = new System.Windows.Forms.TreeNode("PTB");
System.Windows.Forms.TreeNode treeNode10 = new System.Windows.Forms.TreeNode("XNI");
System.Windows.Forms.TreeNode treeNode11 = new System.Windows.Forms.TreeNode("XNV");
System.Windows.Forms.TreeNode treeNode12 = new System.Windows.Forms.TreeNode("XNCP");
System.Windows.Forms.TreeNode treeNode13 = new System.Windows.Forms.TreeNode("XNE");
System.Windows.Forms.TreeNode treeNode14 = new System.Windows.Forms.TreeNode("Graphics", new System.Windows.Forms.TreeNode[] {
treeNode3,
treeNode4,
treeNode5,
treeNode6,
treeNode7,
treeNode8,
treeNode9,
treeNode10,
treeNode11,
treeNode12,
treeNode13});
System.Windows.Forms.TreeNode treeNode15 = new System.Windows.Forms.TreeNode("XND");
System.Windows.Forms.TreeNode treeNode16 = new System.Windows.Forms.TreeNode("XNG");
System.Windows.Forms.TreeNode treeNode17 = new System.Windows.Forms.TreeNode("XNM");
System.Windows.Forms.TreeNode treeNode18 = new System.Windows.Forms.TreeNode("XNO");
System.Windows.Forms.TreeNode treeNode19 = new System.Windows.Forms.TreeNode("Animation", new System.Windows.Forms.TreeNode[] {
treeNode15,
treeNode16,
treeNode17,
treeNode18});
System.Windows.Forms.TreeNode treeNode20 = new System.Windows.Forms.TreeNode("ADX");
System.Windows.Forms.TreeNode treeNode21 = new System.Windows.Forms.TreeNode("AT3");
System.Windows.Forms.TreeNode treeNode22 = new System.Windows.Forms.TreeNode("CSB");
System.Windows.Forms.TreeNode treeNode23 = new System.Windows.Forms.TreeNode("EPB");
System.Windows.Forms.TreeNode treeNode24 = new System.Windows.Forms.TreeNode("PAM");
System.Windows.Forms.TreeNode treeNode25 = new System.Windows.Forms.TreeNode("SBK");
System.Windows.Forms.TreeNode treeNode26 = new System.Windows.Forms.TreeNode("WMV");
System.Windows.Forms.TreeNode treeNode27 = new System.Windows.Forms.TreeNode("XMA");
System.Windows.Forms.TreeNode treeNode28 = new System.Windows.Forms.TreeNode("Audio/Video", new System.Windows.Forms.TreeNode[] {
treeNode20,
treeNode21,
treeNode22,
treeNode23,
treeNode24,
treeNode25,
treeNode26,
treeNode27});
System.Windows.Forms.TreeNode treeNode29 = new System.Windows.Forms.TreeNode("BIN");
System.Windows.Forms.TreeNode treeNode30 = new System.Windows.Forms.TreeNode("ELF");
System.Windows.Forms.TreeNode treeNode31 = new System.Windows.Forms.TreeNode("HKX");
System.Windows.Forms.TreeNode treeNode32 = new System.Windows.Forms.TreeNode("MBI");
System.Windows.Forms.TreeNode treeNode33 = new System.Windows.Forms.TreeNode("MST");
System.Windows.Forms.TreeNode treeNode34 = new System.Windows.Forms.TreeNode("RAB");
System.Windows.Forms.TreeNode treeNode35 = new System.Windows.Forms.TreeNode("TEV");
System.Windows.Forms.TreeNode treeNode36 = new System.Windows.Forms.TreeNode("XNA");
System.Windows.Forms.TreeNode treeNode37 = new System.Windows.Forms.TreeNode("Engine", new System.Windows.Forms.TreeNode[] {
treeNode29,
treeNode30,
treeNode31,
treeNode32,
treeNode33,
treeNode34,
treeNode35,
treeNode36});
System.Windows.Forms.TreeNode treeNode38 = new System.Windows.Forms.TreeNode("KBF");
System.Windows.Forms.TreeNode treeNode39 = new System.Windows.Forms.TreeNode("LUB");
System.Windows.Forms.TreeNode treeNode40 = new System.Windows.Forms.TreeNode("PATH");
System.Windows.Forms.TreeNode treeNode41 = new System.Windows.Forms.TreeNode("PFI");
System.Windows.Forms.TreeNode treeNode42 = new System.Windows.Forms.TreeNode("PKG");
System.Windows.Forms.TreeNode treeNode43 = new System.Windows.Forms.TreeNode("PROP");
System.Windows.Forms.TreeNode treeNode44 = new System.Windows.Forms.TreeNode("SET");
System.Windows.Forms.TreeNode treeNode45 = new System.Windows.Forms.TreeNode("Scripts", new System.Windows.Forms.TreeNode[] {
treeNode38,
treeNode39,
treeNode40,
treeNode41,
treeNode42,
treeNode43,
treeNode44});
System.Windows.Forms.TreeNode treeNode46 = new System.Windows.Forms.TreeNode("");
System.Windows.Forms.TreeNode treeNode47 = new System.Windows.Forms.TreeNode("WAV files aren\'t converting back to ADX...");
System.Windows.Forms.TreeNode treeNode48 = new System.Windows.Forms.TreeNode("ADX Studio", new System.Windows.Forms.TreeNode[] {
treeNode47});
System.Windows.Forms.TreeNode treeNode49 = new System.Windows.Forms.TreeNode("MSVCR71.dll is missing...");
System.Windows.Forms.TreeNode treeNode50 = new System.Windows.Forms.TreeNode("AT3 files are encoding empty...");
System.Windows.Forms.TreeNode treeNode51 = new System.Windows.Forms.TreeNode("AT3 Studio", new System.Windows.Forms.TreeNode[] {
treeNode49,
treeNode50});
System.Windows.Forms.TreeNode treeNode52 = new System.Windows.Forms.TreeNode("Lua binaries are decompiling empty...");
System.Windows.Forms.TreeNode treeNode53 = new System.Windows.Forms.TreeNode("LUB Studio", new System.Windows.Forms.TreeNode[] {
treeNode52});
System.Windows.Forms.TreeNode treeNode54 = new System.Windows.Forms.TreeNode("MSVCR100.dll is missing...");
System.Windows.Forms.TreeNode treeNode55 = new System.Windows.Forms.TreeNode("XNO Studio", new System.Windows.Forms.TreeNode[] {
treeNode54});
System.Windows.Forms.TreeNode treeNode56 = new System.Windows.Forms.TreeNode("");
System.Windows.Forms.TreeNode treeNode57 = new System.Windows.Forms.TreeNode("Nothing is working!");
System.Windows.Forms.TreeNode treeNode58 = new System.Windows.Forms.TreeNode("Troubleshooting", new System.Windows.Forms.TreeNode[] {
treeNode48,
treeNode51,
treeNode53,
treeNode55,
treeNode56,
treeNode57});
System.Windows.Forms.TreeNode treeNode59 = new System.Windows.Forms.TreeNode("Sonic \'06 Toolkit", new System.Windows.Forms.TreeNode[] {
treeNode58});
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Title = new System.Windows.Forms.Label();
this.panel1 = new System.Windows.Forms.Panel();
this.split_Main = new System.Windows.Forms.SplitContainer();
this.tree_InfoSelect = new System.Windows.Forms.TreeView();
this.btn_Reset = new System.Windows.Forms.Button();
this.rtb_InfoDisplay = new System.Windows.Forms.RichTextBox();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.split_Main)).BeginInit();
this.split_Main.Panel1.SuspendLayout();
this.split_Main.Panel2.SuspendLayout();
this.split_Main.SuspendLayout();
this.SuspendLayout();
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(728, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlText;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(276, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "Documentation";
//
// panel1
//
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panel1.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel1.Controls.Add(this.pic_Logo);
this.panel1.Controls.Add(this.lbl_Title);
this.panel1.Location = new System.Drawing.Point(-3, -2);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(805, 69);
this.panel1.TabIndex = 7;
//
// split_Main
//
this.split_Main.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.split_Main.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.split_Main.Location = new System.Drawing.Point(0, 67);
this.split_Main.Name = "split_Main";
//
// split_Main.Panel1
//
this.split_Main.Panel1.Controls.Add(this.tree_InfoSelect);
//
// split_Main.Panel2
//
this.split_Main.Panel2.Controls.Add(this.btn_Reset);
this.split_Main.Panel2.Controls.Add(this.rtb_InfoDisplay);
this.split_Main.Size = new System.Drawing.Size(800, 383);
this.split_Main.SplitterDistance = 298;
this.split_Main.TabIndex = 9;
//
// tree_InfoSelect
//
this.tree_InfoSelect.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.tree_InfoSelect.Dock = System.Windows.Forms.DockStyle.Fill;
this.tree_InfoSelect.Location = new System.Drawing.Point(0, 0);
this.tree_InfoSelect.Name = "tree_InfoSelect";
treeNode1.Name = "node_ARC";
treeNode1.Text = "ARC";
treeNode2.Name = "node_Core";
treeNode2.Text = "Core";
treeNode3.Name = "node_DDS";
treeNode3.Text = "DDS";
treeNode4.Name = "node_FXO";
treeNode4.Text = "FXO";
treeNode5.Name = "node_FTM";
treeNode5.Text = "FTM";
treeNode6.Name = "node_MAB";
treeNode6.Text = "MAB";
treeNode7.Name = "node_PEB";
treeNode7.Text = "PEB";
treeNode8.Name = "node_PLC";
treeNode8.Text = "PLC";
treeNode9.Name = "node_PTB";
treeNode9.Text = "PTB";
treeNode10.Name = "node_XNI";
treeNode10.Text = "XNI";
treeNode11.Name = "node_XNV";
treeNode11.Text = "XNV";
treeNode12.Name = "node_XNCP";
treeNode12.Text = "XNCP";
treeNode13.Name = "node_XNE";
treeNode13.Text = "XNE";
treeNode14.Name = "node_Graphics";
treeNode14.Text = "Graphics";
treeNode15.Name = "node_XND";
treeNode15.Text = "XND";
treeNode16.Name = "node_XNG";
treeNode16.Text = "XNG";
treeNode17.Name = "node_XNM";
treeNode17.Text = "XNM";
treeNode18.Name = "node_XNO";
treeNode18.Text = "XNO";
treeNode19.Name = "node_Animation";
treeNode19.Text = "Animation";
treeNode20.Name = "node_ADX";
treeNode20.Text = "ADX";
treeNode21.Name = "node_AT3";
treeNode21.Text = "AT3";
treeNode22.Name = "node_CSB";
treeNode22.Text = "CSB";
treeNode23.Name = "node_EPB";
treeNode23.Text = "EPB";
treeNode24.Name = "node_PAM";
treeNode24.Text = "PAM";
treeNode25.Name = "node_SBK";
treeNode25.Text = "SBK";
treeNode26.Name = "node_WMV";
treeNode26.Text = "WMV";
treeNode27.Name = "node_XMA";
treeNode27.Text = "XMA";
treeNode28.Name = "node_AudioVideo";
treeNode28.Text = "Audio/Video";
treeNode29.Name = "node_BIN";
treeNode29.Text = "BIN";
treeNode30.Name = "node_ELF";
treeNode30.Text = "ELF";
treeNode31.Name = "node_HKX";
treeNode31.Text = "HKX";
treeNode32.Name = "node_MBI";
treeNode32.Text = "MBI";
treeNode33.Name = "node_MST";
treeNode33.Text = "MST";
treeNode34.Name = "node_RAB";
treeNode34.Text = "RAB";
treeNode35.Name = "node_TEV";
treeNode35.Text = "TEV";
treeNode36.Name = "node_XNA";
treeNode36.Text = "XNA";
treeNode37.Name = "node_Engine";
treeNode37.Text = "Engine";
treeNode38.Name = "node_KBF";
treeNode38.Text = "KBF";
treeNode39.Name = "node_LUB";
treeNode39.Text = "LUB";
treeNode40.Name = "node_PATH";
treeNode40.Text = "PATH";
treeNode41.Name = "node_PFI";
treeNode41.Text = "PFI";
treeNode42.Name = "node_PKG";
treeNode42.Text = "PKG";
treeNode43.Name = "node_PROP";
treeNode43.Text = "PROP";
treeNode44.Name = "node_SET";
treeNode44.Text = "SET";
treeNode45.Name = "node_Scripts";
treeNode45.Text = "Scripts";
treeNode46.Name = "Node0";
treeNode46.Text = "";
treeNode47.Name = "node_NotWorking";
treeNode47.Text = "WAV files aren\'t converting back to ADX...";
treeNode48.Name = "node_ADXStudio";
treeNode48.Text = "ADX Studio";
treeNode49.Name = "node_Error02";
treeNode49.Text = "MSVCR71.dll is missing...";
treeNode50.Name = "node_Error03";
treeNode50.Text = "AT3 files are encoding empty...";
treeNode51.Name = "node_AT3Studio";
treeNode51.Text = "AT3 Studio";
treeNode52.Name = "node_Error02";
treeNode52.Text = "Lua binaries are decompiling empty...";
treeNode53.Name = "node_LUBStudio";
treeNode53.Text = "LUB Studio";
treeNode54.Name = "node_Error01";
treeNode54.Text = "MSVCR100.dll is missing...";
treeNode55.Name = "node_XNOStudio";
treeNode55.Text = "XNO Studio";
treeNode56.Name = "Node0";
treeNode56.Text = "";
treeNode57.Name = "Node1";
treeNode57.Text = "Nothing is working!";
treeNode58.Name = "node_Troubleshooting";
treeNode58.Text = "Troubleshooting";
treeNode59.Name = "node_Sonic06Toolkit";
treeNode59.Text = "Sonic \'06 Toolkit";
this.tree_InfoSelect.Nodes.AddRange(new System.Windows.Forms.TreeNode[] {
treeNode2,
treeNode14,
treeNode19,
treeNode28,
treeNode37,
treeNode45,
treeNode46,
treeNode59});
this.tree_InfoSelect.Size = new System.Drawing.Size(296, 381);
this.tree_InfoSelect.TabIndex = 0;
this.tree_InfoSelect.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.Tree_InfoSelect_AfterSelect);
//
// btn_Reset
//
this.btn_Reset.BackColor = System.Drawing.Color.Tomato;
this.btn_Reset.FlatAppearance.BorderSize = 0;
this.btn_Reset.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Reset.Location = new System.Drawing.Point(0, 0);
this.btn_Reset.Name = "btn_Reset";
this.btn_Reset.Size = new System.Drawing.Size(496, 23);
this.btn_Reset.TabIndex = 1;
this.btn_Reset.Text = "Click here to reset Sonic \'06 Toolkit";
this.btn_Reset.UseVisualStyleBackColor = false;
this.btn_Reset.Visible = false;
this.btn_Reset.Click += new System.EventHandler(this.Button1_Click);
//
// rtb_InfoDisplay
//
this.rtb_InfoDisplay.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.rtb_InfoDisplay.Dock = System.Windows.Forms.DockStyle.Fill;
this.rtb_InfoDisplay.Location = new System.Drawing.Point(0, 0);
this.rtb_InfoDisplay.Name = "rtb_InfoDisplay";
this.rtb_InfoDisplay.Size = new System.Drawing.Size(496, 381);
this.rtb_InfoDisplay.TabIndex = 0;
this.rtb_InfoDisplay.Text = "";
//
// Documentation
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.ClientSize = new System.Drawing.Size(800, 450);
this.Controls.Add(this.split_Main);
this.Controls.Add(this.panel1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimumSize = new System.Drawing.Size(510, 245);
this.Name = "Documentation";
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.Text = "Documentation";
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.split_Main.Panel1.ResumeLayout(false);
this.split_Main.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.split_Main)).EndInit();
this.split_Main.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.SplitContainer split_Main;
private System.Windows.Forms.TreeView tree_InfoSelect;
private System.Windows.Forms.RichTextBox rtb_InfoDisplay;
private System.Windows.Forms.Button btn_Reset;
}
}

View File

@ -1,186 +0,0 @@
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class Documentation : Form
{
public Documentation()
{
InitializeComponent();
}
public static int freeModeNoMore = 0;
void Tree_InfoSelect_AfterSelect(object sender, TreeViewEventArgs e)
{
#region Core
if (tree_InfoSelect.SelectedNode.Text == "ARC") rtb_InfoDisplay.Text = "ARC files are Nintendo U8 archives compressed using ZLIB.";
#endregion
#region Graphics
else if (tree_InfoSelect.SelectedNode.Text == "DDS") rtb_InfoDisplay.Text = "DDS files are DirectDraw Surface textures.\n\nThese can be converted using DDS Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "FXO") rtb_InfoDisplay.Text = "FXO files are DirectX shader files.";
else if (tree_InfoSelect.SelectedNode.Text == "XNCP") rtb_InfoDisplay.Text = "XNCP files contain animations and layouts for the user interface.";
else if (tree_InfoSelect.SelectedNode.Text == "FTM") rtb_InfoDisplay.Text = "FTM files are font maps; used to store fonts in bitmap images to be used in-game.";
else if (tree_InfoSelect.SelectedNode.Text == "PEB") rtb_InfoDisplay.Text = "PEB files store particle effects.";
else if (tree_InfoSelect.SelectedNode.Text == "PLC") rtb_InfoDisplay.Text = "PLC files load the particle effects.";
else if (tree_InfoSelect.SelectedNode.Text == "XNI") rtb_InfoDisplay.Text = "XNI files contain light particle data.";
else if (tree_InfoSelect.SelectedNode.Text == "XNV") rtb_InfoDisplay.Text = "XNV files contain special effect generators.";
else if (tree_InfoSelect.SelectedNode.Text == "MAB") rtb_InfoDisplay.Text = "MAB files are typically used as event files and can be found being referred to by character files.";
else if (tree_InfoSelect.SelectedNode.Text == "XNE") rtb_InfoDisplay.Text = "XNE files are what apply FXO files to certain objects.";
else if (tree_InfoSelect.SelectedNode.Text == "PTB") rtb_InfoDisplay.Text = "PTB files refer to DDS particle textures and are speculated to specify which particles load on each area, character and/or event.";
#endregion
#region Animation
else if (tree_InfoSelect.SelectedNode.Text == "XNM") rtb_InfoDisplay.Text = "XNM files store animation data.\n\nThese can be converted with XNO files using XNO Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "XNO") rtb_InfoDisplay.Text = "XNO files store model data for various objects and characters.\n\nThese can be converted using XNO Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "XNG") rtb_InfoDisplay.Text = "XNG files are unique to cage models.";
else if (tree_InfoSelect.SelectedNode.Text == "XND") rtb_InfoDisplay.Text = "XND files store values for scripted camera sections.";
#endregion
#region Audio/Video
else if (tree_InfoSelect.SelectedNode.Text == "AT3") rtb_InfoDisplay.Text = "AT3 files are PlayStation 3 audio files that use the ATRAC 3 format.\n\nThese can be converted using AT3 Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "PAM") rtb_InfoDisplay.Text = "PAM files are PlayStation 3 video files that contain both an AVI for video and an AT3 for audio.";
else if (tree_InfoSelect.SelectedNode.Text == "CSB") rtb_InfoDisplay.Text = "CSB files are archives for sound formats; namely in the AIF and ADX format.\n\nThese can be unpacked using CSB Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "ADX") rtb_InfoDisplay.Text = "ADX files are proprietary CriWare audio files.\n\nThese can be converted using ADX Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "XMA") rtb_InfoDisplay.Text = "XMA files are Xbox 360 audio files that use the Xbox Media Audio format.\n\nThese files can be converted using XMA Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "WMV") rtb_InfoDisplay.Text = "WMV files are Windows Media Video encoded files; typically used for cutscenes and the title screen for the Xbox 360 version of the game.";
else if (tree_InfoSelect.SelectedNode.Text == "EPB") rtb_InfoDisplay.Text = "EPB files control cutscene playback in-game.";
else if (tree_InfoSelect.SelectedNode.Text == "SBK") rtb_InfoDisplay.Text = "SBK files group together XMA and ADX files as soundbanks for use in stages.";
#endregion
#region Engine
else if (tree_InfoSelect.SelectedNode.Text == "HKX") rtb_InfoDisplay.Text = "HKX files are Havok physics files.\n\nAdditional information: SONIC THE HEDGEHOG (2006) uses an unlicensed version of Havok 3.3.0-b2.";
else if (tree_InfoSelect.SelectedNode.Text == "XNA") rtb_InfoDisplay.Text = "XNA files contain information for switches, breakable objects and NPC interaction.";
else if (tree_InfoSelect.SelectedNode.Text == "MBI") rtb_InfoDisplay.Text = "MBI files are Motion Base Information files containing morph data.";
else if (tree_InfoSelect.SelectedNode.Text == "BIN") rtb_InfoDisplay.Text = "BIN files contain miscellaneous collision data.\n\nThese can be converted with BIN Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "MST") rtb_InfoDisplay.Text = "MST files store message and subtitle data in null terminated BINA string tables.\n\nThese can be converted with MST Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "RAB") rtb_InfoDisplay.Text = "RAB files link to BIN files, meaning they could serve a similar purpose.";
else if (tree_InfoSelect.SelectedNode.Text == "TEV") rtb_InfoDisplay.Text = "TEV files are used for breakable objects and reference XNM files.";
else if (tree_InfoSelect.SelectedNode.Text == "ELF") rtb_InfoDisplay.Text = @"ELF files are executable files, typically used for the PlayStation and other software. The only file in this format is for the PlayStation 3 version as 'SONIC THE HEDGEHOG\PS3_GAME\USRDIR\ps3\elf\hksputhreadconstraint.elf' and it fails to start on PlayStation hardware.";
#endregion
#region Scripts
else if (tree_InfoSelect.SelectedNode.Text == "LUB") rtb_InfoDisplay.Text = "LUB files are Lua binaries that have been compiled in Lua 5.1. They can be read by Sonic '06 without being compiled.\n\nThese can be decompiled with LUB Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "SET") rtb_InfoDisplay.Text = "SET files are object and effect placement files.\n\nThese can be converted with SET Studio.";
else if (tree_InfoSelect.SelectedNode.Text == "PATH") rtb_InfoDisplay.Text = "PATH files contain data for scripted path sequences used in-game.";
else if (tree_InfoSelect.SelectedNode.Text == "KBF") rtb_InfoDisplay.Text = "KBF files are used to store mission data and information.";
else if (tree_InfoSelect.SelectedNode.Text == "PFI") rtb_InfoDisplay.Text = "PFI files store miscellaneous text information.";
else if (tree_InfoSelect.SelectedNode.Text == "PROP") rtb_InfoDisplay.Text = "PROP files contain variable data for stages.";
else if (tree_InfoSelect.SelectedNode.Text == "PKG") rtb_InfoDisplay.Text = "PKG files are BINA string tables that group together some common file formats (such as; FXO, LUA, DDS, PLC, XNF, XNO, XNI, XNM and XNV files).";
#endregion
#region Sonic '06 Toolkit
#region Troubleshooting
#region ADX Studio
else if (tree_InfoSelect.SelectedNode.Text == "WAV files aren't converting back to ADX...") rtb_InfoDisplay.Text = "You need to install both x86 and x64 variations of Microsoft Visual C++ 2010 SP1.\n\nx86: https://www.microsoft.com/de-de/download/details.aspx?id=8328 \nx64: https://www.microsoft.com/en-us/download/details.aspx?id=13523";
#endregion
#region AT3 Studio
else if (tree_InfoSelect.SelectedNode.Text == "MSVCR71.dll is missing...") rtb_InfoDisplay.Text = "You need to install the x86 variant of Microsoft Visual C++ 2010.\n\nx86: https://www.microsoft.com/en-us/download/details.aspx?id=5555";
else if (tree_InfoSelect.SelectedNode.Text == "AT3 files are encoding empty...") rtb_InfoDisplay.Text = "Encode your WAV file using a 48000Hz sample rate and try again.";
#endregion
#region LUB Studio
else if (tree_InfoSelect.SelectedNode.Text == "Lua binaries are decompiling empty...") rtb_InfoDisplay.Text = "You need to install Java. This should never occur under any circumstances, so please report this immediately.";
#endregion
#region XNO Studio
else if (tree_InfoSelect.SelectedNode.Text == "MSVCR100.dll is missing...") rtb_InfoDisplay.Text = "You need to install both x86 and x64 variations of Microsoft Visual C++ 2010 SP1.\n\nx86: https://www.microsoft.com/de-de/download/details.aspx?id=8328 \nx64: https://www.microsoft.com/en-us/download/details.aspx?id=13523";
#endregion
#region Nothing is working!
else if (tree_InfoSelect.SelectedNode.Text == "Nothing is working!")
{
rtb_InfoDisplay.Text = "";
btn_Reset.Visible = true;
freeModeNoMore++;
}
#endregion
#endregion
#endregion
else
{
rtb_InfoDisplay.Text = "";
btn_Reset.Visible = false;
}
if (tree_InfoSelect.SelectedNode.Text != "Nothing is working!") btn_Reset.Visible = false;
}
void Button1_Click(object sender, System.EventArgs e)
{
DialogResult reset = MessageBox.Show("This will completely reset Sonic '06 Toolkit.\n\n" +
"" +
"The following data will be erased:\n" +
"► Your selected settings.\n" +
"► Your specified paths.\n" +
"► Studio settings.\n" +
"► Archives in the application data.\n" +
"► Tools in the application data.\n\n" +
"" +
"Are you sure you want to continue?", "Reset?", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
switch (reset)
{
case DialogResult.Yes:
var s06toolkitData = new DirectoryInfo(Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\");
try
{
if (Directory.Exists(Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\"))
{
foreach (FileInfo file in s06toolkitData.GetFiles())
{
file.Delete();
}
foreach (DirectoryInfo directory in s06toolkitData.GetDirectories())
{
directory.Delete(true);
}
}
}
catch { }
Properties.Settings.Default.Reset();
Application.Exit();
break;
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,129 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Logo
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Logo));
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.btn_SaveToDisk = new System.Windows.Forms.Button();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Credit = new System.Windows.Forms.Label();
this.sfd_SaveLogo = new System.Windows.Forms.SaveFileDialog();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.SuspendLayout();
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.SystemColors.ControlText;
this.pnl_Backdrop.Controls.Add(this.btn_SaveToDisk);
this.pnl_Backdrop.Location = new System.Drawing.Point(0, 408);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(494, 31);
this.pnl_Backdrop.TabIndex = 8;
//
// btn_SaveToDisk
//
this.btn_SaveToDisk.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.btn_SaveToDisk.BackColor = System.Drawing.Color.LightGreen;
this.btn_SaveToDisk.FlatAppearance.BorderSize = 0;
this.btn_SaveToDisk.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SaveToDisk.Location = new System.Drawing.Point(4, 4);
this.btn_SaveToDisk.Name = "btn_SaveToDisk";
this.btn_SaveToDisk.Size = new System.Drawing.Size(486, 23);
this.btn_SaveToDisk.TabIndex = 0;
this.btn_SaveToDisk.Text = "Save to disk";
this.btn_SaveToDisk.UseVisualStyleBackColor = false;
this.btn_SaveToDisk.Click += new System.EventHandler(this.Btn_SaveToDisk_Click_1);
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackgroundImage = global::Sonic_06_Toolkit.Properties.Resources.logo_main;
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(0, 0);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(494, 410);
this.pic_Logo.TabIndex = 7;
this.pic_Logo.TabStop = false;
//
// lbl_Credit
//
this.lbl_Credit.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_Credit.AutoSize = true;
this.lbl_Credit.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Credit.ForeColor = System.Drawing.SystemColors.ControlText;
this.lbl_Credit.Location = new System.Drawing.Point(345, 9);
this.lbl_Credit.Name = "lbl_Credit";
this.lbl_Credit.Size = new System.Drawing.Size(142, 21);
this.lbl_Credit.TabIndex = 9;
this.lbl_Credit.Text = "Designed by Hyper";
this.lbl_Credit.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// sfd_SaveLogo
//
this.sfd_SaveLogo.Filter = "PNG|*.png";
this.sfd_SaveLogo.Title = "Save As";
//
// Logo
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.ClientSize = new System.Drawing.Size(494, 439);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.lbl_Credit);
this.Controls.Add(this.pic_Logo);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(510, 478);
this.Name = "Logo";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Logo";
this.Load += new System.EventHandler(this.Logo_Load);
this.pnl_Backdrop.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Panel pnl_Backdrop;
private System.Windows.Forms.Button btn_SaveToDisk;
private System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Credit;
private System.Windows.Forms.SaveFileDialog sfd_SaveLogo;
}
}

View File

@ -1,51 +0,0 @@
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class Logo : Form
{
public Logo()
{
InitializeComponent();
}
void Btn_SaveToDisk_Click_1(object sender, System.EventArgs e)
{
if (sfd_SaveLogo.ShowDialog() == DialogResult.OK)
{
if (Documentation.freeModeNoMore >= 10) { Properties.Resources.sonori.Save(sfd_SaveLogo.FileName, System.Drawing.Imaging.ImageFormat.Png); }
else { Properties.Resources.logo_main.Save(sfd_SaveLogo.FileName, System.Drawing.Imaging.ImageFormat.Png); }
}
}
private void Logo_Load(object sender, System.EventArgs e)
{
if (Documentation.freeModeNoMore >= 10) { pic_Logo.BackgroundImage = Properties.Resources.sonori; lbl_Credit.Visible = false; }
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,339 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Paths
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Paths));
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.group_RootPath = new System.Windows.Forms.GroupBox();
this.btn_BrowseRoot = new System.Windows.Forms.Button();
this.text_RootPath = new System.Windows.Forms.TextBox();
this.btn_BrowseTools = new System.Windows.Forms.Button();
this.text_ToolsPath = new System.Windows.Forms.TextBox();
this.group_ToolsPath = new System.Windows.Forms.GroupBox();
this.btn_BrowseArchives = new System.Windows.Forms.Button();
this.text_ArchivesPath = new System.Windows.Forms.TextBox();
this.group_ArchivesPath = new System.Windows.Forms.GroupBox();
this.btn_Restore = new System.Windows.Forms.Button();
this.btn_AppPath = new System.Windows.Forms.Button();
this.btn_Confirm = new System.Windows.Forms.Button();
this.fbd_Browse = new System.Windows.Forms.FolderBrowserDialog();
this.btn_Cancel = new System.Windows.Forms.Button();
this.group_GamePath = new System.Windows.Forms.GroupBox();
this.btn_BrowseGame = new System.Windows.Forms.Button();
this.text_GamePath = new System.Windows.Forms.TextBox();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.group_RootPath.SuspendLayout();
this.group_ToolsPath.SuspendLayout();
this.group_ArchivesPath.SuspendLayout();
this.group_GamePath.SuspendLayout();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlText;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(110, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "Paths";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(536, 69);
this.pnl_Backdrop.TabIndex = 17;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(459, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// group_RootPath
//
this.group_RootPath.Controls.Add(this.btn_BrowseRoot);
this.group_RootPath.Controls.Add(this.text_RootPath);
this.group_RootPath.Location = new System.Drawing.Point(9, 71);
this.group_RootPath.Name = "group_RootPath";
this.group_RootPath.Size = new System.Drawing.Size(513, 71);
this.group_RootPath.TabIndex = 18;
this.group_RootPath.TabStop = false;
this.group_RootPath.Text = "Root Path";
//
// btn_BrowseRoot
//
this.btn_BrowseRoot.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.btn_BrowseRoot.FlatAppearance.BorderSize = 0;
this.btn_BrowseRoot.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_BrowseRoot.Location = new System.Drawing.Point(471, 30);
this.btn_BrowseRoot.Name = "btn_BrowseRoot";
this.btn_BrowseRoot.Size = new System.Drawing.Size(25, 20);
this.btn_BrowseRoot.TabIndex = 19;
this.btn_BrowseRoot.Text = "...";
this.btn_BrowseRoot.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.btn_BrowseRoot.UseVisualStyleBackColor = false;
this.btn_BrowseRoot.Click += new System.EventHandler(this.Btn_BrowseRoot_Click);
//
// text_RootPath
//
this.text_RootPath.Location = new System.Drawing.Point(17, 30);
this.text_RootPath.Name = "text_RootPath";
this.text_RootPath.Size = new System.Drawing.Size(449, 20);
this.text_RootPath.TabIndex = 0;
//
// btn_BrowseTools
//
this.btn_BrowseTools.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.btn_BrowseTools.FlatAppearance.BorderSize = 0;
this.btn_BrowseTools.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_BrowseTools.Location = new System.Drawing.Point(471, 30);
this.btn_BrowseTools.Name = "btn_BrowseTools";
this.btn_BrowseTools.Size = new System.Drawing.Size(25, 20);
this.btn_BrowseTools.TabIndex = 19;
this.btn_BrowseTools.Text = "...";
this.btn_BrowseTools.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.btn_BrowseTools.UseVisualStyleBackColor = false;
this.btn_BrowseTools.Click += new System.EventHandler(this.Btn_BrowseTools_Click);
//
// text_ToolsPath
//
this.text_ToolsPath.Location = new System.Drawing.Point(17, 30);
this.text_ToolsPath.Name = "text_ToolsPath";
this.text_ToolsPath.Size = new System.Drawing.Size(449, 20);
this.text_ToolsPath.TabIndex = 0;
//
// group_ToolsPath
//
this.group_ToolsPath.Controls.Add(this.btn_BrowseTools);
this.group_ToolsPath.Controls.Add(this.text_ToolsPath);
this.group_ToolsPath.Location = new System.Drawing.Point(9, 145);
this.group_ToolsPath.Name = "group_ToolsPath";
this.group_ToolsPath.Size = new System.Drawing.Size(513, 71);
this.group_ToolsPath.TabIndex = 20;
this.group_ToolsPath.TabStop = false;
this.group_ToolsPath.Text = "Tools Path";
//
// btn_BrowseArchives
//
this.btn_BrowseArchives.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.btn_BrowseArchives.FlatAppearance.BorderSize = 0;
this.btn_BrowseArchives.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_BrowseArchives.Location = new System.Drawing.Point(471, 30);
this.btn_BrowseArchives.Name = "btn_BrowseArchives";
this.btn_BrowseArchives.Size = new System.Drawing.Size(25, 20);
this.btn_BrowseArchives.TabIndex = 19;
this.btn_BrowseArchives.Text = "...";
this.btn_BrowseArchives.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.btn_BrowseArchives.UseVisualStyleBackColor = false;
this.btn_BrowseArchives.Click += new System.EventHandler(this.Btn_BrowseArchives_Click);
//
// text_ArchivesPath
//
this.text_ArchivesPath.Location = new System.Drawing.Point(17, 30);
this.text_ArchivesPath.Name = "text_ArchivesPath";
this.text_ArchivesPath.Size = new System.Drawing.Size(449, 20);
this.text_ArchivesPath.TabIndex = 0;
//
// group_ArchivesPath
//
this.group_ArchivesPath.Controls.Add(this.btn_BrowseArchives);
this.group_ArchivesPath.Controls.Add(this.text_ArchivesPath);
this.group_ArchivesPath.Location = new System.Drawing.Point(9, 220);
this.group_ArchivesPath.Name = "group_ArchivesPath";
this.group_ArchivesPath.Size = new System.Drawing.Size(513, 71);
this.group_ArchivesPath.TabIndex = 21;
this.group_ArchivesPath.TabStop = false;
this.group_ArchivesPath.Text = "Archives Path";
//
// btn_Restore
//
this.btn_Restore.BackColor = System.Drawing.Color.Tomato;
this.btn_Restore.FlatAppearance.BorderSize = 0;
this.btn_Restore.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Restore.Location = new System.Drawing.Point(9, 372);
this.btn_Restore.Name = "btn_Restore";
this.btn_Restore.Size = new System.Drawing.Size(103, 23);
this.btn_Restore.TabIndex = 22;
this.btn_Restore.Text = "Restore Defaults";
this.btn_Restore.UseVisualStyleBackColor = false;
this.btn_Restore.Click += new System.EventHandler(this.Btn_Restore_Click);
//
// btn_AppPath
//
this.btn_AppPath.BackColor = System.Drawing.Color.Tomato;
this.btn_AppPath.FlatAppearance.BorderSize = 0;
this.btn_AppPath.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_AppPath.Location = new System.Drawing.Point(118, 372);
this.btn_AppPath.Name = "btn_AppPath";
this.btn_AppPath.Size = new System.Drawing.Size(125, 23);
this.btn_AppPath.TabIndex = 23;
this.btn_AppPath.Text = "Set to Application Path";
this.btn_AppPath.UseVisualStyleBackColor = false;
this.btn_AppPath.Click += new System.EventHandler(this.Btn_AppPath_Click);
//
// btn_Confirm
//
this.btn_Confirm.BackColor = System.Drawing.Color.LightGreen;
this.btn_Confirm.FlatAppearance.BorderSize = 0;
this.btn_Confirm.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Confirm.Location = new System.Drawing.Point(366, 372);
this.btn_Confirm.Name = "btn_Confirm";
this.btn_Confirm.Size = new System.Drawing.Size(75, 23);
this.btn_Confirm.TabIndex = 24;
this.btn_Confirm.Text = "Confirm";
this.btn_Confirm.UseVisualStyleBackColor = false;
this.btn_Confirm.Click += new System.EventHandler(this.Btn_Confirm_Click);
//
// btn_Cancel
//
this.btn_Cancel.BackColor = System.Drawing.Color.Tomato;
this.btn_Cancel.FlatAppearance.BorderSize = 0;
this.btn_Cancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Cancel.Location = new System.Drawing.Point(447, 372);
this.btn_Cancel.Name = "btn_Cancel";
this.btn_Cancel.Size = new System.Drawing.Size(75, 23);
this.btn_Cancel.TabIndex = 25;
this.btn_Cancel.Text = "Cancel";
this.btn_Cancel.UseVisualStyleBackColor = false;
this.btn_Cancel.Click += new System.EventHandler(this.Btn_Cancel_Click);
//
// group_GamePath
//
this.group_GamePath.Controls.Add(this.btn_BrowseGame);
this.group_GamePath.Controls.Add(this.text_GamePath);
this.group_GamePath.Location = new System.Drawing.Point(9, 295);
this.group_GamePath.Name = "group_GamePath";
this.group_GamePath.Size = new System.Drawing.Size(513, 71);
this.group_GamePath.TabIndex = 22;
this.group_GamePath.TabStop = false;
this.group_GamePath.Text = "Game Path";
//
// btn_BrowseGame
//
this.btn_BrowseGame.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.btn_BrowseGame.FlatAppearance.BorderSize = 0;
this.btn_BrowseGame.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_BrowseGame.Location = new System.Drawing.Point(471, 30);
this.btn_BrowseGame.Name = "btn_BrowseGame";
this.btn_BrowseGame.Size = new System.Drawing.Size(25, 20);
this.btn_BrowseGame.TabIndex = 19;
this.btn_BrowseGame.Text = "...";
this.btn_BrowseGame.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.btn_BrowseGame.UseVisualStyleBackColor = false;
this.btn_BrowseGame.Click += new System.EventHandler(this.Btn_BrowseGame_Click);
//
// text_GamePath
//
this.text_GamePath.Location = new System.Drawing.Point(17, 30);
this.text_GamePath.Name = "text_GamePath";
this.text_GamePath.Size = new System.Drawing.Size(449, 20);
this.text_GamePath.TabIndex = 0;
//
// Paths
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.ClientSize = new System.Drawing.Size(531, 403);
this.ControlBox = false;
this.Controls.Add(this.group_GamePath);
this.Controls.Add(this.btn_Cancel);
this.Controls.Add(this.btn_Confirm);
this.Controls.Add(this.btn_AppPath);
this.Controls.Add(this.btn_Restore);
this.Controls.Add(this.group_ArchivesPath);
this.Controls.Add(this.group_ToolsPath);
this.Controls.Add(this.group_RootPath);
this.Controls.Add(this.pnl_Backdrop);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "Paths";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Paths";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Paths_FormClosing);
this.Load += new System.EventHandler(this.Paths_Load);
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.group_RootPath.ResumeLayout(false);
this.group_RootPath.PerformLayout();
this.group_ToolsPath.ResumeLayout(false);
this.group_ToolsPath.PerformLayout();
this.group_ArchivesPath.ResumeLayout(false);
this.group_ArchivesPath.PerformLayout();
this.group_GamePath.ResumeLayout(false);
this.group_GamePath.PerformLayout();
this.ResumeLayout(false);
}
#endregion
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
private System.Windows.Forms.GroupBox group_RootPath;
internal System.Windows.Forms.Button btn_BrowseRoot;
private System.Windows.Forms.TextBox text_RootPath;
internal System.Windows.Forms.Button btn_BrowseTools;
private System.Windows.Forms.TextBox text_ToolsPath;
private System.Windows.Forms.GroupBox group_ToolsPath;
internal System.Windows.Forms.Button btn_BrowseArchives;
private System.Windows.Forms.TextBox text_ArchivesPath;
private System.Windows.Forms.GroupBox group_ArchivesPath;
private System.Windows.Forms.Button btn_Restore;
private System.Windows.Forms.Button btn_AppPath;
private System.Windows.Forms.Button btn_Confirm;
private System.Windows.Forms.FolderBrowserDialog fbd_Browse;
internal System.Windows.Forms.Button btn_Cancel;
private System.Windows.Forms.GroupBox group_GamePath;
internal System.Windows.Forms.Button btn_BrowseGame;
private System.Windows.Forms.TextBox text_GamePath;
}
}

View File

@ -1,243 +0,0 @@
using System;
using System.IO;
using System.Linq;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class Paths : Form
{
public static bool changes = false;
public Paths()
{
InitializeComponent();
}
void Paths_Load(object sender, EventArgs e)
{
text_RootPath.Text = Properties.Settings.Default.rootPath;
text_ToolsPath.Text = Properties.Settings.Default.toolsPath;
text_ArchivesPath.Text = Properties.Settings.Default.archivesPath;
text_GamePath.Text = Properties.Settings.Default.gamePath;
}
#region Browse tasks...
void Btn_BrowseRoot_Click(object sender, EventArgs e)
{
fbd_Browse.Description = "Please select the Root path.";
if (fbd_Browse.ShowDialog() == DialogResult.OK) text_RootPath.Text = fbd_Browse.SelectedPath + @"\";
text_ToolsPath.Text = fbd_Browse.SelectedPath + @"\Tools\";
text_ArchivesPath.Text = fbd_Browse.SelectedPath + @"\Archives\";
}
void Btn_BrowseTools_Click(object sender, EventArgs e)
{
fbd_Browse.Description = "Please select the Tools path.";
if (fbd_Browse.ShowDialog() == DialogResult.OK) text_ToolsPath.Text = fbd_Browse.SelectedPath + @"\";
}
void Btn_BrowseArchives_Click(object sender, EventArgs e)
{
fbd_Browse.Description = "Please select the Archives path.";
if (fbd_Browse.ShowDialog() == DialogResult.OK) text_ArchivesPath.Text = fbd_Browse.SelectedPath + @"\";
}
void Btn_BrowseGame_Click(object sender, EventArgs e)
{
fbd_Browse.Description = "Please select the path to your extracted copy of SONIC THE HEDGEHOG.";
if (fbd_Browse.ShowDialog() == DialogResult.OK) text_GamePath.Text = fbd_Browse.SelectedPath + @"\";
}
#endregion
void Btn_Restore_Click(object sender, EventArgs e)
{
text_RootPath.Text = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\";
text_ToolsPath.Text = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\Tools\";
text_ArchivesPath.Text = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\Archives\";
text_GamePath.Text = "";
}
void Btn_AppPath_Click(object sender, EventArgs e)
{
text_RootPath.Text = Path.GetDirectoryName(Application.ExecutablePath) + @"\";
text_ToolsPath.Text = Path.GetDirectoryName(Application.ExecutablePath) + @"\Tools\";
text_ArchivesPath.Text = Path.GetDirectoryName(Application.ExecutablePath) + @"\Archives\";
}
void Btn_Confirm_Click(object sender, EventArgs e)
{
if (Directory.Exists(text_RootPath.Text))
{
if (text_RootPath.Text.EndsWith(@"\")) Properties.Settings.Default.rootPath = text_RootPath.Text; else Properties.Settings.Default.rootPath = text_RootPath.Text + @"\";
Properties.Settings.Default.Save();
changes = true;
}
else if (text_RootPath.Text == "") MessageBox.Show("Please enter a Root path.", "Path Error", MessageBoxButtons.OK, MessageBoxIcon.Information);
else
{
try
{
Directory.CreateDirectory(text_RootPath.Text);
if (text_RootPath.Text.EndsWith(@"\")) Properties.Settings.Default.rootPath = text_RootPath.Text; else Properties.Settings.Default.rootPath = text_RootPath.Text + @"\";
Properties.Settings.Default.Save();
changes = true;
}
catch (Exception ex) { MessageBox.Show($"An error occurred when creating the Root directory.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
if (Directory.Exists(text_ToolsPath.Text))
{
if (text_ToolsPath.Text.EndsWith(@"\")) Properties.Settings.Default.toolsPath = text_ToolsPath.Text; else Properties.Settings.Default.toolsPath = text_ToolsPath.Text + @"\";
Properties.Settings.Default.Save();
changes = true;
}
else if (text_ToolsPath.Text == "") MessageBox.Show("Please enter a Tools path.", "Path Error", MessageBoxButtons.OK, MessageBoxIcon.Information);
else
{
try
{
Directory.CreateDirectory(text_ToolsPath.Text);
if (text_ToolsPath.Text.EndsWith(@"\")) Properties.Settings.Default.toolsPath = text_ToolsPath.Text; else Properties.Settings.Default.toolsPath = text_ToolsPath.Text + @"\";
Properties.Settings.Default.Save();
changes = true;
}
catch (Exception ex) { MessageBox.Show($"An error occurred when creating the Tools directory.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
if (Directory.Exists(text_ArchivesPath.Text))
{
if (text_ArchivesPath.Text.EndsWith(@"\")) Properties.Settings.Default.archivesPath = text_ArchivesPath.Text; else Properties.Settings.Default.archivesPath = text_ArchivesPath.Text + @"\";
Properties.Settings.Default.Save();
changes = true;
}
else if (text_ArchivesPath.Text == "") MessageBox.Show("Please enter an Archives path.", "Path Error", MessageBoxButtons.OK, MessageBoxIcon.Information);
else
{
try
{
Directory.CreateDirectory(text_ArchivesPath.Text);
if (text_ArchivesPath.Text.EndsWith(@"\")) Properties.Settings.Default.archivesPath = text_ArchivesPath.Text; else Properties.Settings.Default.archivesPath = text_ArchivesPath.Text + @"\";
Properties.Settings.Default.Save();
changes = true;
}
catch (Exception ex) { MessageBox.Show($"An error occurred when creating the Archives directory.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
if (Directory.Exists(text_GamePath.Text))
{
if (!text_GamePath.Text.EndsWith(@"\")) text_GamePath.Text += @"\";
#region Xbox 360
if (File.Exists(text_GamePath.Text + "default.xex"))
{
byte[] bytes = File.ReadAllBytes(text_GamePath.Text + "default.xex").Take(4).ToArray();
var hexString = BitConverter.ToString(bytes); hexString = hexString.Replace("-", " ");
if (hexString == "58 45 58 32")
{
Properties.Settings.Default.gamePath = text_GamePath.Text;
Properties.Settings.Default.Save();
changes = true;
Tools.Global.gameChanged = true;
}
else { MessageBox.Show("I see you're trying to cheat the system...", "XEX Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
#endregion
#region PlayStation 3
else if (File.Exists(text_GamePath.Text + "PS3_DISC.SFB"))
{
byte[] bytes = File.ReadAllBytes(text_GamePath.Text + "PS3_DISC.SFB").Take(4).ToArray();
var hexString = BitConverter.ToString(bytes); hexString = hexString.Replace("-", " ");
if (hexString == "2E 53 46 42")
{
Properties.Settings.Default.gamePath = text_GamePath.Text;
Properties.Settings.Default.Save();
changes = true;
Tools.Global.gameChanged = true;
}
else { MessageBox.Show("I see you're trying to cheat the system...", "SFB Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
else if (File.Exists(text_GamePath.Text + "PARAM.SFO"))
{
byte[] bytes = File.ReadAllBytes(text_GamePath.Text + "PARAM.SFO").Take(4).ToArray();
var hexString = BitConverter.ToString(bytes); hexString = hexString.Replace("-", " ");
if (hexString == "00 50 53 46")
{
Properties.Settings.Default.gamePath = text_GamePath.Text;
Properties.Settings.Default.Save();
changes = true;
Tools.Global.gameChanged = true;
}
else { MessageBox.Show("I see you're trying to cheat the system...", "SFO Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
else if (File.Exists(text_GamePath.Text + "EBOOT.BIN"))
{
byte[] bytes = File.ReadAllBytes(text_GamePath.Text + "EBOOT.BIN").Take(3).ToArray();
var hexString = BitConverter.ToString(bytes); hexString = hexString.Replace("-", " ");
if (hexString == "53 43 45")
{
Properties.Settings.Default.gamePath = text_GamePath.Text;
Properties.Settings.Default.Save();
changes = true;
Tools.Global.gameChanged = true;
}
else { MessageBox.Show("I see you're trying to cheat the system...", "BIN Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
#endregion
else { MessageBox.Show("Please select a valid SONIC THE HEDGEHOG directory.", "Path Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
else if (text_GamePath.Text == "")
{
Properties.Settings.Default.gamePath = "";
Properties.Settings.Default.Save();
changes = true;
Tools.Global.gameChanged = true;
}
Close();
}
void Btn_Cancel_Click(object sender, EventArgs e)
{
changes = false;
Close();
}
void Paths_FormClosing(object sender, FormClosingEventArgs e)
{
if (changes) { MessageBox.Show("Please restart Sonic '06 Toolkit.", "Sonic '06 Toolkit", MessageBoxButtons.OK, MessageBoxIcon.Information); }
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,192 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Save_Editor
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Save_Editor));
this.group_Search = new System.Windows.Forms.GroupBox();
this.comboBox2 = new System.Windows.Forms.ComboBox();
this.comboBox1 = new System.Windows.Forms.ComboBox();
this.lbl_ModsDirectory = new System.Windows.Forms.Label();
this.lbl_GameDirectory = new System.Windows.Forms.Label();
this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();
this.numericUpDown2 = new System.Windows.Forms.NumericUpDown();
this.btn_Save = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.group_Search.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).BeginInit();
this.SuspendLayout();
//
// group_Search
//
this.group_Search.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.group_Search.Controls.Add(this.label2);
this.group_Search.Controls.Add(this.label1);
this.group_Search.Controls.Add(this.numericUpDown2);
this.group_Search.Controls.Add(this.comboBox2);
this.group_Search.Controls.Add(this.numericUpDown1);
this.group_Search.Controls.Add(this.comboBox1);
this.group_Search.Controls.Add(this.lbl_ModsDirectory);
this.group_Search.Controls.Add(this.lbl_GameDirectory);
this.group_Search.Location = new System.Drawing.Point(5, 3);
this.group_Search.Name = "group_Search";
this.group_Search.Size = new System.Drawing.Size(270, 129);
this.group_Search.TabIndex = 54;
this.group_Search.TabStop = false;
this.group_Search.Text = "Configuration";
//
// comboBox2
//
this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBox2.FormattingEnabled = true;
this.comboBox2.Items.AddRange(new object[] {
"Sonic",
"Shadow",
"Silver",
"Last Episode"});
this.comboBox2.Location = new System.Drawing.Point(57, 45);
this.comboBox2.Name = "comboBox2";
this.comboBox2.Size = new System.Drawing.Size(201, 21);
this.comboBox2.TabIndex = 46;
//
// comboBox1
//
this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBox1.FormattingEnabled = true;
this.comboBox1.Items.AddRange(new object[] {
"Xbox 360",
"PlayStation 3"});
this.comboBox1.Location = new System.Drawing.Point(57, 18);
this.comboBox1.Name = "comboBox1";
this.comboBox1.Size = new System.Drawing.Size(201, 21);
this.comboBox1.TabIndex = 45;
//
// lbl_ModsDirectory
//
this.lbl_ModsDirectory.AutoSize = true;
this.lbl_ModsDirectory.Location = new System.Drawing.Point(7, 21);
this.lbl_ModsDirectory.Name = "lbl_ModsDirectory";
this.lbl_ModsDirectory.Size = new System.Drawing.Size(44, 13);
this.lbl_ModsDirectory.TabIndex = 44;
this.lbl_ModsDirectory.Text = "System:";
//
// lbl_GameDirectory
//
this.lbl_GameDirectory.AutoSize = true;
this.lbl_GameDirectory.Location = new System.Drawing.Point(17, 49);
this.lbl_GameDirectory.Name = "lbl_GameDirectory";
this.lbl_GameDirectory.Size = new System.Drawing.Size(34, 13);
this.lbl_GameDirectory.TabIndex = 38;
this.lbl_GameDirectory.Text = "Story:";
//
// numericUpDown1
//
this.numericUpDown1.Location = new System.Drawing.Point(57, 72);
this.numericUpDown1.Name = "numericUpDown1";
this.numericUpDown1.Size = new System.Drawing.Size(201, 20);
this.numericUpDown1.TabIndex = 55;
//
// numericUpDown2
//
this.numericUpDown2.Location = new System.Drawing.Point(57, 98);
this.numericUpDown2.Name = "numericUpDown2";
this.numericUpDown2.Size = new System.Drawing.Size(201, 20);
this.numericUpDown2.TabIndex = 56;
//
// btn_Save
//
this.btn_Save.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.btn_Save.BackColor = System.Drawing.Color.LightGreen;
this.btn_Save.FlatAppearance.BorderSize = 0;
this.btn_Save.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Save.Location = new System.Drawing.Point(5, 136);
this.btn_Save.Name = "btn_Save";
this.btn_Save.Size = new System.Drawing.Size(270, 23);
this.btn_Save.TabIndex = 55;
this.btn_Save.Text = "Save Changes";
this.btn_Save.UseVisualStyleBackColor = false;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(17, 75);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(35, 13);
this.label1.TabIndex = 57;
this.label1.Text = "Lives:";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(10, 101);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(42, 13);
this.label2.TabIndex = 58;
this.label2.Text = "Money:";
//
// Save_Editor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(280, 164);
this.Controls.Add(this.btn_Save);
this.Controls.Add(this.group_Search);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "Save_Editor";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Save Editor";
this.group_Search.ResumeLayout(false);
this.group_Search.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.GroupBox group_Search;
private System.Windows.Forms.Label lbl_ModsDirectory;
private System.Windows.Forms.Label lbl_GameDirectory;
private System.Windows.Forms.ComboBox comboBox2;
private System.Windows.Forms.ComboBox comboBox1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.NumericUpDown numericUpDown2;
private System.Windows.Forms.NumericUpDown numericUpDown1;
private System.Windows.Forms.Button btn_Save;
}
}

View File

@ -1,12 +0,0 @@
using System.Windows.Forms;
namespace Sonic_06_Toolkit
{
public partial class Save_Editor : Form
{
public Save_Editor(string saveFile)
{
InitializeComponent();
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,118 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Status
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Status));
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.pnl_windowCheck = new System.Windows.Forms.Panel();
this.NOW_LOADING = new System.Windows.Forms.PictureBox();
this.lbl_unpackState = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.pnl_windowCheck.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.NOW_LOADING)).BeginInit();
this.SuspendLayout();
//
// pic_Logo
//
this.pic_Logo.BackgroundImage = global::Sonic_06_Toolkit.Properties.Resources.logo_main;
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pic_Logo.Location = new System.Drawing.Point(9, 8);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(86, 83);
this.pic_Logo.TabIndex = 7;
this.pic_Logo.TabStop = false;
//
// pnl_windowCheck
//
this.pnl_windowCheck.AutoSize = true;
this.pnl_windowCheck.BackColor = System.Drawing.Color.Honeydew;
this.pnl_windowCheck.Controls.Add(this.NOW_LOADING);
this.pnl_windowCheck.Controls.Add(this.pic_Logo);
this.pnl_windowCheck.Controls.Add(this.lbl_unpackState);
this.pnl_windowCheck.Dock = System.Windows.Forms.DockStyle.Fill;
this.pnl_windowCheck.Location = new System.Drawing.Point(0, 0);
this.pnl_windowCheck.Name = "pnl_windowCheck";
this.pnl_windowCheck.Size = new System.Drawing.Size(259, 97);
this.pnl_windowCheck.TabIndex = 8;
//
// NOW_LOADING
//
this.NOW_LOADING.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("NOW_LOADING.BackgroundImage")));
this.NOW_LOADING.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.NOW_LOADING.Dock = System.Windows.Forms.DockStyle.Fill;
this.NOW_LOADING.Location = new System.Drawing.Point(0, 0);
this.NOW_LOADING.Name = "NOW_LOADING";
this.NOW_LOADING.Size = new System.Drawing.Size(259, 97);
this.NOW_LOADING.TabIndex = 8;
this.NOW_LOADING.TabStop = false;
this.NOW_LOADING.Visible = false;
//
// lbl_unpackState
//
this.lbl_unpackState.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_unpackState.AutoSize = true;
this.lbl_unpackState.Location = new System.Drawing.Point(105, 46);
this.lbl_unpackState.Name = "lbl_unpackState";
this.lbl_unpackState.Size = new System.Drawing.Size(33, 13);
this.lbl_unpackState.TabIndex = 6;
this.lbl_unpackState.Text = "None";
//
// Status
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(259, 97);
this.ControlBox = false;
this.Controls.Add(this.pnl_windowCheck);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "Status";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.Text = "Status";
this.Load += new System.EventHandler(this.Status_Notifier_Load);
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.pnl_windowCheck.ResumeLayout(false);
this.pnl_windowCheck.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.NOW_LOADING)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
internal System.Windows.Forms.PictureBox pic_Logo;
internal System.Windows.Forms.Panel pnl_windowCheck;
internal System.Windows.Forms.Label lbl_unpackState;
private System.Windows.Forms.PictureBox NOW_LOADING;
}
}

View File

@ -1,232 +0,0 @@
using System;
using System.Drawing;
using System.Linq;
using System.Text.RegularExpressions;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class Status : Form
{
public int notifState = 0;
public string notifModifier = string.Empty;
public Status(int state, string modifier)
{
notifState = state;
notifModifier = modifier;
InitializeComponent();
}
void Status_Notifier_Load(object sender, EventArgs e)
{
if (Properties.Settings.Default.NOWLOADING == true)
{
NOW_LOADING.Visible = true;
Text = "NOW LOADING...";
lbl_unpackState.Visible = false;
pnl_windowCheck.BackColor = Color.Black; BackColor = Color.Black;
Width = 275;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) & notifModifier == "ARC")
{
NOW_LOADING.Visible = false;
Text = "Unpacking ARC...";
lbl_unpackState.Text = "Unpacking ARC. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 284;
Height = 138;
}
else if (notifState == 4 && notifModifier == "ARC")
{
NOW_LOADING.Visible = false;
Text = "Processing ARCs...";
lbl_unpackState.Text = "Processing ARCs. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 288;
Height = 138;
}
else if (new[] { 2, 3 }.Contains(notifState) & notifModifier == "ARC")
{
NOW_LOADING.Visible = false;
Text = "Repacking ARC...";
lbl_unpackState.Text = "Repacking ARC. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 284;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) && notifModifier == "BIN")
{
NOW_LOADING.Visible = false;
Text = "Exporting BIN files...";
lbl_unpackState.Text = "Exporting BIN files. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 295;
Height = 138;
}
else if (new[] { 2, 3 }.Contains(notifState) && notifModifier == "BIN")
{
NOW_LOADING.Visible = false;
Text = "Importing collision...";
lbl_unpackState.Text = "Importing collision. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 290;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) && notifModifier == "ADX")
{
NOW_LOADING.Visible = false;
Text = "Encoding ADX files...";
lbl_unpackState.Text = "Encoding ADX files. Please wait...";
pnl_windowCheck.BackColor = Color.AliceBlue; BackColor = Color.AliceBlue;
Width = 300;
Height = 138;
}
else if (notifState == 2 && notifModifier == "ADX")
{
NOW_LOADING.Visible = false;
Text = "Encoding WAV files...";
lbl_unpackState.Text = "Encoding WAV files. Please wait...";
pnl_windowCheck.BackColor = Color.AliceBlue; BackColor = Color.AliceBlue;
Width = 300;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) && notifModifier == "AT3")
{
NOW_LOADING.Visible = false;
Text = "Encoding AT3 files...";
lbl_unpackState.Text = "Encoding AT3 files. Please wait...";
pnl_windowCheck.BackColor = Color.AliceBlue; BackColor = Color.AliceBlue;
Width = 295;
Height = 138;
}
else if (notifState == 2 && notifModifier == "AT3")
{
NOW_LOADING.Visible = false;
Text = "Encoding WAV files...";
lbl_unpackState.Text = "Encoding WAV files. Please wait...";
pnl_windowCheck.BackColor = Color.AliceBlue; BackColor = Color.AliceBlue;
Width = 300;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) && notifModifier == "DDS")
{
NOW_LOADING.Visible = false;
Text = "Converting DDS files...";
lbl_unpackState.Text = "Converting DDS files. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 304;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) && notifModifier == "PNG")
{
NOW_LOADING.Visible = false;
Text = "Converting PNG files...";
lbl_unpackState.Text = "Converting PNG files. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 302;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) && notifModifier == "CSB")
{
NOW_LOADING.Visible = false;
Text = "Unpacking CSBs...";
lbl_unpackState.Text = "Unpacking CSBs. Please wait...";
pnl_windowCheck.BackColor = Color.AliceBlue; BackColor = Color.AliceBlue;
Width = 290;
Height = 138;
}
else if (new[] { 2, 3 }.Contains(notifState) && notifModifier == "CSB")
{
NOW_LOADING.Visible = false;
Text = "Repacking CSBs...";
lbl_unpackState.Text = "Repacking CSBs. Please wait...";
pnl_windowCheck.BackColor = Color.AliceBlue; BackColor = Color.AliceBlue;
Width = 288;
Height = 138;
}
else if (notifModifier == "LUB")
{
NOW_LOADING.Visible = false;
Text = "Decompiling LUBs...";
lbl_unpackState.Text = "Decompiling LUBs. Please wait...";
pnl_windowCheck.BackColor = Color.AliceBlue; BackColor = Color.AliceBlue;
Width = 295;
Height = 138;
}
else if (new[] { 0, 1 }.Contains(notifState) && notifModifier == "XNO")
{
NOW_LOADING.Visible = false;
Text = "Converting XNOs...";
lbl_unpackState.Text = "Converting XNOs. Please wait...";
pnl_windowCheck.BackColor = Color.FromArgb(239, 224, 201); BackColor = Color.FromArgb(239, 224, 201);
Width = 290;
Height = 138;
}
else if (new[] { 0, 1, 3, 4 }.Contains(notifState) && notifModifier == "XMA")
{
NOW_LOADING.Visible = false;
Text = "Encoding XMAs...";
lbl_unpackState.Text = "Encoding XMAs. Please wait...";
pnl_windowCheck.BackColor = Color.FromArgb(239, 224, 201); BackColor = Color.FromArgb(239, 224, 201);
Width = 284;
Height = 138;
}
else if (notifState == 2 && notifModifier == "XMA")
{
NOW_LOADING.Visible = false;
Text = "Encoding WAV files...";
lbl_unpackState.Text = "Encoding WAV files. Please wait...";
pnl_windowCheck.BackColor = Color.FromArgb(239, 224, 201); BackColor = Color.FromArgb(239, 224, 201);
Width = 300;
Height = 138;
}
else if (notifState == 0 && notifModifier == "exiso")
{
NOW_LOADING.Visible = false;
Text = "Extracting ISO...";
lbl_unpackState.Text = "Extracting ISO. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 278;
Height = 138;
}
else if (notifState == 0 && notifModifier == "deep-search")
{
NOW_LOADING.Visible = false;
Text = "Searching ARCs...";
lbl_unpackState.Text = "Searching ARCs. Please wait...";
pnl_windowCheck.BackColor = Color.Honeydew; BackColor = Color.Honeydew;
Width = 285;
Height = 138;
}
pnl_windowCheck.Width = Width;
}
}
}

View File

@ -1,264 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="NOW_LOADING.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAQMAAABhCAIAAABd+FN5AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wgAADsIBFShKgAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMS42/U4J6AAAIAJJREFUeF7tnAdY
FVfX75FmKErvYAVBehEBe48aBUQBKaKgiCIK2DEqIqBSpUhQUcAWe+8ivaogmqixl9iNAeWoo26P69sz
e5gcI/h673NzH98v+/esTMiaPTPnzFlrnf/as0+kKBQKhUKhUCgUCoVCoVAoFAqFQqFQKBQKhUKhUCgU
CoVCoVAoFAqFQqFQKBQKhUKhUCgUCoVCoVAoFAqFQqFQKBQKhUKhUCgUCoVCoVAoFAqFQqFQKBQKhUKh
UCgUCoVCoVBaoQ3/7//9/Hve6f8VbaTa4DtE7F+G8L6/8q3/n47/1vhvf/3/MNJtpKXb4GRgjXf9S1BQ
V1fU1FTS0tK2stCxsFDS1MJbbLo2lspa2orqGvw4AWkuhsj226a9qpqaplZny+5dLCxU1TW6WlhgU9fW
Nra2xFsVdXV+3L8JDRVVbNam3SxNjDVV1fDW0tjYvGsX/Ld5l85q7drLsJnAJgM2/phvmXYdOhqPHdvN
07Obt7cpNk8vbArqmvxuCbStrczGju2OzcND28qS93KoG3fp7uY6ZGnM8PiE0SlpgUeO+O/cNTJu1YSd
uwJ27go6csAtJXn4smgHPx99W2v+GIy0lIO3Z08/X2y2rm565ua8n8NhzJgeY8a4+Phgc/b27uXj007j
k1xy8vDA5uzh4Th6tLLal2JRTVfHZfToXq6uxHjv19G5u9kwb6+pS5fMTk5OO7I/eeeusKXLU3buSt25
Kyolbe2RI4tS0sKjlw92c+1g3IU/pnWsHOxHjRvHmocHNktbG35HS7iPHYvN09sbm7ePDzYfX19sfs1g
h8/48c4uzg497DU+KzQ9HR3GjxuHzdvDo2cPB+LUVNcY7z5mvBtr3m5uHiNHYrMwMyV7JTHr2nX0oCGe
I0YQ470cqu3aO9vaxEybERMSeigjY09ySsLM8D2JSXsSEncnJiTMmLk7YdWiiYETho/oYdad5AN/5LeM
qY/3HIC5APMA5gMsEMNCMVhOmMDvbgZ/yw1JWhUDsBwgFmBoQrygCvTt7Hx+3hbT2JCEIBlBCoJUBIki
JknEJIuYFBGTipjViElDTDpiZp4+aTKwP1cmpPHh69+hjWLIFcP618yYuBjuUtxp20jlMUw+w2wH2AGw
E2AXgNNYD36AlJSyqtoBgIMAhwAOA3S2siEvpkWcRo0sBsBWAlAKwHu/CP74MFbOThmHDtYjdAGhiwj9
glBto6iuUXS+UVTfKLqO4AaCmwhuIbjwsiFtxzZzO1v++JaQlZM7VlX5XAx/iqEBoBHgaHmJgoICv/sz
3gMggA8AYoCPwPHxI4jF8OEDIATv38O7d/D2bW1NVdGpEzGLFuvr6PFHcsoka3UyNDTAn3/C8+c/rU4i
d9XK1BwePoYHj+D+Q3T3LrpzB92+vTM7iz+MwI30GjlSVF8PV6/Cb7/BlSuCX1td/cfg4Lod26GuHmrP
w7k6UXGZqKhUVFgiOl3MlJUxpaVMSQlTXAxlFTVr1/kOHioj/d+QCd0DfBYALASIAlgE8CPAYoCgszXK
Orr8CA5paVnXddnxACsAVgK4/pTOqhppKWVN7aknTpLoX40gDUE6ggwEmQjWIMhC8BP7n0wmYtYgJgsx
OQBLztdpGnaSkZbDp11cWbUJwWYEWwACc7LJtfBpVfV0SfTvBtgDsBdgH8D4+OZUkZKy6NP3CI4kgGMA
xwGU1VTJ59Qizq4jywEqACoBqr4uE2RkZHQNDPddrL8C8BuCqwiuIcChf0nEXBYxV0TMbyLmDoK7CO4h
+B3BfYAHAFtPHuOPb4m+gwY2vBO/RNCEQATwCuA1gL19D373Z7QW+sAw8OYNvH4Nr16BSARNTfDyJbx4
kZWQpKetQ46VlZbNSU+Fp0/hyRN4/HhtaiL5vMxNusHvv8O9e3D3Lty5A7dvw61bLy5esLeU+ELm7qTP
6JHMxfPw66/wyy9w8SLvl5YKGD3qw9mzcO4c4O2ZM1BTwxSVMoUlDE6DgiIoL4eyMigthZISOF0MBUVv
j55w7N7Cd843h0WADw79JQBLAaIBlgGQwm8fFMSP4MCZ4Lk5LxEgCSAZwDNvHbmzjn4T/hb6cysqIwuL
Ik8X+WWunX26aELm2jnlhdnvXq9993o9YvIBNgEMmzmLZEJARvrPCLYjtvCvrK8l18Kn7d67Dw79/QCS
hX9KZio/QEpq2MSgkwCnAAoATuPgJmnQSib0HetWDVADcAbg7Ndlgqys7ILEpGsA14Ev/NfevN9eVJx3
9Fj+0WObONtdXLKnuOT+O/EjBI8BngA8BbBxbDmy27Zte6K45AWDXiN4g4ABeAvwDt+NzVv4EZ/xNdEP
jY1C4Yc//gjy9SXHyknLblqTAQ8fwoMHcP/+2qSV5POy6mZKoh9u3oQbN+D6dbh2DRf+7atTyIEsXMRP
cBvF1J0B/LVw/jzU1bF+7gyVuTk4+qG6GqqqoLKyNm9jQWpqQUpqQXJKQXJycfrq3LnzXx09CqdPw4kC
OH4Kjp0sTkjgzvttYxngI0T/nDu3l3/4QAp/6Nka3PLyg/AdkJYdvzkvFWA1QBqAd3MmzCosIoU/G8Fa
BOMSUoz79O7q4mLcq5eGQSe81TToZDqgb/8pk3MYUS5itgJsA4g/Xycjw2bC0OCQXQh2I77waxgYsheT
kbIdPJREPy788acKSOFPrapg93JMWbWqEKCI0zxppUVfzoTBPuNqAeoAzgPUf10myMnLX37z5jbAHWAL
/603732Dgh1ceuFAJ2br2KNHLxdscUmrn74TPwf4E1jNE4Orb0t0NTZ+807MvBO/Rzi2xYLmQQgZknf9
GZKhnxwbHzhhQqC/P7YgP78gbjtlwoT1KX8Vfnj0qObYUXKsnIzspozVQuFfmxBHPi8bMzMS+kTzXDp0
CC5dwoX/QWGho9D7cSMDx7gyNZVC4Sf+jnq6H3DJby78xRlpAx3seltaCtbHyrKjlk7gsGGVaalw5Bgc
PgqHjrzds0+xbVvu1N8wNhN9Bc0z5eSp6RXliWJIEkOyGByDAvlB+CZIy/lszMkEWAOQBeCXn0PuV9ab
t+vFkCOGDWJYde2mqq4+GU86AWzs7AHH4pLCbQgJmke6jQwepm3Ucc87tPcdOiiGQ2Kw7jcIO6XlZNxn
R+DQP4Ht40e3aTNOffyIC/+pdwgfxZl09tkarPjLALDsGTsz7AtpgBnq63kB4CLALwC/fl0mqKqp3wP4
HVjZc+8d2n7yJDcNgt/z39HT1S8/f+EFwEuAJoB1W/L5HZ8SEjb9g5hVOh/FUF1TXVVVCUgM7z/AOxQ6
NYSc/G/nlyz8dpZWvPdTOhkZlR/YD78/gHv34e7vcOdeJy6v5KXl8pIShcKfl8x/J9iamsHlyyT6UX39
vImT3tfWotpaUUXF6XXZcnK4l5ElIye7uzIVpaTwQwVXg9pITXN3ZWUP7gGKiqCwsL9dq+2ZZ5/ecPAQ
HDgI+w/Avv1Gmi3MwXxb2AX6JwAQ2TOjuMzk+yGC4p9XX6dqYESG4RLun7chG2At/rABJm7eSO7XRoBc
gDwALHsmZjcL/ZYYOmXqHsQrfix7tIw6EP+upqZ9DHMUwTEEo6aFYo/sd/Lzfs4nsmfdxfoB7l5FYjHb
7CIw7GQiKyOHrfDVK6z4iebpMYjNny8wxNvjMgCr+AGufl0mdOzS9RHwmucew4zz9+d3tET+jh1Y8b8B
VvMUVZTzXgn09fRrz9cKin96SEjI5GB49RZEDDS9OVNShmU9Mf4ADkHzwLNnFt1aldpTvMbDzTtw4zZc
vwXXbg5x6o2dOBPyE1eRwo9DPy8hnnxedjgTLlwgmoeprjYxNGosLmYqKnDh/1BVZd6ls6Lid2TkFPfR
TPFpXvEXF5NrZYbPhIICOHUKTp5kDh0iI1uko6bWllnhuaGhxbExudOn66qo8ju+WRwC/QXNE/vwMVYm
c2pq+GYXoH8oG5oYnAlBWzdtACChH0QyQUZqM7DNLtE8wyPDyeAWMXfucxDxih9rHlL+MUnlpYcZ5hSC
AgTha9lcklWQ3/DrBTLVs3j71gFu48o+fmT7XQQug0bgNDAw6kIU/zkALHv0O3Ump2qNod4evOIHuPl1
mdC5q/EzgD8AsOx5xDD29o78jpZYErsMK34y1fPnyxe8V4KJAQGC4q87U93RqENHww7v/2iERhE0NOFj
BvTpIystg40/gENS9lh068Z7P8NQRw9+uwFXrsPla3Dp6kw/NmnZTFgZL/S7efHLSdTa40yorSX9LlNe
jjMha868N7jGc4U/b2GUUnMmhOBMKDiBCz+r+AsKyLVy5kTA8eNw7BgcPVqdmkJGtoiKoqJVxw6WHYyG
2FiZGRjIyXzy1r5FegT6ZwAIsgcHN45+rPjXIViPA7G+TrMjG2c4E4K3biL9Lo7+KTgT8FuTkfoZQJjo
/D6MT5sW6d6zF1v4OcWPZY9d/8HEH5adcZxhihAU4257w3rskVOQF6Z6AhctNrN24JtdBH6zZsvKyDsP
+J4ofqx5qkWitt+1OhFJGOXvzSt+XOC/LhO6mpg0AhDN8+w/ZUJAYIDkLCfvlaC8pFBQ/JFhYcSZk5oO
fzTAsz/h6fOa4ye4TPj0O4FrdslUj4VJq5mAgV+vwC+X4eIluPBrJDcDzmZC3HLS7OLQz4uNJlHLZkJz
s8sUFQ21d+xmaPQa13iu8H8oLLTs3JmMDMXq6PgRXPvhxAkc/eRCeTgTDh8G3F0cPJgXOYuMJHTQ0rTv
0tm2YyeHzp3t8LZTZ6sORtjMDQzM9PXVlZT4cd8sPYMmCJoHhz6WfRpGHZbU1eWKmzVPVjZ2tpGRCdma
jws/Cf2Q5kyQnOUc0fwF0iLmzr2PIyTM9lg6s1/imFHBwQWvmTIxlIsht64OtwGaBvrCVM/g0Z6KCu1q
xVAnhvNiWJa/sW1bhX7DRhHFfwmnZXkpOc8XGOXnRRT/A4CHX5cJJt1MhYnOpnfIydGZ39ESAUETJCc6
eW8zuPyj5w3Q+BI1PH/77EmXDp2wU0ZaxqRjV3jyDB4/hUdPxPcfdtAz/HufIDHRad7VmPe2BFz4Beov
Qt0FqK2P9PXD0YkzYSvOhOZ+Nzd6MYla+26mQr/LnDg12MZeRlq6ODWVFH4se7ZHRcnLymKLGOPetG8P
HDlCQh9fRaaNdH5EOOzbB3v3wp49eeEzJDMhbMSwQ3Pn7I+IPDx7zv7w8MORkVuCp24JDs4NDMQ24Nuf
SHUM8MkBEGQPcQ4LDxdkz+b377VxnZCRmr4tT+h3Q7fwmSA50TmSU/mtYe7kcgIxwuMtU3v+qaeuYccS
ESOEvpyMfJ8RPwhTPf2GjsaeXXX1vyA29HecO6ugrBw4Zy5R/FjzTJ4zl5znC4z29RRmObHm4b1fxNTU
jMxyspoHgbOjC7+jJSYG+UvOcvLeZtYnp6FHT3HhZ548KD5ygDjlZeSw1Z06IRT+sEmTyC4ByVnO/5AJ
XOGHmnNQfTbCx4fPhJhlRPPg0M9dEsVngkk3od9lDh8baMk+5B5gYyPGmqdZ9ozo0UNZ/rvZ7u4N27fC
gQOwfz+OfjxMXlp2C+4Tdu2CnTthx478sGmSmZATPBk2bYL8fMjLg9xc2LgRNmyAnBxYvx7WrfN1/tKX
6jeBU4CPoHlw6BOnVoeOK+rrhIe7IyPCcdCHbcsjzS62mc2ZQEQ/ecJF+t3WsHByOY0YQfaY2tvzO6Sk
ShtFRPHj6O/YpZv31BnCVE/nLmY4E+Lz864gtt+99P69opJS4tZNRPHfAhgwbCR/ltZx9fUkip9MdPLe
L9K9e/e/Hu7i/uSLmRA0OUByjp/3chjpGby9+wAePoUHT5j7d4Mn+BE/mwnScuGBk4XCX3v4oL4W/1yM
IPS7cOmShXGrmWCgqU0KP1RUQ3lVhJcXnwnRS4R+N3fRfBK1dsbGpN/FmofZd7B/d35Kasfc+eKDB7Hm
waFfvCKWzQRX14Yt+bB7Nwl9PIbNhLBQ2LYNtm6FLVvyp09lJ46a545yJk+SDH1Yuxays+GnnyArC9as
mdjLiR/3zeIS4EP6XSJ7eK+U1PehoYLsSa6v1e7cKXxbntDvRjRnAlb8whMu9xkz+YNbwtLJpRQxwuMt
Uzs7foeU1MaSUiH0+wweMTcpSZjqwWnAZsKGHPbxFhf6isrKRy6cJ4ofax5j0+78WVrHzddTmOXEmof3
fhFzc/O/Hu6+ed/7y5kQ6C/5eIv3ckz19Ue378G9B3D3PnPnRnrMstCAgNCACXMmB0dMClwfGy9Z+IPG
juUP4yDNLpnqsejalfd+Rh9LG1L4obgMikpnenhwmSC7dfEiod/NXTCHZIJtly6k8GPZw+za29eUf7Ts
ZNwN4aDnZE/D5rwR9nZj7B0b8jbA9u3w8884+vEYNhOmTxMKf82SHyUzYZCZ6YwBA0L79Qvt339Gv37Y
IDMTMjIgPR3S0iZ++98Jzr6ekusaeK+UlKaBYXLtWeH57g/TZizcuUPod+fgTODubN71q8ITrqkrV7Y4
L07ul0O/ATUICbJHS49/8oCZFRuHFT+JfjefCRn7914Tw3UxHL98iTxACAqPuCPm+91O3UxYxS+Gh2K4
9/Z92+++48/SOmN8PYniJxOd/Of3uUmgo63918PdV28G9xkoKyOLjd/9KQtmz4Jnz8hUz9XKcslzlu/b
C3fuwe27cOsOunkd3biGrl9F134Tol+y8Fds2yJ5rNDvwrlz9t3M+IthJMZggkaMhOISKGKXNsCpwiGc
9GejduEC0uzi0N84N4LPhE6dSeHHmofZubN3N76OKH33XVbQZLRtG9q6ldm8qTIm2sfJ5U3uRti8mYQ+
HiPTpk1O0ESUsx6tXwfr1jOZa4TX0CKA24+UFEhOhqSk4WYSr78V2rQA9xOH/z/08vMS5vix4ue9HD1+
GCmEfnpVzbyN/Bw/Dv35zZkQe2AvebyFNU9e3XkZaTnOPo0YbuT4sLAL6K/HW7Jy7DNmQt8hw4VZzvDo
mKMXf7mN4A6Ctfv3kgG9+g4kze4jgDF+vqziR/AMwcEifp77y4zz8xJmObHmIa+nBZNAVlaWTPUQzfNT
UqqCvIKCfMtZV3p4n7CuYV8u/8wRm3MPu8/XNUiGvjDLKczxG+hoC4fzmoeb6nExl1j82zwAm766ZlFy
Cpz8a2mDsY4+TgM5adnN8+YI/e7GyJlkvHXHTqTwY9nDbN/aS5iSkpYy1FBv2rCBwRJ/8+YPeXkLR/4g
qfjJqNCBA5isTGZNBmT+BBlZRqpqxP85HVRVITEREhJg1SpYudLFkH18pKOkjM1aV0dLUclCW0tdQYHk
UndtTS1FRX0lZRsdbR1FJek2bP3TVVLSVlQ001A3UVNrLy9PTvsP0sfPSyj8WPbwXo62ioqrK8uF6M8s
rxT63YXNmRASHy884TqDwD0oWM+gk46ekaaOHjYNHV281TEwcA8M3FJRcQnxhX9P3TkcavxlsNI17Ihl
D5noXL9v/y0GsWvaECyIiycD9A0MhX43NWc9q/gRNCBYvIIf8GXcvcZILufs0783Nufezn369e7Vx7lX
b+eeTj3w1qmnY+9ezr1dnHW0tPHLO1taJKzqefPgwbCBA006dNHT1samq8Wbi6PDJG9P5vYNYU3bynm8
Ise2Oyvja6JfKPxw9mxyRPPUJM6E5n4Xysqmjh7d19a6l5VlXxur3jaW/Wyte1tb9LO1Sp4cjA5hqXMc
Dh+DQ0fRvoM4B4htmDWDNLs49DfOCiXntDLqgJtdonmYLfnOQiPOReRqH18GS3wu9CsXLJRU/GTUQONu
TPpqJi0VVqdDalrWmHH9jbsaqKjw1l7FsL0qtgFdumS7ukN8PMTFQWwsLF+uq6yMD3cxMEwcOmSPp2fC
oMHb3N1cTUzwRXEO7B07JnHggJ+GDD3l5RloaYm/fHAOpPbvn9qv30HX0Xt+GDmqEzvh9s/S189LKPxY
8fNejrYKCg5DB5PQFwo/Wc45f0M2ubMO/QcKze55BDVNb5auWTc/KS0iYVVks0VnZte/fM0v5+QKf0BY
mGQmKCm3O/vwAZnlrH34gF3QhuAJgt4DB/IjpKRO150lK5nrb99kFT8CEQJX97/WaX+BMZ7ukrOcNVXl
NZVlNRWlNeUl1WXF1aVF1SWF1cWnq4sKqgsLqk8X2Fta45cXNmWKoHng8eOaY0c3JKSsWrSItaioFQvm
Jy5adGLbpqbffmWuXxEK/2AnF3Jn9LS0fscyvTn0D2akB7q5TcLm6sra6NGsjRqFrSArU6j9z44f0VZX
I2cQ+l0oKqpbv7YyM70yI60yPa0mM6MmI70mI60mfTWOfjh4BA4chv2HYN/BnJAZctIyxLJDgoV+Nztk
MjmnhYEh6Xdx4WdyNzgKDyW5TNBXVW3Cyv6zfhcrfjLKUEW1KXElk5wASSmQmCxelVgRGpoyalTyDz+k
sDYy44dR2CqnBuPoh5gYWLYMoqOrmldz+ltZMgvnN0ZGNkZENIaHz3VyxBe11dJiIsOZiFkQGQkRERkD
++NMsNXUhLAwmDEDQkNh+vSVzv98w93Ha+wpMRSI4bQYCsWfZAInjGUzS4vLEKoSQ7UYasRwRsz2u1E4
E7h7p9y+/dZzNXy/K4ZfxXBJDJfZP9AlMbosRlfECCv+G2K4KYZbYrbwH6k/j78EZD7V3Gv37nggRg/F
6JEYYdnzB4LnCMwlFtukZGc1iUEkhldieC1m5/hF75CWpja/+4uM8/SAN2/hNav4QfQaml7BSxG8aILG
l9DwAv5shOcN8Mef8Ow5PP0DnjxzsLSRlpY21NFjbt1hbt6WfMKFbt9Et25IKP6r6Opv6Lcr6PJldOlS
0aY81fbtyTqrKR4eIhzczYXfoXurnb1b377CHL/o5HGvQQP4TCg4DacK4OQpOHESjp+AY8fh6DE4chQO
H4FDh8mqHrRnL9q9B+3ajXbuurEmq6O6ptCqZQdPJs0uDv3MwAD2Sm2krA2NIDcPNubCho3Mumx7TrRI
ku7piTIyUHo6SktDq1fD6jRIXQ0p3Cpg7hNPc3NFq1bCylWwYiXEr4C4eBS7HC2PQTHL0LJoEvqwdCks
WcIsXMgsWMDMn+9jbsGdW2q+i1NjxCxRRLgofJZo1swFOBOkuEyYOYMJCyWhn9G/L1ZHdhqaEBICU6dC
cDBMmZLk3JOc4R+kzxj3YgQliF3VU4Y+yQSCuZNjOcOcQ1CLoA6xhb8eYNG6v37bYe3ivP1cjbCqR3Jd
g6B5hKmePeVlngGTcCMh8+nKggUrYh4g5iFiHiGmEcELBC8RSAb6rLmzGQRvEbzDlR1/ITDMK4bh9/0n
PNzd4IUIGpug4SX8+QKeNwoPd+HJH/D4GTx6Cg+fwIPHcP8R/P7Q3pzPwOhZkXfLKoXHW19Q/ExdXcGG
9U427C/yZNuw6ybObN0syJ7SdWv/tpJCEvV27auzs/g5/mPHCpIS2EzAHfPRE4LskSz8sPcA7NkPu/fB
rr0MFjnbtjXk5h6YP3eotcTvAaWk1gUHCv1uNskEHHYGRrA2B7LXw0/rmMxMKz0D4hcwUlVtWLGCSUxk
EhIYLPETkyEhCVZxC2y5TDBQaX84IECQPULhJ9EPixfDjz/CokUQFYUL/51p05a4uGg2/xpphr3t42lT
mVlhJPS9uplgp7WGBjMthAmZCtOm4ejP7MM+crVWU4fAyTApCCYGwqRJaVzO/LN0MDX1n7twUtSSQM54
76cELYgKjY6dER0bRmxZ7MBPfwNp4+I8df7C/NMnd1WVE9tbXbWvump/ddWB6qrDZ8/kHT4Uk7La03+C
fc+e6mqaOA2kubWoAha21nMWLZrL2dJlcdGc8fs47Bzsl0XHxkTHLo+OXfpjdNSCqLBQftnCf8TUxGTJ
7HnYls+LWj5vYdz8RXHzouLwH3OJLYibsyBu9vz4OfNjwmfHz56n1fxLSC019RH9+seGR57anF+xc0fF
ju3VO7dX4+32n6t/3la9fVth7obCjTlxoWHjhw93sOBnJGVwJrSRiZs6LW5qyKrpM5ZMDHRmtS+O7lZx
NDON9vOP9vX/cfx4bCQT4v0mxPty5uPPmV/8eN94b2w+8V4+8Z7YxseM9fTt1cvL2dnS6O9Lu8f16BHr
NibWzT3G1XVs89MbDSWl5SNHLfl+xPIRo5YMH66moEj8koy1slo6ZMjSwaytGPo9a0OGsTu4TMBmq6c7
xd4+ddiwisBJFYETawIDayZNqpk0sWZiQM3ECTUB/ofHeaQNHLTE2XlYp05CGmDM1NWiejhEOTjE9OwZ
ZW+vw11do23bxfZ2i+3sYuzssY3vwv4IFjuXWtkstbTGNt/c3NWw5YXr/y+RlZNTVG6n1K49NuX2Krz3
U9q1V1FRU5c07OH3NYM9ZtZWlg722Gydeto5ORGzx9uePa3s7LS1dEkCcN/d7JY/shkVFVU1fHIVVXU1
dWL8Dg4lRSXsUVPF/6irqqhiU2zpU2wROTk5Ffz62rVXw5dQUdVQVWs2dYm/1TTY96aKt/xhzWioqNp0
N3OwtHCwNHeytubNyrqHpbmtmSk2DZVP7gYOemxa7VWx6aioabRT+Zrf8qort1NVUlJTVsZGAk5DuR0x
zXbtNfG22Zr9ysT44z9DVUFRHd80RSU1RUUViaVZOPrxf+Ktaus/HFXDA75T0FRU1FDgjfU2ZwI2WWlp
XSUlR309bM76+qzp6WHrqY9N115HWw+/l7YtTLWptW2rKi+vzm15F3bKt1WTl+e27B/EqSonr4I/ODm5
drKySq3MX/8XwE8HfxF+6H8V/Evn4F2fQf6/Jp8bv/t/BfwtIEi+TQ4s9DH8UAqFQqFQKBQKhUKhUCgU
CoVCoVAoFAqFQqFQKBQKhUKhUCgUCoVCoVAoFAqFQqFQKBQKhUKhUCgUCoVCoVAoFAqFQqFQKBQKhUKh
UCgUCoVCoVAoFAqFQqFQKBTKvxspqf8BBliN/R5gyA0AAAAASUVORK5CYII=
</value>
</data>
</root>

View File

@ -1,360 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class ADX_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ADX_Studio));
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Title = new System.Windows.Forms.Label();
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_ADX = new System.Windows.Forms.CheckedListBox();
this.mstrip_Options = new System.Windows.Forms.MenuStrip();
this.main_Options = new System.Windows.Forms.ToolStripMenuItem();
this.options_Modes = new System.Windows.Forms.ToolStripMenuItem();
this.modes_ADXtoWAV = new System.Windows.Forms.ToolStripMenuItem();
this.modes_WAVtoADX = new System.Windows.Forms.ToolStripMenuItem();
this.options_Volume = new System.Windows.Forms.ToolStripMenuItem();
this.volume_5 = new System.Windows.Forms.ToolStripMenuItem();
this.volume_4 = new System.Windows.Forms.ToolStripMenuItem();
this.volume_3 = new System.Windows.Forms.ToolStripMenuItem();
this.volume_2 = new System.Windows.Forms.ToolStripMenuItem();
this.volume_1 = new System.Windows.Forms.ToolStripMenuItem();
this.volume_0 = new System.Windows.Forms.ToolStripMenuItem();
this.options_Looping = new System.Windows.Forms.ToolStripMenuItem();
this.looping_Ignore = new System.Windows.Forms.ToolStripMenuItem();
this.looping_Remove = new System.Windows.Forms.ToolStripMenuItem();
this.options_DownmixToMono = new System.Windows.Forms.ToolStripMenuItem();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.mstrip_Options.SuspendLayout();
this.SuspendLayout();
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(24)))), ((int)(((byte)(127)))), ((int)(((byte)(196)))));
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(440, 69);
this.pnl_Backdrop.TabIndex = 36;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(363, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(210, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "ADX Studio";
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(24)))), ((int)(((byte)(127)))), ((int)(((byte)(196)))));
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 40;
this.btn_Convert.Text = "Encode";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Convert_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 39;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 38;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_ADX
//
this.clb_ADX.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_ADX.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_ADX.CheckOnClick = true;
this.clb_ADX.FormattingEnabled = true;
this.clb_ADX.Location = new System.Drawing.Point(8, 76);
this.clb_ADX.Name = "clb_ADX";
this.clb_ADX.Size = new System.Drawing.Size(417, 304);
this.clb_ADX.TabIndex = 37;
this.clb_ADX.SelectedIndexChanged += new System.EventHandler(this.Clb_ADX_SelectedIndexChanged);
//
// mstrip_Options
//
this.mstrip_Options.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.mstrip_Options.BackColor = System.Drawing.SystemColors.Control;
this.mstrip_Options.Dock = System.Windows.Forms.DockStyle.None;
this.mstrip_Options.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.main_Options});
this.mstrip_Options.Location = new System.Drawing.Point(278, 386);
this.mstrip_Options.Name = "mstrip_Options";
this.mstrip_Options.Size = new System.Drawing.Size(69, 24);
this.mstrip_Options.TabIndex = 43;
this.mstrip_Options.Text = "menuStrip1";
//
// main_Options
//
this.main_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.options_Modes,
this.options_Volume,
this.options_Looping,
this.options_DownmixToMono});
this.main_Options.Name = "main_Options";
this.main_Options.Size = new System.Drawing.Size(61, 20);
this.main_Options.Text = "Options";
//
// options_Modes
//
this.options_Modes.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.modes_ADXtoWAV,
this.modes_WAVtoADX});
this.options_Modes.Name = "options_Modes";
this.options_Modes.Size = new System.Drawing.Size(174, 22);
this.options_Modes.Text = "Modes";
//
// modes_ADXtoWAV
//
this.modes_ADXtoWAV.CheckOnClick = true;
this.modes_ADXtoWAV.Name = "modes_ADXtoWAV";
this.modes_ADXtoWAV.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.A)));
this.modes_ADXtoWAV.Size = new System.Drawing.Size(180, 22);
this.modes_ADXtoWAV.Text = "ADX to WAV";
this.modes_ADXtoWAV.CheckedChanged += new System.EventHandler(this.Modes_ADXtoWAV_CheckedChanged);
//
// modes_WAVtoADX
//
this.modes_WAVtoADX.CheckOnClick = true;
this.modes_WAVtoADX.Name = "modes_WAVtoADX";
this.modes_WAVtoADX.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.W)));
this.modes_WAVtoADX.Size = new System.Drawing.Size(180, 22);
this.modes_WAVtoADX.Text = "WAV to ADX";
this.modes_WAVtoADX.CheckedChanged += new System.EventHandler(this.Modes_WAVtoADX_CheckedChanged);
//
// options_Volume
//
this.options_Volume.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.volume_5,
this.volume_4,
this.volume_3,
this.volume_2,
this.volume_1,
this.volume_0});
this.options_Volume.Name = "options_Volume";
this.options_Volume.Size = new System.Drawing.Size(174, 22);
this.options_Volume.Text = "Volume";
this.options_Volume.Visible = false;
//
// volume_5
//
this.volume_5.CheckOnClick = true;
this.volume_5.Name = "volume_5";
this.volume_5.Size = new System.Drawing.Size(80, 22);
this.volume_5.Text = "5";
this.volume_5.CheckedChanged += new System.EventHandler(this.Volume_5_CheckedChanged);
//
// volume_4
//
this.volume_4.CheckOnClick = true;
this.volume_4.Name = "volume_4";
this.volume_4.Size = new System.Drawing.Size(80, 22);
this.volume_4.Text = "4";
this.volume_4.CheckedChanged += new System.EventHandler(this.Volume_4_CheckedChanged);
//
// volume_3
//
this.volume_3.CheckOnClick = true;
this.volume_3.Name = "volume_3";
this.volume_3.Size = new System.Drawing.Size(80, 22);
this.volume_3.Text = "3";
this.volume_3.CheckedChanged += new System.EventHandler(this.Volume_3_CheckedChanged);
//
// volume_2
//
this.volume_2.CheckOnClick = true;
this.volume_2.Name = "volume_2";
this.volume_2.Size = new System.Drawing.Size(80, 22);
this.volume_2.Text = "2";
this.volume_2.CheckedChanged += new System.EventHandler(this.Volume_2_CheckedChanged);
//
// volume_1
//
this.volume_1.CheckOnClick = true;
this.volume_1.Name = "volume_1";
this.volume_1.Size = new System.Drawing.Size(80, 22);
this.volume_1.Text = "1";
this.volume_1.CheckedChanged += new System.EventHandler(this.Volume_1_CheckedChanged);
//
// volume_0
//
this.volume_0.CheckOnClick = true;
this.volume_0.Name = "volume_0";
this.volume_0.Size = new System.Drawing.Size(80, 22);
this.volume_0.Text = "0";
this.volume_0.CheckedChanged += new System.EventHandler(this.Volume_0_CheckedChanged);
//
// options_Looping
//
this.options_Looping.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.looping_Ignore,
this.looping_Remove});
this.options_Looping.Name = "options_Looping";
this.options_Looping.Size = new System.Drawing.Size(174, 22);
this.options_Looping.Text = "Looping";
this.options_Looping.Visible = false;
//
// looping_Ignore
//
this.looping_Ignore.CheckOnClick = true;
this.looping_Ignore.Name = "looping_Ignore";
this.looping_Ignore.Size = new System.Drawing.Size(230, 22);
this.looping_Ignore.Text = "Ignore All Loop Markers";
this.looping_Ignore.CheckedChanged += new System.EventHandler(this.Looping_Ignore_CheckedChanged);
//
// looping_Remove
//
this.looping_Remove.CheckOnClick = true;
this.looping_Remove.Name = "looping_Remove";
this.looping_Remove.Size = new System.Drawing.Size(230, 22);
this.looping_Remove.Text = "Remove End of Loop Position";
this.looping_Remove.CheckedChanged += new System.EventHandler(this.Looping_Remove_CheckedChanged);
//
// options_DownmixToMono
//
this.options_DownmixToMono.CheckOnClick = true;
this.options_DownmixToMono.Name = "options_DownmixToMono";
this.options_DownmixToMono.Size = new System.Drawing.Size(174, 22);
this.options_DownmixToMono.Text = "Downmix to Mono";
this.options_DownmixToMono.Visible = false;
this.options_DownmixToMono.CheckedChanged += new System.EventHandler(this.Options_DownmixToStereo_CheckedChanged);
//
// ADX_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Control;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.mstrip_Options);
this.Controls.Add(this.clb_ADX);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "ADX_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "ADX Studio";
this.Load += new System.EventHandler(this.ADX_Studio_Load);
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.mstrip_Options.ResumeLayout(false);
this.mstrip_Options.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Panel pnl_Backdrop;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_ADX;
private System.Windows.Forms.MenuStrip mstrip_Options;
private System.Windows.Forms.ToolStripMenuItem main_Options;
private System.Windows.Forms.ToolStripMenuItem options_Modes;
private System.Windows.Forms.ToolStripMenuItem modes_ADXtoWAV;
private System.Windows.Forms.ToolStripMenuItem modes_WAVtoADX;
private System.Windows.Forms.ToolStripMenuItem options_Volume;
private System.Windows.Forms.ToolStripMenuItem volume_5;
private System.Windows.Forms.ToolStripMenuItem volume_4;
private System.Windows.Forms.ToolStripMenuItem volume_3;
private System.Windows.Forms.ToolStripMenuItem volume_2;
private System.Windows.Forms.ToolStripMenuItem volume_1;
private System.Windows.Forms.ToolStripMenuItem volume_0;
private System.Windows.Forms.ToolStripMenuItem options_Looping;
private System.Windows.Forms.ToolStripMenuItem looping_Ignore;
private System.Windows.Forms.ToolStripMenuItem looping_Remove;
private System.Windows.Forms.ToolStripMenuItem options_DownmixToMono;
}
}

View File

@ -1,364 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class ADX_Studio : Form
{
public ADX_Studio()
{
InitializeComponent();
}
public static string ignoreLoop = "";
public static string removeLoop = "";
public static string downmix = "MONO";
public static double vol = 1.0;
void ADX_Studio_Load(object sender, EventArgs e)
{
clb_ADX.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.adx").Length > 0)
{
modes_ADXtoWAV.Checked = true;
modes_WAVtoADX.Checked = false;
options_Volume.Visible = false;
options_Looping.Visible = false;
options_DownmixToMono.Visible = false;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length > 0)
{
modes_ADXtoWAV.Checked = false;
modes_WAVtoADX.Checked = true;
options_Volume.Visible = true;
options_Looping.Visible = true;
options_DownmixToMono.Visible = true;
}
else { MessageBox.Show("There are no encodable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
#region Setting saved properties...
if (Properties.Settings.Default.ignoreLoop == true) looping_Ignore.Checked = true;
if (Properties.Settings.Default.removeLoop == true) looping_Remove.Checked = true;
if (Properties.Settings.Default.downmix == true) options_DownmixToMono.Checked = true;
if (Properties.Settings.Default.volume == 0.0) volume_0.Checked = true;
if (Properties.Settings.Default.volume == 1.0) volume_1.Checked = true;
if (Properties.Settings.Default.volume == 2.0) volume_2.Checked = true;
if (Properties.Settings.Default.volume == 3.0) volume_3.Checked = true;
if (Properties.Settings.Default.volume == 4.0) volume_4.Checked = true;
if (Properties.Settings.Default.volume == 5.0) volume_5.Checked = true;
#endregion
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_ADX.Items.Count; i++) clb_ADX.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
private void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_ADX.Items.Count; i++) clb_ADX.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Btn_Convert_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Extract without anything selected, this will prevent that.
if (clb_ADX.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (modes_ADXtoWAV.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each ADX.
foreach (string selectedADX in clb_ADX.CheckedItems)
{
Tools.ADX.ConvertToWAV(1, string.Empty, selectedADX);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when encoding the selected ADX files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_WAVtoADX.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each WAV.
foreach (string selectedWAV in clb_ADX.CheckedItems)
{
Tools.ADX.ConvertToADX(2, selectedWAV);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when encoding the selected WAV files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
void Clb_ADX_SelectedIndexChanged(object sender, EventArgs e)
{
clb_ADX.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Encode button, depending on whether a box has been checked.
if (clb_ADX.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Modes_ADXtoWAV_CheckedChanged(object sender, EventArgs e)
{
if (modes_ADXtoWAV.Checked == true)
{
clb_ADX.Items.Clear();
#region Getting ADX files to convert...
foreach (string ADX in Directory.GetFiles(Tools.Global.currentPath, "*.adx", SearchOption.TopDirectoryOnly))
{
if (File.Exists(ADX))
{
clb_ADX.Items.Add(Path.GetFileName(ADX));
}
}
#endregion
modes_WAVtoADX.Checked = false;
options_Volume.Visible = false;
options_Looping.Visible = false;
options_DownmixToMono.Visible = false;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.adx").Length == 0)
{
MessageBox.Show("There are no ADX files to encode in this directory.", "No ADX files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length == 0)
{
Close();
}
else
{
modes_ADXtoWAV.Checked = false;
modes_WAVtoADX.Checked = true;
}
}
}
}
void Modes_WAVtoADX_CheckedChanged(object sender, EventArgs e)
{
if (modes_WAVtoADX.Checked == true)
{
clb_ADX.Items.Clear();
#region Getting WAV files to convert...
foreach (string WAV in Directory.GetFiles(Tools.Global.currentPath, "*.wav", SearchOption.TopDirectoryOnly))
{
if (File.Exists(WAV))
{
clb_ADX.Items.Add(Path.GetFileName(WAV));
}
}
#endregion
modes_ADXtoWAV.Checked = false;
options_Volume.Visible = true;
options_Looping.Visible = true;
options_DownmixToMono.Visible = true;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length == 0)
{
MessageBox.Show("There are no WAV files to encode in this directory.", "No WAV files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.adx").Length == 0)
{
Close();
}
else
{
modes_ADXtoWAV.Checked = true;
modes_WAVtoADX.Checked = false;
}
}
}
}
#region Volume Control
void Volume_5_CheckedChanged(object sender, EventArgs e)
{
if (volume_5.Checked == true)
{
vol = 5.0; Properties.Settings.Default.volume = 5.0;
volume_4.Checked = false;
volume_3.Checked = false;
volume_2.Checked = false;
volume_1.Checked = false;
volume_0.Checked = false;
//MessageBox.Show("Using a volume greater than 1.0 will likely produce noise in original ADX files.", "Sound Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
Properties.Settings.Default.Save();
}
void Volume_4_CheckedChanged(object sender, EventArgs e)
{
if (volume_4.Checked == true)
{
volume_5.Checked = false;
vol = 4.0; Properties.Settings.Default.volume = 4.0;
volume_3.Checked = false;
volume_2.Checked = false;
volume_1.Checked = false;
volume_0.Checked = false;
//MessageBox.Show("Using a volume greater than 1.0 will likely produce noise in original ADX files.", "Sound Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
Properties.Settings.Default.Save();
}
void Volume_3_CheckedChanged(object sender, EventArgs e)
{
if (volume_3.Checked == true)
{
volume_5.Checked = false;
volume_4.Checked = false;
vol = 3.0; Properties.Settings.Default.volume = 3.0;
volume_2.Checked = false;
volume_1.Checked = false;
volume_0.Checked = false;
//MessageBox.Show("Using a volume greater than 1.0 will likely produce noise in original ADX files.", "Sound Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
Properties.Settings.Default.Save();
}
void Volume_2_CheckedChanged(object sender, EventArgs e)
{
if (volume_2.Checked == true)
{
volume_5.Checked = false;
volume_4.Checked = false;
volume_3.Checked = false;
vol = 2.0; Properties.Settings.Default.volume = 2.0;
volume_1.Checked = false;
volume_0.Checked = false;
//MessageBox.Show("Using a volume greater than 1.0 will likely produce noise in original ADX files.", "Sound Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
Properties.Settings.Default.Save();
}
void Volume_1_CheckedChanged(object sender, EventArgs e)
{
if (volume_1.Checked == true)
{
volume_5.Checked = false;
volume_4.Checked = false;
volume_3.Checked = false;
volume_2.Checked = false;
vol = 1.0; Properties.Settings.Default.volume = 1.0;
volume_0.Checked = false;
}
Properties.Settings.Default.Save();
}
void Volume_0_CheckedChanged(object sender, EventArgs e)
{
if (volume_0.Checked == true)
{
volume_5.Checked = false;
volume_4.Checked = false;
volume_3.Checked = false;
volume_2.Checked = false;
volume_1.Checked = false;
vol = 0.0; Properties.Settings.Default.volume = 0.0;
}
Properties.Settings.Default.Save();
}
#endregion
void Looping_Ignore_CheckedChanged(object sender, EventArgs e)
{
if (looping_Ignore.Checked == true)
{
ignoreLoop = " -lpoff";
Properties.Settings.Default.ignoreLoop = true;
}
else
{
ignoreLoop = "";
Properties.Settings.Default.ignoreLoop = false;
}
Properties.Settings.Default.Save();
}
void Looping_Remove_CheckedChanged(object sender, EventArgs e)
{
if (looping_Remove.Checked == true)
{
removeLoop = " -nodelterm";
Properties.Settings.Default.removeLoop = true;
}
else
{
removeLoop = "";
Properties.Settings.Default.removeLoop = false;
}
Properties.Settings.Default.Save();
}
void Options_DownmixToStereo_CheckedChanged(object sender, EventArgs e)
{
if (options_DownmixToMono.Checked == true)
{
downmix = "MONO";
Properties.Settings.Default.downmix = true;
}
else
{
downmix = "STEREO";
Properties.Settings.Default.downmix = false;
}
Properties.Settings.Default.Save();
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,261 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class ARC_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ARC_Studio));
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.group_RootPath = new System.Windows.Forms.GroupBox();
this.btn_BrowseARC1 = new System.Windows.Forms.Button();
this.text_ARC1 = new System.Windows.Forms.TextBox();
this.group_ToolsPath = new System.Windows.Forms.GroupBox();
this.btn_BrowseARC2 = new System.Windows.Forms.Button();
this.text_ARC2 = new System.Windows.Forms.TextBox();
this.group_ArchivesPath = new System.Windows.Forms.GroupBox();
this.btn_BrowseOutput = new System.Windows.Forms.Button();
this.text_Output = new System.Windows.Forms.TextBox();
this.btn_Merge = new System.Windows.Forms.Button();
this.ofd_OpenARC = new System.Windows.Forms.OpenFileDialog();
this.sfd_Output = new System.Windows.Forms.SaveFileDialog();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.group_RootPath.SuspendLayout();
this.group_ToolsPath.SuspendLayout();
this.group_ArchivesPath.SuspendLayout();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(207, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "ARC Studio";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(91)))), ((int)(((byte)(127)))), ((int)(((byte)(0)))));
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(536, 69);
this.pnl_Backdrop.TabIndex = 18;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(459, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// group_RootPath
//
this.group_RootPath.Controls.Add(this.btn_BrowseARC1);
this.group_RootPath.Controls.Add(this.text_ARC1);
this.group_RootPath.Location = new System.Drawing.Point(9, 71);
this.group_RootPath.Name = "group_RootPath";
this.group_RootPath.Size = new System.Drawing.Size(513, 71);
this.group_RootPath.TabIndex = 22;
this.group_RootPath.TabStop = false;
this.group_RootPath.Text = "Source";
//
// btn_BrowseARC1
//
this.btn_BrowseARC1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.btn_BrowseARC1.FlatAppearance.BorderSize = 0;
this.btn_BrowseARC1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_BrowseARC1.Location = new System.Drawing.Point(471, 30);
this.btn_BrowseARC1.Name = "btn_BrowseARC1";
this.btn_BrowseARC1.Size = new System.Drawing.Size(25, 20);
this.btn_BrowseARC1.TabIndex = 19;
this.btn_BrowseARC1.Text = "...";
this.btn_BrowseARC1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.btn_BrowseARC1.UseVisualStyleBackColor = false;
this.btn_BrowseARC1.Click += new System.EventHandler(this.Btn_BrowseARC1_Click);
//
// text_ARC1
//
this.text_ARC1.Location = new System.Drawing.Point(17, 30);
this.text_ARC1.Name = "text_ARC1";
this.text_ARC1.Size = new System.Drawing.Size(449, 20);
this.text_ARC1.TabIndex = 0;
//
// group_ToolsPath
//
this.group_ToolsPath.Controls.Add(this.btn_BrowseARC2);
this.group_ToolsPath.Controls.Add(this.text_ARC2);
this.group_ToolsPath.Location = new System.Drawing.Point(9, 145);
this.group_ToolsPath.Name = "group_ToolsPath";
this.group_ToolsPath.Size = new System.Drawing.Size(513, 71);
this.group_ToolsPath.TabIndex = 23;
this.group_ToolsPath.TabStop = false;
this.group_ToolsPath.Text = "Merge";
//
// btn_BrowseARC2
//
this.btn_BrowseARC2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.btn_BrowseARC2.FlatAppearance.BorderSize = 0;
this.btn_BrowseARC2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_BrowseARC2.Location = new System.Drawing.Point(471, 30);
this.btn_BrowseARC2.Name = "btn_BrowseARC2";
this.btn_BrowseARC2.Size = new System.Drawing.Size(25, 20);
this.btn_BrowseARC2.TabIndex = 19;
this.btn_BrowseARC2.Text = "...";
this.btn_BrowseARC2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.btn_BrowseARC2.UseVisualStyleBackColor = false;
this.btn_BrowseARC2.Click += new System.EventHandler(this.Btn_BrowseARC2_Click);
//
// text_ARC2
//
this.text_ARC2.Location = new System.Drawing.Point(17, 30);
this.text_ARC2.Name = "text_ARC2";
this.text_ARC2.Size = new System.Drawing.Size(449, 20);
this.text_ARC2.TabIndex = 0;
//
// group_ArchivesPath
//
this.group_ArchivesPath.Controls.Add(this.btn_BrowseOutput);
this.group_ArchivesPath.Controls.Add(this.text_Output);
this.group_ArchivesPath.Location = new System.Drawing.Point(9, 220);
this.group_ArchivesPath.Name = "group_ArchivesPath";
this.group_ArchivesPath.Size = new System.Drawing.Size(513, 71);
this.group_ArchivesPath.TabIndex = 24;
this.group_ArchivesPath.TabStop = false;
this.group_ArchivesPath.Text = "Output";
//
// btn_BrowseOutput
//
this.btn_BrowseOutput.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(171)))), ((int)(((byte)(83)))));
this.btn_BrowseOutput.FlatAppearance.BorderSize = 0;
this.btn_BrowseOutput.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_BrowseOutput.Location = new System.Drawing.Point(471, 30);
this.btn_BrowseOutput.Name = "btn_BrowseOutput";
this.btn_BrowseOutput.Size = new System.Drawing.Size(25, 20);
this.btn_BrowseOutput.TabIndex = 19;
this.btn_BrowseOutput.Text = "...";
this.btn_BrowseOutput.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.btn_BrowseOutput.UseVisualStyleBackColor = false;
this.btn_BrowseOutput.Click += new System.EventHandler(this.Btn_BrowseOutput_Click);
//
// text_Output
//
this.text_Output.Location = new System.Drawing.Point(17, 30);
this.text_Output.Name = "text_Output";
this.text_Output.Size = new System.Drawing.Size(449, 20);
this.text_Output.TabIndex = 0;
//
// btn_Merge
//
this.btn_Merge.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(91)))), ((int)(((byte)(127)))), ((int)(((byte)(0)))));
this.btn_Merge.FlatAppearance.BorderSize = 0;
this.btn_Merge.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Merge.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Merge.Location = new System.Drawing.Point(447, 297);
this.btn_Merge.Name = "btn_Merge";
this.btn_Merge.Size = new System.Drawing.Size(75, 23);
this.btn_Merge.TabIndex = 26;
this.btn_Merge.Text = "Merge";
this.btn_Merge.UseVisualStyleBackColor = false;
this.btn_Merge.Click += new System.EventHandler(this.Btn_Merge_Click);
//
// ofd_OpenARC
//
this.ofd_OpenARC.FileName = "openFileDialog1";
//
// sfd_Output
//
this.sfd_Output.Filter = "ARC Files|*.arc";
this.sfd_Output.RestoreDirectory = true;
this.sfd_Output.Title = "Output...";
//
// ARC_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.ClientSize = new System.Drawing.Size(531, 330);
this.Controls.Add(this.btn_Merge);
this.Controls.Add(this.group_RootPath);
this.Controls.Add(this.group_ToolsPath);
this.Controls.Add(this.group_ArchivesPath);
this.Controls.Add(this.pnl_Backdrop);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "ARC_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "ARC Studio";
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.group_RootPath.ResumeLayout(false);
this.group_RootPath.PerformLayout();
this.group_ToolsPath.ResumeLayout(false);
this.group_ToolsPath.PerformLayout();
this.group_ArchivesPath.ResumeLayout(false);
this.group_ArchivesPath.PerformLayout();
this.ResumeLayout(false);
}
#endregion
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
private System.Windows.Forms.GroupBox group_RootPath;
internal System.Windows.Forms.Button btn_BrowseARC1;
private System.Windows.Forms.TextBox text_ARC1;
private System.Windows.Forms.GroupBox group_ToolsPath;
internal System.Windows.Forms.Button btn_BrowseARC2;
private System.Windows.Forms.TextBox text_ARC2;
private System.Windows.Forms.GroupBox group_ArchivesPath;
internal System.Windows.Forms.Button btn_BrowseOutput;
private System.Windows.Forms.TextBox text_Output;
private System.Windows.Forms.Button btn_Merge;
private System.Windows.Forms.OpenFileDialog ofd_OpenARC;
private System.Windows.Forms.SaveFileDialog sfd_Output;
}
}

View File

@ -1,101 +0,0 @@
using System;
using System.IO;
using System.Text;
using System.Diagnostics;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class ARC_Studio : Form
{
public ARC_Studio()
{
InitializeComponent();
}
void mergeARC()
{
try
{
Tools.ARC.Merge(4, text_ARC1.Text, text_ARC2.Text, text_Output.Text);
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when merging the archives.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
void Btn_Merge_Click(object sender, EventArgs e)
{
if (!File.Exists(text_ARC1.Text)) MessageBox.Show("Please specify an ARC file.", "File Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
else if (!File.Exists(text_ARC2.Text)) MessageBox.Show("Please specify an ARC file.", "File Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
else if (text_Output.Text == "" || !Directory.Exists(Path.GetDirectoryName(text_Output.Text))) MessageBox.Show("Please specify an output.", "File Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
else
{
mergeARC();
}
}
void Btn_BrowseARC1_Click(object sender, EventArgs e)
{
ofd_OpenARC.Title = "Please select an ARC file...";
ofd_OpenARC.Filter = "ARC Files|*.arc";
ofd_OpenARC.DefaultExt = "arc";
if (ofd_OpenARC.ShowDialog() == DialogResult.OK)
{
text_ARC1.Text = ofd_OpenARC.FileName;
}
}
void Btn_BrowseARC2_Click(object sender, EventArgs e)
{
ofd_OpenARC.Title = "Please select an ARC file...";
ofd_OpenARC.Filter = "ARC Files|*.arc";
ofd_OpenARC.DefaultExt = "arc";
if (ofd_OpenARC.ShowDialog() == DialogResult.OK)
{
text_ARC2.Text = ofd_OpenARC.FileName;
}
}
void Btn_BrowseOutput_Click(object sender, EventArgs e)
{
sfd_Output.Title = "Save As...";
sfd_Output.Filter = "ARC Files|*.arc";
sfd_Output.DefaultExt = "arc";
if (sfd_Output.ShowDialog() == DialogResult.OK)
{
text_Output.Text = sfd_Output.FileName;
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,268 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class AT3_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AT3_Studio));
this.looping_SetLoop = new System.Windows.Forms.ToolStripMenuItem();
this.looping_Whole = new System.Windows.Forms.ToolStripMenuItem();
this.options_Looping = new System.Windows.Forms.ToolStripMenuItem();
this.modes_WAVtoAT3 = new System.Windows.Forms.ToolStripMenuItem();
this.modes_AT3toWAV = new System.Windows.Forms.ToolStripMenuItem();
this.options_Modes = new System.Windows.Forms.ToolStripMenuItem();
this.main_Options = new System.Windows.Forms.ToolStripMenuItem();
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_AT3 = new System.Windows.Forms.CheckedListBox();
this.mstrip_Options = new System.Windows.Forms.MenuStrip();
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.mstrip_Options.SuspendLayout();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.SuspendLayout();
//
// looping_SetLoop
//
this.looping_SetLoop.Name = "looping_SetLoop";
this.looping_SetLoop.Size = new System.Drawing.Size(172, 22);
this.looping_SetLoop.Text = "Set loop position...";
this.looping_SetLoop.Visible = false;
//
// looping_Whole
//
this.looping_Whole.CheckOnClick = true;
this.looping_Whole.Name = "looping_Whole";
this.looping_Whole.Size = new System.Drawing.Size(172, 22);
this.looping_Whole.Text = "Loop entire track";
this.looping_Whole.CheckedChanged += new System.EventHandler(this.Looping_Whole_CheckedChanged);
//
// options_Looping
//
this.options_Looping.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.looping_Whole,
this.looping_SetLoop});
this.options_Looping.Name = "options_Looping";
this.options_Looping.Size = new System.Drawing.Size(118, 22);
this.options_Looping.Text = "Looping";
this.options_Looping.Visible = false;
//
// modes_WAVtoAT3
//
this.modes_WAVtoAT3.CheckOnClick = true;
this.modes_WAVtoAT3.Name = "modes_WAVtoAT3";
this.modes_WAVtoAT3.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.W)));
this.modes_WAVtoAT3.Size = new System.Drawing.Size(176, 22);
this.modes_WAVtoAT3.Text = "WAV to AT3";
this.modes_WAVtoAT3.CheckedChanged += new System.EventHandler(this.Modes_WAVtoAT3_CheckedChanged);
//
// modes_AT3toWAV
//
this.modes_AT3toWAV.CheckOnClick = true;
this.modes_AT3toWAV.Name = "modes_AT3toWAV";
this.modes_AT3toWAV.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.A)));
this.modes_AT3toWAV.Size = new System.Drawing.Size(176, 22);
this.modes_AT3toWAV.Text = "AT3 to WAV";
this.modes_AT3toWAV.CheckedChanged += new System.EventHandler(this.Modes_AT3toWAV_CheckedChanged);
//
// options_Modes
//
this.options_Modes.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.modes_AT3toWAV,
this.modes_WAVtoAT3});
this.options_Modes.Name = "options_Modes";
this.options_Modes.Size = new System.Drawing.Size(118, 22);
this.options_Modes.Text = "Modes";
//
// main_Options
//
this.main_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.options_Modes,
this.options_Looping});
this.main_Options.Name = "main_Options";
this.main_Options.Size = new System.Drawing.Size(61, 20);
this.main_Options.Text = "Options";
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.DeepSkyBlue;
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 49;
this.btn_Convert.Text = "Encode";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Convert_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 48;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 47;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_AT3
//
this.clb_AT3.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_AT3.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_AT3.CheckOnClick = true;
this.clb_AT3.FormattingEnabled = true;
this.clb_AT3.Location = new System.Drawing.Point(8, 76);
this.clb_AT3.Name = "clb_AT3";
this.clb_AT3.Size = new System.Drawing.Size(417, 304);
this.clb_AT3.TabIndex = 46;
this.clb_AT3.SelectedIndexChanged += new System.EventHandler(this.Clb_AT3_SelectedIndexChanged);
//
// mstrip_Options
//
this.mstrip_Options.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.mstrip_Options.BackColor = System.Drawing.SystemColors.Control;
this.mstrip_Options.Dock = System.Windows.Forms.DockStyle.None;
this.mstrip_Options.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.main_Options});
this.mstrip_Options.Location = new System.Drawing.Point(278, 386);
this.mstrip_Options.Name = "mstrip_Options";
this.mstrip_Options.Size = new System.Drawing.Size(69, 24);
this.mstrip_Options.TabIndex = 50;
this.mstrip_Options.Text = "menuStrip1";
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(201, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "AT3 Studio";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.DeepSkyBlue;
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(440, 69);
this.pnl_Backdrop.TabIndex = 45;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(363, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// AT3_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.mstrip_Options);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.clb_AT3);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "AT3_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "AT3 Studio";
this.Load += new System.EventHandler(this.AT3_Studio_Load);
this.mstrip_Options.ResumeLayout(false);
this.mstrip_Options.PerformLayout();
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.ToolStripMenuItem looping_SetLoop;
private System.Windows.Forms.ToolStripMenuItem looping_Whole;
private System.Windows.Forms.ToolStripMenuItem options_Looping;
private System.Windows.Forms.ToolStripMenuItem modes_WAVtoAT3;
private System.Windows.Forms.ToolStripMenuItem modes_AT3toWAV;
private System.Windows.Forms.ToolStripMenuItem options_Modes;
private System.Windows.Forms.ToolStripMenuItem main_Options;
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_AT3;
private System.Windows.Forms.MenuStrip mstrip_Options;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
}
}

View File

@ -1,221 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class AT3_Studio : Form
{
public AT3_Studio()
{
InitializeComponent();
}
public static string wholeLoop = "-wholeloop ";
public static string beginLoop = "";
public static string startLoop = "";
public static string endLoop = "";
void AT3_Studio_Load(object sender, EventArgs e)
{
clb_AT3.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.at3").Length > 0)
{
modes_AT3toWAV.Checked = true;
modes_WAVtoAT3.Checked = false;
options_Looping.Visible = false;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length > 0)
{
modes_AT3toWAV.Checked = false;
modes_WAVtoAT3.Checked = true;
options_Looping.Visible = true;
}
else { MessageBox.Show("There are no encodable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
if (Properties.Settings.Default.AT3wholeLoop == true) looping_Whole.Checked = true; else looping_Whole.Checked = false;
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_AT3.Items.Count; i++) clb_AT3.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_AT3.Items.Count; i++) clb_AT3.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Modes_AT3toWAV_CheckedChanged(object sender, EventArgs e)
{
if (modes_AT3toWAV.Checked == true)
{
clb_AT3.Items.Clear();
#region Getting AT3 files to convert...
foreach (string AT3 in Directory.GetFiles(Tools.Global.currentPath, "*.at3", SearchOption.TopDirectoryOnly))
{
if (File.Exists(AT3))
{
clb_AT3.Items.Add(Path.GetFileName(AT3));
}
}
#endregion
modes_WAVtoAT3.Checked = false;
options_Looping.Visible = false;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.at3").Length == 0)
{
MessageBox.Show("There are no AT3 files to encode in this directory.", "No AT3 files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length == 0)
{
Close();
}
else
{
modes_AT3toWAV.Checked = false;
modes_WAVtoAT3.Checked = true;
}
}
}
}
void Modes_WAVtoAT3_CheckedChanged(object sender, EventArgs e)
{
if (modes_WAVtoAT3.Checked == true)
{
clb_AT3.Items.Clear();
#region Getting WAV files to convert...
foreach (string WAV in Directory.GetFiles(Tools.Global.currentPath, "*.wav", SearchOption.TopDirectoryOnly))
{
if (File.Exists(WAV))
{
clb_AT3.Items.Add(Path.GetFileName(WAV));
}
}
#endregion
modes_AT3toWAV.Checked = false;
options_Looping.Visible = true;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length == 0)
{
MessageBox.Show("There are no WAV files to encode in this directory.", "No WAV files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.at3").Length == 0)
{
Close();
}
else
{
modes_AT3toWAV.Checked = true;
modes_WAVtoAT3.Checked = false;
}
}
}
}
void Clb_AT3_SelectedIndexChanged(object sender, EventArgs e)
{
clb_AT3.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Decompile button, depending on whether a box has been checked.
if (clb_AT3.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Btn_Convert_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Extract without anything selected, this will prevent that.
if (clb_AT3.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (modes_AT3toWAV.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each AT3.
foreach (string selectedAT3 in clb_AT3.CheckedItems)
{
Tools.AT3.ConvertToWAV(1, string.Empty, selectedAT3);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when encoding the selected AT3 files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_WAVtoAT3.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each WAV.
foreach (string selectedWAV in clb_AT3.CheckedItems)
{
Tools.AT3.ConvertToAT3(1, selectedWAV);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when encoding the selected WAV files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
void Looping_Whole_CheckedChanged(object sender, EventArgs e)
{
if (looping_Whole.Checked == true)
{
wholeLoop = "-wholeloop ";
Properties.Settings.Default.AT3wholeLoop = true;
}
else
{
wholeLoop = "";
Properties.Settings.Default.AT3wholeLoop = false;
}
Properties.Settings.Default.Save();
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,203 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class BIN_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(BIN_Studio));
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Title = new System.Windows.Forms.Label();
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_BIN = new System.Windows.Forms.CheckedListBox();
this.lbl_Mode = new System.Windows.Forms.Label();
this.combo_Mode = new System.Windows.Forms.ComboBox();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.SuspendLayout();
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.CadetBlue;
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(439, 69);
this.pnl_Backdrop.TabIndex = 39;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(362, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(198, 47);
this.lbl_Title.TabIndex = 37;
this.lbl_Title.Text = "BIN Studio";
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.OliveDrab;
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 43;
this.btn_Convert.Text = "Export";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Convert_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 42;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 41;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_BIN
//
this.clb_BIN.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_BIN.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_BIN.CheckOnClick = true;
this.clb_BIN.FormattingEnabled = true;
this.clb_BIN.Location = new System.Drawing.Point(8, 76);
this.clb_BIN.Name = "clb_BIN";
this.clb_BIN.Size = new System.Drawing.Size(417, 304);
this.clb_BIN.TabIndex = 40;
this.clb_BIN.SelectedIndexChanged += new System.EventHandler(this.Clb_BIN_SelectedIndexChanged);
//
// lbl_Mode
//
this.lbl_Mode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_Mode.AutoSize = true;
this.lbl_Mode.Location = new System.Drawing.Point(184, 392);
this.lbl_Mode.Name = "lbl_Mode";
this.lbl_Mode.Size = new System.Drawing.Size(37, 13);
this.lbl_Mode.TabIndex = 46;
this.lbl_Mode.Text = "Mode:";
//
// combo_Mode
//
this.combo_Mode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.combo_Mode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.combo_Mode.FormattingEnabled = true;
this.combo_Mode.Items.AddRange(new object[] {
"Export",
"Import"});
this.combo_Mode.Location = new System.Drawing.Point(223, 388);
this.combo_Mode.Name = "combo_Mode";
this.combo_Mode.Size = new System.Drawing.Size(121, 21);
this.combo_Mode.TabIndex = 45;
this.combo_Mode.SelectedIndexChanged += new System.EventHandler(this.Combo_Mode_SelectedIndexChanged);
//
// BIN_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.lbl_Mode);
this.Controls.Add(this.combo_Mode);
this.Controls.Add(this.clb_BIN);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "BIN_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "BIN Studio";
this.Load += new System.EventHandler(this.BIN_Studio_Load);
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Panel pnl_Backdrop;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_BIN;
private System.Windows.Forms.Label lbl_Mode;
private System.Windows.Forms.ComboBox combo_Mode;
}
}

View File

@ -1,207 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
namespace Sonic_06_Toolkit
{
public partial class BIN_Studio : Form
{
public BIN_Studio()
{
InitializeComponent();
}
private void Combo_Mode_SelectedIndexChanged(object sender, EventArgs e)
{
if (combo_Mode.SelectedIndex == 0)
{
if (!Tools.Prerequisites.PythonCheck())
{
MessageBox.Show("Python is required to export BIN files. Please install Python and restart Sonic '06 Toolkit.", "Python Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
combo_Mode.SelectedIndex = 1;
}
else
{
btn_Convert.Text = "Export";
clb_BIN.Items.Clear();
foreach (string BIN in Directory.GetFiles(Tools.Global.currentPath, "*.bin", SearchOption.TopDirectoryOnly))
{
if (File.Exists(BIN))
{
clb_BIN.Items.Add(Path.GetFileName(BIN));
}
}
//Checks if there are any CSBs in the directory.
if (clb_BIN.Items.Count == 0)
{
MessageBox.Show("There are no BIN files to export in this directory.", "No BIN files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
}
else if (combo_Mode.SelectedIndex == 1)
{
btn_Convert.Text = "Import";
clb_BIN.Items.Clear();
foreach (string FBX in Directory.GetFiles(Tools.Global.currentPath, "*.fbx", SearchOption.TopDirectoryOnly))
{
if (File.Exists(FBX))
{
clb_BIN.Items.Add(Path.GetFileName(FBX));
}
}
foreach (string OBJ in Directory.GetFiles(Tools.Global.currentPath, "*.obj", SearchOption.TopDirectoryOnly))
{
if (File.Exists(OBJ))
{
clb_BIN.Items.Add(Path.GetFileName(OBJ));
}
}
//Checks if there are any CSBs in the directory.
if (clb_BIN.Items.Count == 0)
{
if (!Tools.Prerequisites.PythonCheck())
{
Close();
}
else
{
MessageBox.Show("There are no collision files to import in this directory.", "No collision files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
combo_Mode.SelectedIndex = 0;
}
}
}
}
private void BIN_Studio_Load(object sender, EventArgs e)
{
btn_Convert.Text = "Export";
clb_BIN.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.bin").Length > 0)
{
combo_Mode.SelectedIndex = 0;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.fbx").Length > 0)
{
combo_Mode.SelectedIndex = 1;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.obj").Length > 0)
{
combo_Mode.SelectedIndex = 1;
}
else { MessageBox.Show("There are no convertable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
}
private void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_BIN.Items.Count; i++) clb_BIN.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
private void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_BIN.Items.Count; i++) clb_BIN.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
private void Clb_BIN_SelectedIndexChanged(object sender, EventArgs e)
{
clb_BIN.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Convert button, depending on whether a box has been checked.
if (clb_BIN.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
private void Btn_Convert_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Export without anything selected, this will prevent that.
if (clb_BIN.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (combo_Mode.SelectedIndex == 0)
{
try
{
foreach (string selectedBIN in clb_BIN.CheckedItems)
{
Tools.BIN.Export(1, string.Empty, selectedBIN);
}
//if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected BIN files have been exported.", "Export Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when exporting the BIN files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (combo_Mode.SelectedIndex == 1)
{
try
{
foreach (string selectedCol in clb_BIN.CheckedItems)
{
if (Path.GetExtension(selectedCol) == ".obj")
{
string[] atProtocol = File.ReadAllLines(Path.Combine(Tools.Global.currentPath, selectedCol));
int i = 0;
foreach (string line in atProtocol)
{
if (line.Contains("_at_"))
{
i++;
}
}
if (i != 0)
{
DialogResult confirm = MessageBox.Show($"Found {i} instances of _at_ in file: {selectedCol}. Do you want to replace them with @ to correct the tags?", "OBJ Tags Detected", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
switch (confirm)
{
case DialogResult.Yes:
int lineNum = 0;
foreach (string line in atProtocol)
{
if (line.Contains("_at_"))
{
string temp = line.Replace("_at_", "@");
atProtocol[lineNum] = temp;
}
lineNum++;
}
File.WriteAllLines(Path.Combine(Tools.Global.currentPath, selectedCol), atProtocol);
break;
}
}
}
Tools.BIN.Import(3, string.Empty, selectedCol);
}
//if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected collision files have been imported.", "Import Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when importing the collision files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,250 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class CSB_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(CSB_Studio));
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Title = new System.Windows.Forms.Label();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_CSBs = new System.Windows.Forms.CheckedListBox();
this.btn_Extract = new System.Windows.Forms.Button();
this.mstrip_Options = new System.Windows.Forms.MenuStrip();
this.main_Options = new System.Windows.Forms.ToolStripMenuItem();
this.options_Modes = new System.Windows.Forms.ToolStripMenuItem();
this.modes_UnpackToAIF = new System.Windows.Forms.ToolStripMenuItem();
this.modes_UnpackToWAV = new System.Windows.Forms.ToolStripMenuItem();
this.modes_RepackToCSB = new System.Windows.Forms.ToolStripMenuItem();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.mstrip_Options.SuspendLayout();
this.SuspendLayout();
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(24)))), ((int)(((byte)(127)))), ((int)(((byte)(196)))));
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(440, 69);
this.pnl_Backdrop.TabIndex = 19;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(363, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(201, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "CSB Studio";
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 32;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 31;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_CSBs
//
this.clb_CSBs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_CSBs.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_CSBs.CheckOnClick = true;
this.clb_CSBs.FormattingEnabled = true;
this.clb_CSBs.Location = new System.Drawing.Point(8, 76);
this.clb_CSBs.Name = "clb_CSBs";
this.clb_CSBs.Size = new System.Drawing.Size(417, 304);
this.clb_CSBs.TabIndex = 30;
this.clb_CSBs.SelectedIndexChanged += new System.EventHandler(this.Clb_CSBs_SelectedIndexChanged);
//
// btn_Extract
//
this.btn_Extract.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Extract.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(24)))), ((int)(((byte)(127)))), ((int)(((byte)(196)))));
this.btn_Extract.Enabled = false;
this.btn_Extract.FlatAppearance.BorderSize = 0;
this.btn_Extract.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Extract.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Extract.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Extract.Location = new System.Drawing.Point(350, 387);
this.btn_Extract.Name = "btn_Extract";
this.btn_Extract.Size = new System.Drawing.Size(75, 23);
this.btn_Extract.TabIndex = 33;
this.btn_Extract.Text = "Unpack";
this.btn_Extract.UseVisualStyleBackColor = false;
this.btn_Extract.Click += new System.EventHandler(this.Btn_Extract_Click);
//
// mstrip_Options
//
this.mstrip_Options.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.mstrip_Options.BackColor = System.Drawing.SystemColors.Control;
this.mstrip_Options.Dock = System.Windows.Forms.DockStyle.None;
this.mstrip_Options.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.main_Options});
this.mstrip_Options.Location = new System.Drawing.Point(278, 386);
this.mstrip_Options.Name = "mstrip_Options";
this.mstrip_Options.Size = new System.Drawing.Size(69, 24);
this.mstrip_Options.TabIndex = 50;
this.mstrip_Options.Text = "menuStrip1";
//
// main_Options
//
this.main_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.options_Modes});
this.main_Options.Name = "main_Options";
this.main_Options.Size = new System.Drawing.Size(61, 20);
this.main_Options.Text = "Options";
//
// options_Modes
//
this.options_Modes.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.modes_UnpackToAIF,
this.modes_UnpackToWAV,
this.modes_RepackToCSB});
this.options_Modes.Name = "options_Modes";
this.options_Modes.Size = new System.Drawing.Size(110, 22);
this.options_Modes.Text = "Modes";
//
// modes_UnpackToAIF
//
this.modes_UnpackToAIF.CheckOnClick = true;
this.modes_UnpackToAIF.Name = "modes_UnpackToAIF";
this.modes_UnpackToAIF.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.A)));
this.modes_UnpackToAIF.Size = new System.Drawing.Size(197, 22);
this.modes_UnpackToAIF.Text = "Unpack to AIF";
this.modes_UnpackToAIF.CheckedChanged += new System.EventHandler(this.Modes_UnpackToAIF_CheckedChanged);
//
// modes_UnpackToWAV
//
this.modes_UnpackToWAV.CheckOnClick = true;
this.modes_UnpackToWAV.Name = "modes_UnpackToWAV";
this.modes_UnpackToWAV.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.W)));
this.modes_UnpackToWAV.Size = new System.Drawing.Size(197, 22);
this.modes_UnpackToWAV.Text = "Unpack to WAV";
this.modes_UnpackToWAV.CheckedChanged += new System.EventHandler(this.Modes_UnpackToWAV_CheckedChanged);
//
// modes_RepackToCSB
//
this.modes_RepackToCSB.CheckOnClick = true;
this.modes_RepackToCSB.Name = "modes_RepackToCSB";
this.modes_RepackToCSB.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.C)));
this.modes_RepackToCSB.Size = new System.Drawing.Size(197, 22);
this.modes_RepackToCSB.Text = "Repack to CSB";
this.modes_RepackToCSB.CheckedChanged += new System.EventHandler(this.Modes_RepackToCSB_CheckedChanged);
//
// CSB_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Control;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.btn_Extract);
this.Controls.Add(this.mstrip_Options);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.clb_CSBs);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "CSB_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "CSB Studio";
this.Load += new System.EventHandler(this.CSB_Studio_Load);
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.mstrip_Options.ResumeLayout(false);
this.mstrip_Options.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Panel pnl_Backdrop;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_CSBs;
private System.Windows.Forms.Button btn_Extract;
private System.Windows.Forms.MenuStrip mstrip_Options;
private System.Windows.Forms.ToolStripMenuItem main_Options;
private System.Windows.Forms.ToolStripMenuItem options_Modes;
private System.Windows.Forms.ToolStripMenuItem modes_UnpackToAIF;
private System.Windows.Forms.ToolStripMenuItem modes_UnpackToWAV;
private System.Windows.Forms.ToolStripMenuItem modes_RepackToCSB;
}
}

View File

@ -1,272 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class CSB_Studio : Form
{
public CSB_Studio()
{
InitializeComponent();
}
void Btn_SelectAll_Click(object sender, System.EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_CSBs.Items.Count; i++) clb_CSBs.SetItemChecked(i, true);
btn_Extract.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, System.EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_CSBs.Items.Count; i++) clb_CSBs.SetItemChecked(i, false);
btn_Extract.Enabled = false;
}
void Clb_CSBs_SelectedIndexChanged(object sender, System.EventArgs e)
{
clb_CSBs.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Extract button, depending on whether a box has been checked.
if (clb_CSBs.CheckedItems.Count > 0)
{
btn_Extract.Enabled = true;
}
else
{
btn_Extract.Enabled = false;
}
}
void Btn_Extract_Click(object sender, System.EventArgs e)
{
//In the odd chance that someone is ever able to click Extract without anything selected, this will prevent that.
if (clb_CSBs.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (modes_UnpackToAIF.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each CSB.
foreach (string selectedCSB in clb_CSBs.CheckedItems)
{
Tools.CSB.Packer(1, null, selectedCSB);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when unpacking the selected CSBs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_UnpackToWAV.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each CSB.
foreach (string selectedCSB in clb_CSBs.CheckedItems)
{
Tools.CSB.Packer(3, null, selectedCSB);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when unpacking the selected CSBs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_RepackToCSB.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each CSB.
foreach (string selectedCSB in clb_CSBs.CheckedItems)
{
Tools.CSB.Packer(2, null, selectedCSB);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when repacking the selected CSBs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
private void Modes_UnpackToAIF_CheckedChanged(object sender, EventArgs e)
{
if (modes_UnpackToAIF.Checked)
{
Properties.Settings.Default.csbUnpackMode = 0;
if (Properties.Settings.Default.csbUnpackMode == 0) { modes_UnpackToAIF.Checked = true; modes_UnpackToWAV.Checked = false; }
else { modes_UnpackToAIF.Checked = false; modes_UnpackToWAV.Checked = true; }
clb_CSBs.Items.Clear();
btn_Extract.Text = "Unpack";
#region Getting CSB files to convert...
foreach (string CSB in Directory.GetFiles(Tools.Global.currentPath, "*.csb", SearchOption.TopDirectoryOnly))
{
if (File.Exists(CSB))
{
clb_CSBs.Items.Add(Path.GetFileName(CSB));
}
}
#endregion
modes_UnpackToWAV.Checked = false;
modes_RepackToCSB.Checked = false;
btn_Extract.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.csb").Length == 0)
{
MessageBox.Show("There are no CSB files to unpack in this directory.", "No CSB files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
modes_UnpackToAIF.Checked = false;
modes_UnpackToWAV.Checked = false;
modes_RepackToCSB.Checked = true;
//Checks if there are any CSBs in the directory.
if (clb_CSBs.Items.Count == 0)
{
MessageBox.Show("There are no CSB directories to repack in this directory.", "No CSB directories available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
}
Properties.Settings.Default.Save();
}
private void Modes_UnpackToWAV_CheckedChanged(object sender, EventArgs e)
{
if (modes_UnpackToWAV.Checked)
{
Properties.Settings.Default.csbUnpackMode = 1;
clb_CSBs.Items.Clear();
btn_Extract.Text = "Unpack";
#region Getting CSB files to convert...
foreach (string CSB in Directory.GetFiles(Tools.Global.currentPath, "*.csb", SearchOption.TopDirectoryOnly))
{
if (File.Exists(CSB))
{
clb_CSBs.Items.Add(Path.GetFileName(CSB));
}
}
#endregion
modes_UnpackToAIF.Checked = false;
modes_RepackToCSB.Checked = false;
btn_Extract.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.csb").Length == 0)
{
MessageBox.Show("There are no CSB files to unpack in this directory.", "No CSB files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
modes_UnpackToAIF.Checked = false;
modes_UnpackToWAV.Checked = false;
modes_RepackToCSB.Checked = true;
//Checks if there are any CSBs in the directory.
if (clb_CSBs.Items.Count == 0)
{
MessageBox.Show("There are no CSB directories to repack in this directory.", "No CSB directories available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
}
Properties.Settings.Default.Save();
}
private void Modes_RepackToCSB_CheckedChanged(object sender, EventArgs e)
{
if (modes_RepackToCSB.Checked)
{
clb_CSBs.Items.Clear();
btn_Extract.Text = "Repack";
#region Getting CSB files to convert...
foreach (string CSB in Directory.GetDirectories(Tools.Global.currentPath))
{
if (Directory.Exists(CSB))
{
clb_CSBs.Items.Add(Path.GetFileName(CSB));
}
}
#endregion
modes_UnpackToAIF.Checked = false;
modes_UnpackToWAV.Checked = false;
btn_Extract.Enabled = false;
if (clb_CSBs.Items.Count == 0)
{
MessageBox.Show("There are no CSB directories to repack in this directory.", "No CSB directories available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Properties.Settings.Default.csbUnpackMode == 0) { modes_UnpackToAIF.Checked = true; modes_UnpackToWAV.Checked = false; }
else { modes_UnpackToAIF.Checked = false; modes_UnpackToWAV.Checked = true; }
foreach (string CSB in Directory.GetFiles(Tools.Global.currentPath, "*.csb", SearchOption.TopDirectoryOnly))
{
if (File.Exists(CSB))
{
clb_CSBs.Items.Add(Path.GetFileName(CSB));
}
}
//Checks if there are any CSBs in the directory.
if (clb_CSBs.Items.Count == 0)
{
MessageBox.Show("There are no CSB files to unpack in this directory.", "No CSB files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
}
}
private void CSB_Studio_Load(object sender, EventArgs e)
{
clb_CSBs.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.csb").Length > 0)
{
if (Properties.Settings.Default.csbUnpackMode == 0) { modes_UnpackToAIF.Checked = true; modes_UnpackToWAV.Checked = false; }
else { modes_UnpackToAIF.Checked = false; modes_UnpackToWAV.Checked = true; }
}
else if (Directory.GetDirectories(Tools.Global.currentPath).Length > 0)
{
modes_UnpackToAIF.Checked = false;
modes_UnpackToWAV.Checked = false;
modes_RepackToCSB.Checked = true;
}
else { MessageBox.Show("There are no convertable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,258 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class DDS_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DDS_Studio));
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_DDS = new System.Windows.Forms.CheckedListBox();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.main_Options = new System.Windows.Forms.ToolStripMenuItem();
this.options_Modes = new System.Windows.Forms.ToolStripMenuItem();
this.modes_DDStoPNG = new System.Windows.Forms.ToolStripMenuItem();
this.modes_PNGtoDDS = new System.Windows.Forms.ToolStripMenuItem();
this.options_UseGPU = new System.Windows.Forms.ToolStripMenuItem();
this.options_ForceDX10 = new System.Windows.Forms.ToolStripMenuItem();
this.mstrip_Options = new System.Windows.Forms.MenuStrip();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.pnl_Backdrop.SuspendLayout();
this.mstrip_Options.SuspendLayout();
this.SuspendLayout();
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.LimeGreen;
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 48;
this.btn_Convert.Text = "Convert";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Convert_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 47;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 46;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_DDS
//
this.clb_DDS.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_DDS.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_DDS.CheckOnClick = true;
this.clb_DDS.FormattingEnabled = true;
this.clb_DDS.Location = new System.Drawing.Point(8, 76);
this.clb_DDS.Name = "clb_DDS";
this.clb_DDS.Size = new System.Drawing.Size(417, 304);
this.clb_DDS.TabIndex = 45;
this.clb_DDS.SelectedIndexChanged += new System.EventHandler(this.Clb_DDS_SelectedIndexChanged);
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(363, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(209, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "DDS Studio";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.LimeGreen;
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(440, 69);
this.pnl_Backdrop.TabIndex = 44;
//
// main_Options
//
this.main_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.options_Modes,
this.options_UseGPU,
this.options_ForceDX10});
this.main_Options.Name = "main_Options";
this.main_Options.Size = new System.Drawing.Size(61, 20);
this.main_Options.Text = "Options";
//
// options_Modes
//
this.options_Modes.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.modes_DDStoPNG,
this.modes_PNGtoDDS});
this.options_Modes.Name = "options_Modes";
this.options_Modes.Size = new System.Drawing.Size(212, 22);
this.options_Modes.Text = "Modes";
//
// modes_DDStoPNG
//
this.modes_DDStoPNG.CheckOnClick = true;
this.modes_DDStoPNG.Name = "modes_DDStoPNG";
this.modes_DDStoPNG.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.D)));
this.modes_DDStoPNG.Size = new System.Drawing.Size(175, 22);
this.modes_DDStoPNG.Text = "DDS to PNG";
this.modes_DDStoPNG.CheckedChanged += new System.EventHandler(this.Modes_DDStoPNG_CheckedChanged);
//
// modes_PNGtoDDS
//
this.modes_PNGtoDDS.CheckOnClick = true;
this.modes_PNGtoDDS.Name = "modes_PNGtoDDS";
this.modes_PNGtoDDS.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.P)));
this.modes_PNGtoDDS.Size = new System.Drawing.Size(175, 22);
this.modes_PNGtoDDS.Text = "PNG to DDS";
this.modes_PNGtoDDS.CheckedChanged += new System.EventHandler(this.Modes_PNGtoDDS_CheckedChanged);
//
// options_UseGPU
//
this.options_UseGPU.CheckOnClick = true;
this.options_UseGPU.Name = "options_UseGPU";
this.options_UseGPU.Size = new System.Drawing.Size(212, 22);
this.options_UseGPU.Text = "Use hardware acceleration";
this.options_UseGPU.CheckedChanged += new System.EventHandler(this.Options_UseGPU_CheckedChanged);
//
// options_ForceDX10
//
this.options_ForceDX10.CheckOnClick = true;
this.options_ForceDX10.Name = "options_ForceDX10";
this.options_ForceDX10.Size = new System.Drawing.Size(212, 22);
this.options_ForceDX10.Text = "Force DirectX 10";
this.options_ForceDX10.CheckedChanged += new System.EventHandler(this.Options_ForceDX10_CheckedChanged);
//
// mstrip_Options
//
this.mstrip_Options.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.mstrip_Options.BackColor = System.Drawing.SystemColors.Control;
this.mstrip_Options.Dock = System.Windows.Forms.DockStyle.None;
this.mstrip_Options.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.main_Options});
this.mstrip_Options.Location = new System.Drawing.Point(278, 386);
this.mstrip_Options.Name = "mstrip_Options";
this.mstrip_Options.Size = new System.Drawing.Size(69, 24);
this.mstrip_Options.TabIndex = 49;
this.mstrip_Options.Text = "menuStrip1";
//
// DDS_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.mstrip_Options);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.clb_DDS);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "DDS_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "DDS Studio";
this.Load += new System.EventHandler(this.DDS_Studio_Load);
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
this.mstrip_Options.ResumeLayout(false);
this.mstrip_Options.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_DDS;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
private System.Windows.Forms.ToolStripMenuItem main_Options;
private System.Windows.Forms.ToolStripMenuItem options_Modes;
private System.Windows.Forms.ToolStripMenuItem modes_DDStoPNG;
private System.Windows.Forms.ToolStripMenuItem modes_PNGtoDDS;
private System.Windows.Forms.ToolStripMenuItem options_UseGPU;
private System.Windows.Forms.ToolStripMenuItem options_ForceDX10;
private System.Windows.Forms.MenuStrip mstrip_Options;
}
}

View File

@ -1,231 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class DDS_Studio : Form
{
public DDS_Studio()
{
InitializeComponent();
}
public static string useGPU = " -nogpu";
public static string forceDirectX10 = "";
void DDS_Studio_Load(object sender, EventArgs e)
{
clb_DDS.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.dds").Length > 0)
{
modes_DDStoPNG.Checked = true;
modes_PNGtoDDS.Checked = false;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.png").Length > 0)
{
modes_DDStoPNG.Checked = false;
modes_PNGtoDDS.Checked = true;
}
else { MessageBox.Show("There are no convertable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
if (Properties.Settings.Default.useGPU == true) options_UseGPU.Checked = true;
if (Properties.Settings.Default.forceDirectX10 == true) options_ForceDX10.Checked = true;
}
void Clb_DDS_SelectedIndexChanged(object sender, EventArgs e)
{
clb_DDS.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Convert button, depending on whether a box has been checked.
if (clb_DDS.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Modes_DDStoPNG_CheckedChanged(object sender, EventArgs e)
{
if (modes_DDStoPNG.Checked == true)
{
clb_DDS.Items.Clear();
#region Getting DDS files to convert...
foreach (string DDS in Directory.GetFiles(Tools.Global.currentPath, "*.dds", SearchOption.TopDirectoryOnly))
{
if (File.Exists(DDS))
{
clb_DDS.Items.Add(Path.GetFileName(DDS));
}
}
#endregion
modes_PNGtoDDS.Checked = false;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.dds").Length == 0)
{
MessageBox.Show("There are no DDS files to convert in this directory.", "No DDS files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.png").Length == 0)
{
Close();
}
else
{
modes_DDStoPNG.Checked = false;
modes_PNGtoDDS.Checked = true;
}
}
}
}
void Modes_PNGtoDDS_CheckedChanged(object sender, EventArgs e)
{
if (modes_PNGtoDDS.Checked == true)
{
clb_DDS.Items.Clear();
#region Getting PNG files to convert...
foreach (string PNG in Directory.GetFiles(Tools.Global.currentPath, "*.png", SearchOption.TopDirectoryOnly))
{
if (File.Exists(PNG))
{
clb_DDS.Items.Add(Path.GetFileName(PNG));
}
}
#endregion
modes_DDStoPNG.Checked = false;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.png").Length == 0)
{
MessageBox.Show("There are no PNG files to convert in this directory.", "No PNG files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.dds").Length == 0)
{
Close();
}
else
{
modes_DDStoPNG.Checked = true;
modes_PNGtoDDS.Checked = false;
}
}
}
}
void Options_UseGPU_CheckedChanged(object sender, EventArgs e)
{
if (options_UseGPU.Checked == true)
{
useGPU = "";
Properties.Settings.Default.useGPU = true;
}
else
{
useGPU = " -nogpu";
Properties.Settings.Default.useGPU = false;
}
Properties.Settings.Default.Save();
}
void Options_ForceDX10_CheckedChanged(object sender, EventArgs e)
{
if (options_ForceDX10.Checked == true)
{
forceDirectX10 = " -dx10";
Properties.Settings.Default.forceDirectX10 = true;
}
else
{
forceDirectX10 = "";
Properties.Settings.Default.forceDirectX10 = false;
}
Properties.Settings.Default.Save();
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_DDS.Items.Count; i++) clb_DDS.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_DDS.Items.Count; i++) clb_DDS.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Btn_Convert_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Extract without anything selected, this will prevent that.
if (clb_DDS.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (modes_DDStoPNG.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each ADX.
foreach (string selectedDDS in clb_DDS.CheckedItems)
{
Tools.DDS.Convert(1, string.Empty, selectedDDS);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when converting the selected DDS files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_PNGtoDDS.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each WAV.
foreach (string selectedPNG in clb_DDS.CheckedItems)
{
Tools.PNG.Convert(1, string.Empty, selectedPNG);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when converting the selected PNG files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,206 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class LUB_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LUB_Studio));
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.clb_LUBs = new System.Windows.Forms.CheckedListBox();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_Decompile = new System.Windows.Forms.Button();
this.lbl_Mode = new System.Windows.Forms.Label();
this.combo_Mode = new System.Windows.Forms.ComboBox();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(201, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "LUB Studio";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(124)))));
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(439, 69);
this.pnl_Backdrop.TabIndex = 6;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(362, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// clb_LUBs
//
this.clb_LUBs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_LUBs.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_LUBs.CheckOnClick = true;
this.clb_LUBs.FormattingEnabled = true;
this.clb_LUBs.Location = new System.Drawing.Point(8, 76);
this.clb_LUBs.Name = "clb_LUBs";
this.clb_LUBs.Size = new System.Drawing.Size(417, 304);
this.clb_LUBs.TabIndex = 7;
this.clb_LUBs.SelectedIndexChanged += new System.EventHandler(this.Clb_LUBs_SelectedIndexChanged);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 8;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 9;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_Decompile
//
this.btn_Decompile.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Decompile.BackColor = System.Drawing.Color.CornflowerBlue;
this.btn_Decompile.Enabled = false;
this.btn_Decompile.FlatAppearance.BorderSize = 0;
this.btn_Decompile.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Decompile.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Decompile.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Decompile.Location = new System.Drawing.Point(350, 387);
this.btn_Decompile.Name = "btn_Decompile";
this.btn_Decompile.Size = new System.Drawing.Size(75, 23);
this.btn_Decompile.TabIndex = 10;
this.btn_Decompile.Text = "Decompile";
this.btn_Decompile.UseVisualStyleBackColor = false;
this.btn_Decompile.Click += new System.EventHandler(this.Btn_Decompile_Click);
//
// lbl_Mode
//
this.lbl_Mode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_Mode.AutoSize = true;
this.lbl_Mode.Location = new System.Drawing.Point(184, 392);
this.lbl_Mode.Name = "lbl_Mode";
this.lbl_Mode.Size = new System.Drawing.Size(37, 13);
this.lbl_Mode.TabIndex = 40;
this.lbl_Mode.Text = "Mode:";
//
// combo_Mode
//
this.combo_Mode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.combo_Mode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.combo_Mode.FormattingEnabled = true;
this.combo_Mode.Items.AddRange(new object[] {
"Decompile",
"Compile"});
this.combo_Mode.Location = new System.Drawing.Point(223, 388);
this.combo_Mode.Name = "combo_Mode";
this.combo_Mode.Size = new System.Drawing.Size(121, 21);
this.combo_Mode.TabIndex = 39;
this.combo_Mode.SelectedIndexChanged += new System.EventHandler(this.Combo_Mode_SelectedIndexChanged);
//
// LUB_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Control;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.lbl_Mode);
this.Controls.Add(this.combo_Mode);
this.Controls.Add(this.btn_Decompile);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.clb_LUBs);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "LUB_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "LUB Studio";
this.Load += new System.EventHandler(this.LUB_Studio_Load);
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
private System.Windows.Forms.CheckedListBox clb_LUBs;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_Decompile;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Mode;
private System.Windows.Forms.ComboBox combo_Mode;
}
}

View File

@ -1,219 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class LUB_Studio : Form
{
public LUB_Studio()
{
InitializeComponent();
}
void LUB_Studio_Load(object sender, EventArgs e)
{
btn_Decompile.Text = "Decompile";
clb_LUBs.Items.Clear();
if (VerifyDecompilableLUBs())
{
combo_Mode.SelectedIndex = 0;
}
else if (VerifyCompilableLUBs())
{
combo_Mode.SelectedIndex = 1;
}
else { MessageBox.Show("There are no Lua binaries in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
}
bool VerifyDecompilableLUBs()
{
#region Getting and verifying Lua binaries...
//Checks the header for each file to ensure that it can be safely decompiled then adds all decompilable LUBs in the current path to the CheckedListBox.
foreach (string LUB in Directory.GetFiles(Tools.Global.currentPath, "*.lub", SearchOption.TopDirectoryOnly))
{
if (File.Exists(LUB))
{
if (File.ReadAllLines(LUB)[0].Contains("LuaP"))
{
clb_LUBs.Items.Add(Path.GetFileName(LUB));
}
}
}
//Checks if there are any LUBs in the directory.
if (clb_LUBs.Items.Count == 0)
return false;
return true;
#endregion
}
bool VerifyCompilableLUBs()
{
#region Getting and verifying Lua binaries...
//Checks the header for each file to ensure that it can be safely decompiled then adds all decompilable LUBs in the current path to the CheckedListBox.
foreach (string LUB in Directory.GetFiles(Tools.Global.currentPath, "*.lub", SearchOption.TopDirectoryOnly))
{
if (File.Exists(LUB))
{
if (!File.ReadAllLines(LUB)[0].Contains("LuaP"))
{
clb_LUBs.Items.Add(Path.GetFileName(LUB));
}
}
}
//Checks if there are any LUBs in the directory.
if (clb_LUBs.Items.Count == 0)
return false;
return true;
#endregion
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_LUBs.Items.Count; i++) clb_LUBs.SetItemChecked(i, true);
btn_Decompile.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_LUBs.Items.Count; i++) clb_LUBs.SetItemChecked(i, false);
btn_Decompile.Enabled = false;
}
void Btn_Decompile_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Decompile without anything selected, this will prevent that.
if (clb_LUBs.CheckedItems.Count == 0) MessageBox.Show("Please select a Lua binary.", "No Lua binaries specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (combo_Mode.SelectedIndex == 0)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each LUB.
foreach (string selectedLUB in clb_LUBs.CheckedItems)
{
Tools.LUB.Decompile(Path.Combine(Tools.Global.currentPath, selectedLUB));
}
if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected LUBs have been decompiled.", "Decompilation Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
clb_LUBs.Items.Clear();
//Checks if there are any CSBs in the directory.
if (!VerifyDecompilableLUBs())
{
btn_Decompile.Enabled = false;
MessageBox.Show("There are no LUBs to decompile in this directory.", "No LUBs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
catch (Exception ex) {
MessageBox.Show($"An error occurred when decompiling the selected Lua binaries.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
if (combo_Mode.SelectedIndex == 1)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each LUB.
foreach (string selectedLUB in clb_LUBs.CheckedItems)
{
Tools.LUB.Compile(Path.Combine(Tools.Global.currentPath, selectedLUB));
}
if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected LUBs have been compiled.", "Compilation Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
clb_LUBs.Items.Clear();
//Checks if there are any CSBs in the directory.
if (!VerifyCompilableLUBs())
{
btn_Decompile.Enabled = false;
MessageBox.Show("There are no LUBs to compile in this directory.", "No LUBs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
combo_Mode.SelectedIndex = 0;
}
}
catch (Exception ex) {
MessageBox.Show($"An error occurred when compiling the selected Lua binaries.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
void Clb_LUBs_SelectedIndexChanged(object sender, EventArgs e)
{
clb_LUBs.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Decompile button, depending on whether a box has been checked.
if (clb_LUBs.CheckedItems.Count > 0)
{
btn_Decompile.Enabled = true;
}
else
{
btn_Decompile.Enabled = false;
}
}
private void Combo_Mode_SelectedIndexChanged(object sender, EventArgs e)
{
if (combo_Mode.SelectedIndex == 0)
{
btn_Decompile.Text = "Decompile";
clb_LUBs.Items.Clear();
//Checks if there are any CSBs in the directory.
if (!VerifyDecompilableLUBs())
{
btn_Decompile.Enabled = false;
MessageBox.Show("There are no LUBs to decompile in this directory.", "No LUBs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
else if (combo_Mode.SelectedIndex == 1)
{
btn_Decompile.Text = "Compile";
clb_LUBs.Items.Clear();
//Checks if there are any CSBs in the directory.
if (!VerifyCompilableLUBs())
{
btn_Decompile.Enabled = false;
MessageBox.Show("There are no LUBs to compile in this directory.", "No LUBs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
combo_Mode.SelectedIndex = 0;
}
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,204 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class MST_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MST_Studio));
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Title = new System.Windows.Forms.Label();
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_MSTs = new System.Windows.Forms.CheckedListBox();
this.lbl_Mode = new System.Windows.Forms.Label();
this.combo_Mode = new System.Windows.Forms.ComboBox();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.SuspendLayout();
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.CadetBlue;
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(439, 69);
this.pnl_Backdrop.TabIndex = 30;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(362, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(212, 47);
this.lbl_Title.TabIndex = 37;
this.lbl_Title.Text = "MST Studio";
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.CadetBlue;
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 34;
this.btn_Convert.Text = "Export";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Decode_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 33;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 32;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_MSTs
//
this.clb_MSTs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_MSTs.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_MSTs.CheckOnClick = true;
this.clb_MSTs.FormattingEnabled = true;
this.clb_MSTs.Location = new System.Drawing.Point(8, 76);
this.clb_MSTs.Name = "clb_MSTs";
this.clb_MSTs.Size = new System.Drawing.Size(417, 304);
this.clb_MSTs.TabIndex = 31;
this.clb_MSTs.SelectedIndexChanged += new System.EventHandler(this.Clb_MSTs_SelectedIndexChanged);
//
// lbl_Mode
//
this.lbl_Mode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.lbl_Mode.AutoSize = true;
this.lbl_Mode.Location = new System.Drawing.Point(184, 392);
this.lbl_Mode.Name = "lbl_Mode";
this.lbl_Mode.Size = new System.Drawing.Size(37, 13);
this.lbl_Mode.TabIndex = 38;
this.lbl_Mode.Text = "Mode:";
//
// combo_Mode
//
this.combo_Mode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.combo_Mode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.combo_Mode.FormattingEnabled = true;
this.combo_Mode.Items.AddRange(new object[] {
"Export",
"Import"});
this.combo_Mode.Location = new System.Drawing.Point(223, 388);
this.combo_Mode.Name = "combo_Mode";
this.combo_Mode.Size = new System.Drawing.Size(121, 21);
this.combo_Mode.TabIndex = 37;
this.combo_Mode.SelectedIndexChanged += new System.EventHandler(this.Combo_Mode_SelectedIndexChanged);
//
// MST_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Control;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.lbl_Mode);
this.Controls.Add(this.combo_Mode);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.clb_MSTs);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "MST_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "MST Studio";
this.Load += new System.EventHandler(this.MST_Studio_Load);
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Panel pnl_Backdrop;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_MSTs;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Label lbl_Mode;
private System.Windows.Forms.ComboBox combo_Mode;
}
}

View File

@ -1,169 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class MST_Studio : Form
{
public MST_Studio()
{
InitializeComponent();
}
void MST_Studio_Load(object sender, EventArgs e)
{
btn_Convert.Text = "Export";
clb_MSTs.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.mst").Length > 0)
{
combo_Mode.SelectedIndex = 0;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.xml").Length > 0)
{
combo_Mode.SelectedIndex = 1;
}
else { MessageBox.Show("There are no convertable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_MSTs.Items.Count; i++) clb_MSTs.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_MSTs.Items.Count; i++) clb_MSTs.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Clb_MSTs_SelectedIndexChanged(object sender, EventArgs e)
{
clb_MSTs.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Convert button, depending on whether a box has been checked.
if (clb_MSTs.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Btn_Decode_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Export without anything selected, this will prevent that.
if (clb_MSTs.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (combo_Mode.SelectedIndex == 0)
{
try
{
foreach (string selectedMST in clb_MSTs.CheckedItems)
{
Tools.MST.Export(1, string.Empty, selectedMST);
}
if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected MSTs have been exported.", "Export Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when exporting the MSTs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (combo_Mode.SelectedIndex == 1)
{
try
{
foreach (string selectedXML in clb_MSTs.CheckedItems)
{
Tools.MST.Import(1, selectedXML);
}
if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected XMLs have been imported.", "Import Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when importing the XMLs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
void Combo_Mode_SelectedIndexChanged(object sender, EventArgs e)
{
if (combo_Mode.SelectedIndex == 0)
{
btn_Convert.Text = "Export";
clb_MSTs.Items.Clear();
foreach (string MST in Directory.GetFiles(Tools.Global.currentPath, "*.mst", SearchOption.TopDirectoryOnly))
{
if (File.Exists(MST))
{
clb_MSTs.Items.Add(Path.GetFileName(MST));
}
}
//Checks if there are any CSBs in the directory.
if (clb_MSTs.Items.Count == 0)
{
MessageBox.Show("There are no MSTs to export in this directory.", "No MSTs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
else if (combo_Mode.SelectedIndex == 1)
{
btn_Convert.Text = "Import";
clb_MSTs.Items.Clear();
foreach (string XML in Directory.GetFiles(Tools.Global.currentPath, "*.xml", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XML))
{
clb_MSTs.Items.Add(Path.GetFileName(XML));
}
}
//Checks if there are any CSBs in the directory.
if (clb_MSTs.Items.Count == 0)
{
MessageBox.Show("There are no XMLs to import in this directory.", "No XMLs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
combo_Mode.SelectedIndex = 0;
}
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,226 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class SET_Studio : Form
{
public SET_Studio()
{
InitializeComponent();
}
void SET_Studio_Load(object sender, EventArgs e)
{
btn_Convert.Text = "Export";
clb_SETs.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.set").Length > 0)
{
modes_Export.Checked = true;
modes_Import.Checked = false;
options_DeleteXML.Visible = false;
options_CreateBackupSET.Visible = false;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.xml").Length > 0)
{
modes_Export.Checked = false;
modes_Import.Checked = true;
options_DeleteXML.Visible = true;
options_CreateBackupSET.Visible = true;
}
else { MessageBox.Show("There are no convertable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
if (Properties.Settings.Default.backupSET == true) options_CreateBackupSET.Checked = true;
if (Properties.Settings.Default.deleteXML == true) options_DeleteXML.Checked = true;
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_SETs.Items.Count; i++) clb_SETs.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
private void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_SETs.Items.Count; i++) clb_SETs.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Clb_SETs_SelectedIndexChanged(object sender, EventArgs e)
{
clb_SETs.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Convert button, depending on whether a box has been checked.
if (clb_SETs.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Btn_Convert_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Export without anything selected, this will prevent that.
if (clb_SETs.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (modes_Export.Checked)
{
try
{
foreach (string selectedSET in clb_SETs.CheckedItems)
{
Tools.SET.Export(1, string.Empty, selectedSET);
}
if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected SETs have been exported.", "Export Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when converting the SETs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_Import.Checked)
{
try
{
foreach (string selectedXML in clb_SETs.CheckedItems)
{
Tools.SET.Import(selectedXML);
}
if (Properties.Settings.Default.disableWarns == false) { MessageBox.Show("All selected XMLs have been imported.", "Import Complete", MessageBoxButtons.OK, MessageBoxIcon.Information); }
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when importing the XMLs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
void Modes_Export_CheckedChanged(object sender, EventArgs e)
{
if (modes_Export.Checked == true)
{
modes_Import.Checked = false;
options_DeleteXML.Visible = false;
options_CreateBackupSET.Visible = false;
btn_Convert.Enabled = false;
btn_Convert.Text = "Export";
clb_SETs.Items.Clear();
#region Getting SETs to unpack...
foreach (string SET in Directory.GetFiles(Tools.Global.currentPath, "*.set", SearchOption.TopDirectoryOnly))
{
if (File.Exists(SET))
{
clb_SETs.Items.Add(Path.GetFileName(SET));
}
}
#endregion
if (Directory.GetFiles(Tools.Global.currentPath, "*.set").Length == 0)
{
MessageBox.Show("There are no SETs to export in this directory.", "No SETs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.xml").Length == 0)
{
Close();
}
else
{
modes_Export.Checked = false;
modes_Import.Checked = true;
}
}
}
}
void Modes_Import_CheckedChanged(object sender, EventArgs e)
{
if (modes_Import.Checked == true)
{
modes_Export.Checked = false;
options_DeleteXML.Visible = true;
options_CreateBackupSET.Visible = true;
btn_Convert.Enabled = false;
btn_Convert.Text = "Import";
clb_SETs.Items.Clear();
#region Getting SETs to unpack...
foreach (string XML in Directory.GetFiles(Tools.Global.currentPath, "*.xml", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XML))
{
clb_SETs.Items.Add(Path.GetFileName(XML));
}
}
#endregion
if (Directory.GetFiles(Tools.Global.currentPath, "*.xml").Length == 0)
{
MessageBox.Show("There are no XMLs to import in this directory.", "No XMLs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.set").Length == 0)
{
Close();
}
else
{
modes_Export.Checked = true;
modes_Import.Checked = false;
}
}
}
}
void Options_CreateBackupSET_CheckedChanged(object sender, EventArgs e)
{
if (options_CreateBackupSET.Checked == true) Properties.Settings.Default.backupSET = true;
else Properties.Settings.Default.backupSET = false;
Properties.Settings.Default.Save();
}
void Options_DeleteXML_CheckedChanged(object sender, EventArgs e)
{
if (options_DeleteXML.Checked == true) Properties.Settings.Default.deleteXML = true;
else Properties.Settings.Default.deleteXML = false;
Properties.Settings.Default.Save();
}
}
}

View File

@ -1,281 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class XMA_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(XMA_Studio));
this.looping_SetLoop = new System.Windows.Forms.ToolStripMenuItem();
this.looping_Whole = new System.Windows.Forms.ToolStripMenuItem();
this.options_Looping = new System.Windows.Forms.ToolStripMenuItem();
this.modes_WAVtoXMA = new System.Windows.Forms.ToolStripMenuItem();
this.modes_XMAtoWAV = new System.Windows.Forms.ToolStripMenuItem();
this.options_Modes = new System.Windows.Forms.ToolStripMenuItem();
this.main_Options = new System.Windows.Forms.ToolStripMenuItem();
this.options_PatchXMA = new System.Windows.Forms.ToolStripMenuItem();
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_XMA = new System.Windows.Forms.CheckedListBox();
this.mstrip_Options = new System.Windows.Forms.MenuStrip();
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.mstrip_Options.SuspendLayout();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.SuspendLayout();
//
// looping_SetLoop
//
this.looping_SetLoop.Name = "looping_SetLoop";
this.looping_SetLoop.Size = new System.Drawing.Size(172, 22);
this.looping_SetLoop.Text = "Set loop position...";
this.looping_SetLoop.Visible = false;
//
// looping_Whole
//
this.looping_Whole.CheckOnClick = true;
this.looping_Whole.Name = "looping_Whole";
this.looping_Whole.Size = new System.Drawing.Size(172, 22);
this.looping_Whole.Text = "Loop entire track";
this.looping_Whole.CheckedChanged += new System.EventHandler(this.Looping_Whole_CheckedChanged);
//
// options_Looping
//
this.options_Looping.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.looping_Whole,
this.looping_SetLoop});
this.options_Looping.Name = "options_Looping";
this.options_Looping.Size = new System.Drawing.Size(133, 22);
this.options_Looping.Text = "Looping";
this.options_Looping.Visible = false;
//
// modes_WAVtoXMA
//
this.modes_WAVtoXMA.CheckOnClick = true;
this.modes_WAVtoXMA.Name = "modes_WAVtoXMA";
this.modes_WAVtoXMA.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.W)));
this.modes_WAVtoXMA.Size = new System.Drawing.Size(183, 22);
this.modes_WAVtoXMA.Text = "WAV to XMA";
this.modes_WAVtoXMA.CheckedChanged += new System.EventHandler(this.Modes_WAVtoXMA_CheckedChanged);
//
// modes_XMAtoWAV
//
this.modes_XMAtoWAV.CheckOnClick = true;
this.modes_XMAtoWAV.Name = "modes_XMAtoWAV";
this.modes_XMAtoWAV.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.A)));
this.modes_XMAtoWAV.Size = new System.Drawing.Size(183, 22);
this.modes_XMAtoWAV.Text = "XMA to WAV";
this.modes_XMAtoWAV.CheckedChanged += new System.EventHandler(this.Modes_XMAtoWAV_CheckedChanged);
//
// options_Modes
//
this.options_Modes.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.modes_XMAtoWAV,
this.modes_WAVtoXMA});
this.options_Modes.Name = "options_Modes";
this.options_Modes.Size = new System.Drawing.Size(133, 22);
this.options_Modes.Text = "Modes";
//
// main_Options
//
this.main_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.options_Modes,
this.options_Looping,
this.options_PatchXMA});
this.main_Options.Name = "main_Options";
this.main_Options.Size = new System.Drawing.Size(61, 20);
this.main_Options.Text = "Options";
//
// options_PatchXMA
//
this.options_PatchXMA.CheckOnClick = true;
this.options_PatchXMA.Name = "options_PatchXMA";
this.options_PatchXMA.Size = new System.Drawing.Size(133, 22);
this.options_PatchXMA.Text = "Patch XMA";
this.options_PatchXMA.Visible = false;
this.options_PatchXMA.CheckedChanged += new System.EventHandler(this.Options_PatchXMA_CheckedChanged);
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(121)))), ((int)(((byte)(59)))));
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 55;
this.btn_Convert.Text = "Encode";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Convert_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 54;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 53;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_XMA
//
this.clb_XMA.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_XMA.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_XMA.CheckOnClick = true;
this.clb_XMA.FormattingEnabled = true;
this.clb_XMA.Location = new System.Drawing.Point(8, 76);
this.clb_XMA.Name = "clb_XMA";
this.clb_XMA.Size = new System.Drawing.Size(417, 304);
this.clb_XMA.TabIndex = 52;
this.clb_XMA.SelectedIndexChanged += new System.EventHandler(this.Clb_XMA_SelectedIndexChanged);
//
// mstrip_Options
//
this.mstrip_Options.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.mstrip_Options.BackColor = System.Drawing.SystemColors.Control;
this.mstrip_Options.Dock = System.Windows.Forms.DockStyle.None;
this.mstrip_Options.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.main_Options});
this.mstrip_Options.Location = new System.Drawing.Point(278, 386);
this.mstrip_Options.Name = "mstrip_Options";
this.mstrip_Options.Size = new System.Drawing.Size(69, 24);
this.mstrip_Options.TabIndex = 56;
this.mstrip_Options.Text = "menuStrip1";
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(219, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "XMA Studio";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(121)))), ((int)(((byte)(59)))));
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(440, 69);
this.pnl_Backdrop.TabIndex = 51;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(363, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// XMA_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.clb_XMA);
this.Controls.Add(this.mstrip_Options);
this.Controls.Add(this.pnl_Backdrop);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "XMA_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "XMA Studio";
this.Load += new System.EventHandler(this.XMA_Studio_Load);
this.mstrip_Options.ResumeLayout(false);
this.mstrip_Options.PerformLayout();
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.ToolStripMenuItem looping_SetLoop;
private System.Windows.Forms.ToolStripMenuItem looping_Whole;
private System.Windows.Forms.ToolStripMenuItem options_Looping;
private System.Windows.Forms.ToolStripMenuItem modes_WAVtoXMA;
private System.Windows.Forms.ToolStripMenuItem modes_XMAtoWAV;
private System.Windows.Forms.ToolStripMenuItem options_Modes;
private System.Windows.Forms.ToolStripMenuItem main_Options;
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_XMA;
private System.Windows.Forms.MenuStrip mstrip_Options;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.ToolStripMenuItem options_PatchXMA;
}
}

View File

@ -1,203 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
namespace Sonic_06_Toolkit
{
public partial class XMA_Studio : Form
{
public XMA_Studio()
{
InitializeComponent();
}
public static string wholeLoop = "/L";
void Modes_XMAtoWAV_CheckedChanged(object sender, EventArgs e)
{
if (modes_XMAtoWAV.Checked == true)
{
clb_XMA.Items.Clear();
#region Getting XMAs to convert...
foreach (string XMA in Directory.GetFiles(Tools.Global.currentPath, "*.xma", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XMA))
{
clb_XMA.Items.Add(Path.GetFileName(XMA));
}
}
#endregion
modes_WAVtoXMA.Checked = false;
//options_Looping.Visible = false;
options_PatchXMA.Visible = false;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.xma").Length == 0)
{
MessageBox.Show("There are no XMAs to encode in this directory.", "No XMAs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length == 0)
{
Close();
}
else
{
modes_XMAtoWAV.Checked = false;
modes_WAVtoXMA.Checked = true;
}
}
}
}
void Modes_WAVtoXMA_CheckedChanged(object sender, EventArgs e)
{
if (modes_WAVtoXMA.Checked == true)
{
clb_XMA.Items.Clear();
#region Getting WAV files to convert...
foreach (string WAV in Directory.GetFiles(Tools.Global.currentPath, "*.wav", SearchOption.TopDirectoryOnly))
{
if (File.Exists(WAV))
{
clb_XMA.Items.Add(Path.GetFileName(WAV));
}
}
#endregion
modes_XMAtoWAV.Checked = false;
//options_Looping.Visible = true;
options_PatchXMA.Visible = true;
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length == 0)
{
MessageBox.Show("There are no WAV files to encode in this directory.", "No WAV files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (Directory.GetFiles(Tools.Global.currentPath, "*.xma").Length == 0)
{
Close();
}
else
{
modes_XMAtoWAV.Checked = true;
modes_WAVtoXMA.Checked = false;
}
}
}
}
void XMA_Studio_Load(object sender, EventArgs e)
{
clb_XMA.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.xma").Length > 0)
{
modes_XMAtoWAV.Checked = true;
modes_WAVtoXMA.Checked = false;
//options_Looping.Visible = false;
}
else if (Directory.GetFiles(Tools.Global.currentPath, "*.wav").Length > 0)
{
modes_XMAtoWAV.Checked = false;
modes_WAVtoXMA.Checked = true;
//options_Looping.Visible = true;
}
else { MessageBox.Show("There are no encodable files in this directory.", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
if (Properties.Settings.Default.XMAwholeLoop == true) looping_Whole.Checked = true; else looping_Whole.Checked = false;
if (Properties.Settings.Default.patchXMA == true) options_PatchXMA.Checked = true; else options_PatchXMA.Checked = false;
}
void Clb_XMA_SelectedIndexChanged(object sender, EventArgs e)
{
clb_XMA.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Decompile button, depending on whether a box has been checked.
if (clb_XMA.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_XMA.Items.Count; i++) clb_XMA.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_XMA.Items.Count; i++) clb_XMA.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Btn_Convert_Click(object sender, EventArgs e)
{
//In the odd chance that someone is ever able to click Extract without anything selected, this will prevent that.
if (clb_XMA.CheckedItems.Count == 0) MessageBox.Show("Please select a file.", "No files specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (modes_XMAtoWAV.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each AT3.
foreach (string selectedXMA in clb_XMA.CheckedItems)
{
Tools.XMA.ConvertToWAV(1, string.Empty, selectedXMA);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when encoding the selected XMAs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_WAVtoXMA.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each WAV.
foreach (string selectedWAV in clb_XMA.CheckedItems)
{
Tools.XMA.ConvertToXMA(2, selectedWAV);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when encoding the selected WAV files.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
void Options_PatchXMA_CheckedChanged(object sender, EventArgs e)
{
if (options_PatchXMA.Checked == true) Properties.Settings.Default.patchXMA = true;
else Properties.Settings.Default.patchXMA = false;
Properties.Settings.Default.Save();
}
void Looping_Whole_CheckedChanged(object sender, EventArgs e)
{
if (looping_Whole.Checked == true)
{
wholeLoop = "/L";
Properties.Settings.Default.XMAwholeLoop = true;
}
else
{
wholeLoop = "/LR";
Properties.Settings.Default.XMAwholeLoop = false;
}
Properties.Settings.Default.Save();
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,337 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class XNO_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(XNO_Studio));
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_XNOs = new System.Windows.Forms.CheckedListBox();
this.split_XNMStudio = new System.Windows.Forms.SplitContainer();
this.clb_XNOs_XNM = new System.Windows.Forms.CheckedListBox();
this.clb_XNMs = new System.Windows.Forms.CheckedListBox();
this.tm_ItemCheck = new System.Windows.Forms.Timer(this.components);
this.mstrip_Options = new System.Windows.Forms.MenuStrip();
this.main_Options = new System.Windows.Forms.ToolStripMenuItem();
this.options_Modes = new System.Windows.Forms.ToolStripMenuItem();
this.modes_Model = new System.Windows.Forms.ToolStripMenuItem();
this.modes_ModelAndAnimation = new System.Windows.Forms.ToolStripMenuItem();
this.modes_BackfaceCulling = new System.Windows.Forms.ToolStripMenuItem();
this.option_Culling = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.pnl_Backdrop.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.split_XNMStudio)).BeginInit();
this.split_XNMStudio.Panel1.SuspendLayout();
this.split_XNMStudio.Panel2.SuspendLayout();
this.split_XNMStudio.SuspendLayout();
this.mstrip_Options.SuspendLayout();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(215, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "XNO Studio";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(241)))), ((int)(((byte)(164)))), ((int)(((byte)(43)))));
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(439, 69);
this.pnl_Backdrop.TabIndex = 16;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(362, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(241)))), ((int)(((byte)(164)))), ((int)(((byte)(43)))));
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 20;
this.btn_Convert.Text = "Convert";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Decompile_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 19;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 18;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_XNOs
//
this.clb_XNOs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_XNOs.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_XNOs.CheckOnClick = true;
this.clb_XNOs.FormattingEnabled = true;
this.clb_XNOs.Location = new System.Drawing.Point(8, 76);
this.clb_XNOs.Name = "clb_XNOs";
this.clb_XNOs.Size = new System.Drawing.Size(417, 304);
this.clb_XNOs.TabIndex = 17;
this.clb_XNOs.SelectedIndexChanged += new System.EventHandler(this.Clb_XNOs_SelectedIndexChanged);
//
// split_XNMStudio
//
this.split_XNMStudio.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.split_XNMStudio.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.split_XNMStudio.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.split_XNMStudio.Location = new System.Drawing.Point(8, 76);
this.split_XNMStudio.Name = "split_XNMStudio";
//
// split_XNMStudio.Panel1
//
this.split_XNMStudio.Panel1.Controls.Add(this.clb_XNOs_XNM);
//
// split_XNMStudio.Panel2
//
this.split_XNMStudio.Panel2.Controls.Add(this.clb_XNMs);
this.split_XNMStudio.Size = new System.Drawing.Size(417, 304);
this.split_XNMStudio.SplitterDistance = 207;
this.split_XNMStudio.TabIndex = 29;
//
// clb_XNOs_XNM
//
this.clb_XNOs_XNM.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.clb_XNOs_XNM.CheckOnClick = true;
this.clb_XNOs_XNM.Dock = System.Windows.Forms.DockStyle.Fill;
this.clb_XNOs_XNM.FormattingEnabled = true;
this.clb_XNOs_XNM.Location = new System.Drawing.Point(0, 0);
this.clb_XNOs_XNM.Name = "clb_XNOs_XNM";
this.clb_XNOs_XNM.Size = new System.Drawing.Size(205, 302);
this.clb_XNOs_XNM.TabIndex = 0;
this.clb_XNOs_XNM.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.Clb_XNOs_XNM_ItemCheck);
this.clb_XNOs_XNM.SelectedIndexChanged += new System.EventHandler(this.Clb_XNOs_XNM_SelectedIndexChanged);
//
// clb_XNMs
//
this.clb_XNMs.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.clb_XNMs.CheckOnClick = true;
this.clb_XNMs.Dock = System.Windows.Forms.DockStyle.Fill;
this.clb_XNMs.FormattingEnabled = true;
this.clb_XNMs.Location = new System.Drawing.Point(0, 0);
this.clb_XNMs.Name = "clb_XNMs";
this.clb_XNMs.Size = new System.Drawing.Size(204, 302);
this.clb_XNMs.TabIndex = 0;
this.clb_XNMs.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.Clb_XNMs_ItemCheck);
this.clb_XNMs.SelectedIndexChanged += new System.EventHandler(this.Clb_XNMs_SelectedIndexChanged);
//
// tm_ItemCheck
//
this.tm_ItemCheck.Tick += new System.EventHandler(this.Tm_ItemCheck_Tick);
//
// mstrip_Options
//
this.mstrip_Options.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.mstrip_Options.BackColor = System.Drawing.SystemColors.Control;
this.mstrip_Options.Dock = System.Windows.Forms.DockStyle.None;
this.mstrip_Options.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.main_Options});
this.mstrip_Options.Location = new System.Drawing.Point(158, 386);
this.mstrip_Options.Name = "mstrip_Options";
this.mstrip_Options.Size = new System.Drawing.Size(189, 24);
this.mstrip_Options.TabIndex = 50;
this.mstrip_Options.Text = "menuStrip1";
//
// main_Options
//
this.main_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.options_Modes,
this.option_Culling});
this.main_Options.Name = "main_Options";
this.main_Options.Size = new System.Drawing.Size(61, 20);
this.main_Options.Text = "Options";
//
// options_Modes
//
this.options_Modes.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.modes_Model,
this.modes_ModelAndAnimation,
this.toolStripSeparator1,
this.modes_BackfaceCulling});
this.options_Modes.Name = "options_Modes";
this.options_Modes.Size = new System.Drawing.Size(180, 22);
this.options_Modes.Text = "Modes";
//
// modes_Model
//
this.modes_Model.CheckOnClick = true;
this.modes_Model.Name = "modes_Model";
this.modes_Model.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.O)));
this.modes_Model.Size = new System.Drawing.Size(219, 22);
this.modes_Model.Text = "Model";
this.modes_Model.CheckedChanged += new System.EventHandler(this.Modes_Model_CheckedChanged);
//
// modes_ModelAndAnimation
//
this.modes_ModelAndAnimation.CheckOnClick = true;
this.modes_ModelAndAnimation.Name = "modes_ModelAndAnimation";
this.modes_ModelAndAnimation.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.M)));
this.modes_ModelAndAnimation.Size = new System.Drawing.Size(219, 22);
this.modes_ModelAndAnimation.Text = "Model + Animation";
this.modes_ModelAndAnimation.CheckedChanged += new System.EventHandler(this.Modes_ModelAndAnimation_CheckedChanged);
//
// modes_BackfaceCulling
//
this.modes_BackfaceCulling.CheckOnClick = true;
this.modes_BackfaceCulling.Name = "modes_BackfaceCulling";
this.modes_BackfaceCulling.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.B)));
this.modes_BackfaceCulling.Size = new System.Drawing.Size(219, 22);
this.modes_BackfaceCulling.Text = "Backface Tool";
this.modes_BackfaceCulling.CheckedChanged += new System.EventHandler(this.Modes_BackfaceCulling_CheckedChanged);
//
// option_Culling
//
this.option_Culling.CheckOnClick = true;
this.option_Culling.Name = "option_Culling";
this.option_Culling.Size = new System.Drawing.Size(180, 22);
this.option_Culling.Text = "Enable Culling";
this.option_Culling.Visible = false;
this.option_Culling.CheckedChanged += new System.EventHandler(this.Option_Culling_CheckedChanged);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(216, 6);
//
// XNO_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.mstrip_Options);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.clb_XNOs);
this.Controls.Add(this.split_XNMStudio);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(429, 458);
this.Name = "XNO_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "XNO Studio";
this.Load += new System.EventHandler(this.XNO_Studio_Load);
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.split_XNMStudio.Panel1.ResumeLayout(false);
this.split_XNMStudio.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.split_XNMStudio)).EndInit();
this.split_XNMStudio.ResumeLayout(false);
this.mstrip_Options.ResumeLayout(false);
this.mstrip_Options.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_XNOs;
private System.Windows.Forms.SplitContainer split_XNMStudio;
private System.Windows.Forms.CheckedListBox clb_XNOs_XNM;
private System.Windows.Forms.CheckedListBox clb_XNMs;
private System.Windows.Forms.Timer tm_ItemCheck;
private System.Windows.Forms.MenuStrip mstrip_Options;
private System.Windows.Forms.ToolStripMenuItem main_Options;
private System.Windows.Forms.ToolStripMenuItem options_Modes;
private System.Windows.Forms.ToolStripMenuItem modes_Model;
private System.Windows.Forms.ToolStripMenuItem modes_ModelAndAnimation;
private System.Windows.Forms.ToolStripMenuItem modes_BackfaceCulling;
private System.Windows.Forms.ToolStripMenuItem option_Culling;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
}
}

View File

@ -1,500 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class XNO_Studio : Form
{
public XNO_Studio()
{
InitializeComponent();
}
void XNO_Studio_Load(object sender, EventArgs e)
{
modes_Model.Checked = true;
split_XNMStudio.Visible = false;
tm_ItemCheck.Start();
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_XNOs.Items.Count; i++) clb_XNOs.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_XNOs_XNM.Items.Count; i++) clb_XNOs_XNM.SetItemChecked(i, false);
for (int i = 0; i < clb_XNMs.Items.Count; i++) clb_XNMs.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Btn_Decompile_Click(object sender, EventArgs e)
{
if (modes_Model.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each XNO.
foreach (string selectedXNO in clb_XNOs.CheckedItems)
{
Tools.XNO.Convert(1, string.Empty, selectedXNO);
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when converting the selected XNOs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else if (modes_ModelAndAnimation.Checked)
{
//In the odd chance that someone is ever able to click Convert without anything selected, this will prevent that.
if (clb_XNOs_XNM.CheckedItems.Count == 0) MessageBox.Show("Please select an XNO.", "No XNO specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
else if (clb_XNMs.CheckedItems.Count == 0) MessageBox.Show("Please select an XNM.", "No XNM specified", MessageBoxButtons.OK, MessageBoxIcon.Information);
else
{
try
{
string XNO = string.Empty;
string XNM = string.Empty;
//Gets all checked boxes from the CheckedListBox and builds a string for each XNO.
foreach (string selectedXNO in clb_XNOs_XNM.CheckedItems)
{
XNO = selectedXNO;
foreach (string selectedXNM in clb_XNMs.CheckedItems)
{
XNM = selectedXNM;
}
}
Tools.XNO.Animate(1, XNO, XNM);
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when converting the selected XNOs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
else if (modes_BackfaceCulling.Checked)
{
if (option_Culling.Checked)
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each XNO.
foreach (string selectedXNO in clb_XNOs.CheckedItems)
{
Tools.XNO.Culling(0, selectedXNO);
}
if (Properties.Settings.Default.disableWarns == false)
{
if (Tools.XNO.getItems.ToString() != string.Empty)
{
MessageBox.Show($"Processing complete, see below for a list of items:\n{Tools.XNO.getItems.ToString()}", "Processing complete!", MessageBoxButtons.OK, MessageBoxIcon.Information);
Tools.XNO.getItems.Clear();
}
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when applying culling to the selected XNOs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
else
{
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each XNO.
foreach (string selectedXNO in clb_XNOs.CheckedItems)
{
Tools.XNO.Culling(1, selectedXNO);
}
if (Properties.Settings.Default.disableWarns == false)
{
if (Tools.XNO.getItems.ToString() != string.Empty)
{
MessageBox.Show($"Processing complete, see below for a list of items:\n{Tools.XNO.getItems.ToString()}", "Processing complete!", MessageBoxButtons.OK, MessageBoxIcon.Information);
Tools.XNO.getItems.Clear();
}
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when applying culling to the selected XNOs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Tools.Notification.Dispose();
}
}
}
}
void Clb_XNOs_SelectedIndexChanged(object sender, EventArgs e)
{
clb_XNOs.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Convert button, depending on whether a box has been checked.
if (clb_XNOs.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Check_XNM_CheckedChanged(object sender, EventArgs e)
{
if (modes_ModelAndAnimation.Checked)
{
//Sets form to XNM Studio.
#region Controls...
Text = "XNM Studio";
lbl_Title.Text = "XNM Studio";
MinimumSize = new System.Drawing.Size(714, 458);
Width = 714;
if (WindowState != System.Windows.Forms.FormWindowState.Maximized)
{
var moveLeft = Location.X - 142;
Location = new System.Drawing.Point(moveLeft, Location.Y);
}
//Unchecks all available checkboxes for the XNOs CheckedListBox.
for (int i = 0; i < clb_XNOs.Items.Count; i++) clb_XNOs.SetItemChecked(i, false);
btn_Convert.Enabled = false;
split_XNMStudio.Visible = true;
btn_SelectAll.Enabled = false;
clb_XNOs.Visible = false;
#endregion
#region Getting XNOs...
//Adds all XNOs in the current path to the CheckedListBox.
foreach (string XNO in Directory.GetFiles(Tools.Global.currentPath, "*.xno", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XNO))
{
clb_XNOs_XNM.Items.Add(Path.GetFileName(XNO));
}
}
//Checks if there are any XNOs in the directory.
if (clb_XNOs.Items.Count == 0)
{
MessageBox.Show("There are no XNOs to convert in this directory.", "No XNOs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
#endregion
#region Getting XNMs...
//Adds all XNMs in the current path to the CheckedListBox.
foreach (string XNM in Directory.GetFiles(Tools.Global.currentPath, "*.xnm", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XNM))
{
clb_XNMs.Items.Add(Path.GetFileName(XNM));
}
}
//Checks if there are any XNOs in the directory.
if (clb_XNMs.Items.Count == 0)
{
MessageBox.Show("There are no XNMs to convert in this directory.", "No XNMs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
modes_ModelAndAnimation.Checked = false;
}
#endregion
}
else
{
//Resets form back to XNO Studio.
#region Controls...
Text = "XNO Studio";
lbl_Title.Text = "XNO Studio";
MinimumSize = new System.Drawing.Size(429, 458);
Width = 429;
if (WindowState != System.Windows.Forms.FormWindowState.Maximized)
{
var moveRight = Location.X + 142;
Location = new System.Drawing.Point(moveRight, Location.Y);
}
//Unchecks all available checkboxes.
for (int i = 0; i < clb_XNOs_XNM.Items.Count; i++) clb_XNOs_XNM.SetItemChecked(i, false);
btn_Convert.Enabled = false;
//Unchecks all available checkboxes.
for (int i = 0; i < clb_XNMs.Items.Count; i++) clb_XNMs.SetItemChecked(i, false);
btn_Convert.Enabled = false;
split_XNMStudio.Visible = false;
btn_SelectAll.Enabled = true;
clb_XNOs.Visible = true;
clb_XNOs_XNM.Items.Clear();
clb_XNMs.Items.Clear();
#endregion
}
}
void Clb_XNOs_XNM_SelectedIndexChanged(object sender, EventArgs e)
{
clb_XNOs_XNM.ClearSelected(); //Removes the blue highlight on recently checked boxes.
}
void Clb_XNMs_SelectedIndexChanged(object sender, EventArgs e)
{
clb_XNMs.ClearSelected(); //Removes the blue highlight on recently checked boxes.
}
void Clb_XNOs_XNM_ItemCheck(object sender, ItemCheckEventArgs e)
{
//Limits the CheckedListBox to only one selectable item.
if (clb_XNOs_XNM.CheckedItems.Count == 1 && e.NewValue == CheckState.Checked)
{
e.NewValue = CheckState.Unchecked;
}
}
void Clb_XNMs_ItemCheck(object sender, ItemCheckEventArgs e)
{
//Limits the CheckedListBox to only one selectable item.
if (clb_XNMs.CheckedItems.Count == 1 && e.NewValue == CheckState.Checked)
{
e.NewValue = CheckState.Unchecked;
}
}
void Tm_ItemCheck_Tick(object sender, EventArgs e)
{
if (modes_ModelAndAnimation.Checked)
{
//Enables/disables the Convert button, depending on whether a box has been checked.
if (clb_XNOs_XNM.CheckedItems.Count > 0 && clb_XNMs.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
}
private void Modes_Model_CheckedChanged(object sender, EventArgs e)
{
if (modes_Model.Checked)
{
modes_Model.Checked = true;
modes_ModelAndAnimation.Checked = false;
modes_BackfaceCulling.Checked = false;
option_Culling.Visible = false;
clb_XNOs.Items.Clear();
btn_Convert.Text = "Convert";
#region Getting XNO files to convert...
foreach (string XNO in Directory.GetFiles(Tools.Global.currentPath, "*.xno", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XNO))
{
clb_XNOs.Items.Add(Path.GetFileName(XNO));
}
}
#endregion
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.xno").Length == 0)
{
MessageBox.Show("There are no XNO files to unpack in this directory.", "No XNO files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
}
private void Modes_ModelAndAnimation_CheckedChanged(object sender, EventArgs e)
{
if (modes_ModelAndAnimation.Checked == true)
{
//Sets form to XNM Studio.
modes_Model.Checked = false;
modes_ModelAndAnimation.Checked = true;
modes_BackfaceCulling.Checked = false;
option_Culling.Visible = false;
clb_XNMs.Items.Clear();
btn_Convert.Text = "Convert";
#region Controls...
Text = "XNM Studio";
lbl_Title.Text = "XNM Studio";
MinimumSize = new System.Drawing.Size(714, 458);
Width = 714;
if (WindowState != System.Windows.Forms.FormWindowState.Maximized)
{
var moveLeft = Location.X - 142;
Location = new System.Drawing.Point(moveLeft, Location.Y);
}
//Unchecks all available checkboxes for the XNOs CheckedListBox.
for (int i = 0; i < clb_XNOs.Items.Count; i++) clb_XNOs.SetItemChecked(i, false);
btn_Convert.Enabled = false;
split_XNMStudio.Visible = true;
btn_SelectAll.Enabled = false;
clb_XNOs.Visible = false;
#endregion
#region Getting XNOs...
//Adds all XNOs in the current path to the CheckedListBox.
foreach (string XNO in Directory.GetFiles(Tools.Global.currentPath, "*.xno", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XNO))
{
clb_XNOs_XNM.Items.Add(Path.GetFileName(XNO));
}
}
//Checks if there are any XNOs in the directory.
if (clb_XNOs.Items.Count == 0)
{
MessageBox.Show("There are no XNOs to convert in this directory.", "No XNOs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
#endregion
#region Getting XNMs...
//Adds all XNMs in the current path to the CheckedListBox.
foreach (string XNM in Directory.GetFiles(Tools.Global.currentPath, "*.xnm", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XNM))
{
clb_XNMs.Items.Add(Path.GetFileName(XNM));
}
}
//Checks if there are any XNOs in the directory.
if (clb_XNMs.Items.Count == 0)
{
MessageBox.Show("There are no XNMs to convert in this directory.", "No XNMs available", MessageBoxButtons.OK, MessageBoxIcon.Information);
modes_Model.Checked = true;
modes_ModelAndAnimation.Checked = false;
modes_BackfaceCulling.Checked = false;
option_Culling.Visible = false;
}
#endregion
}
else
{
//Resets form back to XNO Studio.
#region Controls...
Text = "XNO Studio";
lbl_Title.Text = "XNO Studio";
MinimumSize = new System.Drawing.Size(429, 458);
Width = 429;
if (WindowState != System.Windows.Forms.FormWindowState.Maximized)
{
var moveRight = Location.X + 142;
Location = new System.Drawing.Point(moveRight, Location.Y);
}
//Unchecks all available checkboxes.
for (int i = 0; i < clb_XNOs_XNM.Items.Count; i++) clb_XNOs_XNM.SetItemChecked(i, false);
btn_Convert.Enabled = false;
//Unchecks all available checkboxes.
for (int i = 0; i < clb_XNMs.Items.Count; i++) clb_XNMs.SetItemChecked(i, false);
btn_Convert.Enabled = false;
split_XNMStudio.Visible = false;
btn_SelectAll.Enabled = true;
clb_XNOs.Visible = true;
clb_XNOs_XNM.Items.Clear();
clb_XNMs.Items.Clear();
#endregion
}
}
private void Option_Culling_CheckedChanged(object sender, EventArgs e)
{
if (option_Culling.Checked) { Properties.Settings.Default.culling = true; btn_Convert.Text = "Cull"; }
else { Properties.Settings.Default.culling = false; btn_Convert.Text = "Decull"; }
Properties.Settings.Default.Save();
}
private void Modes_BackfaceCulling_CheckedChanged(object sender, EventArgs e)
{
if (modes_BackfaceCulling.Checked)
{
modes_Model.Checked = false;
modes_ModelAndAnimation.Checked = false;
modes_BackfaceCulling.Checked = true;
option_Culling.Visible = true;
clb_XNOs.Items.Clear();
if (Properties.Settings.Default.culling) { option_Culling.Checked = true; btn_Convert.Text = "Cull"; }
else { option_Culling.Checked = false; btn_Convert.Text = "Decull"; }
#region Getting XNO files to convert...
foreach (string XNO in Directory.GetFiles(Tools.Global.currentPath, "*.xno", SearchOption.TopDirectoryOnly))
{
if (File.Exists(XNO))
{
clb_XNOs.Items.Add(Path.GetFileName(XNO));
}
}
#endregion
btn_Convert.Enabled = false;
if (Directory.GetFiles(Tools.Global.currentPath, "*.xno").Length == 0)
{
MessageBox.Show("There are no XNO files to unpack in this directory.", "No XNO files available", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,224 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Debug_Studio
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Debug_Studio));
this.btn_Convert = new System.Windows.Forms.Button();
this.btn_DeselectAll = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.clb_Debug = new System.Windows.Forms.CheckedListBox();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.lbl_Title = new System.Windows.Forms.Label();
this.pnl_Backdrop = new System.Windows.Forms.Panel();
this.main_Options = new System.Windows.Forms.ToolStripMenuItem();
this.options_Modes = new System.Windows.Forms.ToolStripMenuItem();
this.modes_SBKStudio = new System.Windows.Forms.ToolStripMenuItem();
this.mstrip_Options = new System.Windows.Forms.MenuStrip();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.pnl_Backdrop.SuspendLayout();
this.mstrip_Options.SuspendLayout();
this.SuspendLayout();
//
// btn_Convert
//
this.btn_Convert.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Convert.BackColor = System.Drawing.Color.RoyalBlue;
this.btn_Convert.Enabled = false;
this.btn_Convert.FlatAppearance.BorderSize = 0;
this.btn_Convert.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Convert.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Convert.ForeColor = System.Drawing.SystemColors.ControlText;
this.btn_Convert.Location = new System.Drawing.Point(350, 387);
this.btn_Convert.Name = "btn_Convert";
this.btn_Convert.Size = new System.Drawing.Size(75, 23);
this.btn_Convert.TabIndex = 54;
this.btn_Convert.Text = "Convert";
this.btn_Convert.UseVisualStyleBackColor = false;
this.btn_Convert.Click += new System.EventHandler(this.Btn_Convert_Click);
//
// btn_DeselectAll
//
this.btn_DeselectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_DeselectAll.BackColor = System.Drawing.Color.Tomato;
this.btn_DeselectAll.FlatAppearance.BorderSize = 0;
this.btn_DeselectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_DeselectAll.Location = new System.Drawing.Point(90, 387);
this.btn_DeselectAll.Name = "btn_DeselectAll";
this.btn_DeselectAll.Size = new System.Drawing.Size(75, 23);
this.btn_DeselectAll.TabIndex = 53;
this.btn_DeselectAll.Text = "Deselect All";
this.btn_DeselectAll.UseVisualStyleBackColor = false;
this.btn_DeselectAll.Click += new System.EventHandler(this.Btn_DeselectAll_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.btn_SelectAll.BackColor = System.Drawing.Color.SkyBlue;
this.btn_SelectAll.FlatAppearance.BorderSize = 0;
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Location = new System.Drawing.Point(8, 387);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(75, 23);
this.btn_SelectAll.TabIndex = 52;
this.btn_SelectAll.Text = "Select All";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.Btn_SelectAll_Click);
//
// clb_Debug
//
this.clb_Debug.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.clb_Debug.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.clb_Debug.CheckOnClick = true;
this.clb_Debug.FormattingEnabled = true;
this.clb_Debug.Location = new System.Drawing.Point(8, 76);
this.clb_Debug.Name = "clb_Debug";
this.clb_Debug.Size = new System.Drawing.Size(417, 304);
this.clb_Debug.TabIndex = 51;
this.clb_Debug.SelectedIndexChanged += new System.EventHandler(this.Clb_Debug_SelectedIndexChanged);
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(363, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlLightLight;
this.lbl_Title.Location = new System.Drawing.Point(14, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(247, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "Debug Studio";
//
// pnl_Backdrop
//
this.pnl_Backdrop.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.pnl_Backdrop.BackColor = System.Drawing.SystemColors.Control;
this.pnl_Backdrop.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pnl_Backdrop.BackgroundImage")));
this.pnl_Backdrop.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnl_Backdrop.Controls.Add(this.pic_Logo);
this.pnl_Backdrop.Controls.Add(this.lbl_Title);
this.pnl_Backdrop.Location = new System.Drawing.Point(-3, -2);
this.pnl_Backdrop.Name = "pnl_Backdrop";
this.pnl_Backdrop.Size = new System.Drawing.Size(440, 69);
this.pnl_Backdrop.TabIndex = 50;
//
// main_Options
//
this.main_Options.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.options_Modes});
this.main_Options.Name = "main_Options";
this.main_Options.Size = new System.Drawing.Size(61, 20);
this.main_Options.Text = "Options";
//
// options_Modes
//
this.options_Modes.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.modes_SBKStudio});
this.options_Modes.Name = "options_Modes";
this.options_Modes.Size = new System.Drawing.Size(180, 22);
this.options_Modes.Text = "Modes";
//
// modes_SBKStudio
//
this.modes_SBKStudio.CheckOnClick = true;
this.modes_SBKStudio.Name = "modes_SBKStudio";
this.modes_SBKStudio.Size = new System.Drawing.Size(180, 22);
this.modes_SBKStudio.Text = "SBK Studio";
this.modes_SBKStudio.CheckedChanged += new System.EventHandler(this.Modes_SBK_CheckedChanged);
//
// mstrip_Options
//
this.mstrip_Options.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.mstrip_Options.BackColor = System.Drawing.SystemColors.Control;
this.mstrip_Options.Dock = System.Windows.Forms.DockStyle.None;
this.mstrip_Options.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.main_Options});
this.mstrip_Options.Location = new System.Drawing.Point(278, 386);
this.mstrip_Options.Name = "mstrip_Options";
this.mstrip_Options.Size = new System.Drawing.Size(69, 24);
this.mstrip_Options.TabIndex = 55;
this.mstrip_Options.Text = "menuStrip1";
//
// Debug_Studio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(434, 419);
this.Controls.Add(this.btn_Convert);
this.Controls.Add(this.btn_DeselectAll);
this.Controls.Add(this.btn_SelectAll);
this.Controls.Add(this.clb_Debug);
this.Controls.Add(this.pnl_Backdrop);
this.Controls.Add(this.mstrip_Options);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimizeBox = false;
this.MinimumSize = new System.Drawing.Size(450, 458);
this.Name = "Debug_Studio";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Debug Studio";
this.Load += new System.EventHandler(this.Debug_Studio_Load);
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.pnl_Backdrop.ResumeLayout(false);
this.pnl_Backdrop.PerformLayout();
this.mstrip_Options.ResumeLayout(false);
this.mstrip_Options.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button btn_Convert;
private System.Windows.Forms.Button btn_DeselectAll;
private System.Windows.Forms.Button btn_SelectAll;
private System.Windows.Forms.CheckedListBox clb_Debug;
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel pnl_Backdrop;
private System.Windows.Forms.ToolStripMenuItem main_Options;
private System.Windows.Forms.ToolStripMenuItem options_Modes;
private System.Windows.Forms.ToolStripMenuItem modes_SBKStudio;
private System.Windows.Forms.MenuStrip mstrip_Options;
}
}

View File

@ -1,116 +0,0 @@
using System;
using System.IO;
using HedgeLib.Headers;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class Debug_Studio : Form
{
public Debug_Studio()
{
InitializeComponent();
}
void Debug_Studio_Load(object sender, EventArgs e)
{
clb_Debug.Items.Clear();
if (Directory.GetFiles(Tools.Global.currentPath, "*.sbk").Length > 0) { modes_SBKStudio.Checked = true; }
else { MessageBox.Show("There are no encodable files in this directory.\n\nDebug Studio searches for the following:\n► SBK", "No files available", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); }
}
void Btn_SelectAll_Click(object sender, EventArgs e)
{
//Checks all available checkboxes.
for (int i = 0; i < clb_Debug.Items.Count; i++) clb_Debug.SetItemChecked(i, true);
btn_Convert.Enabled = true;
}
void Btn_DeselectAll_Click(object sender, EventArgs e)
{
//Unchecks all available checkboxes.
for (int i = 0; i < clb_Debug.Items.Count; i++) clb_Debug.SetItemChecked(i, false);
btn_Convert.Enabled = false;
}
void Modes_SBK_CheckedChanged(object sender, EventArgs e)
{
if (modes_SBKStudio.Checked == true)
{
foreach (string SBK in Directory.GetFiles(Tools.Global.currentPath, "*.sbk", SearchOption.TopDirectoryOnly))
{
if (File.Exists(SBK))
{
clb_Debug.Items.Add(Path.GetFileName(SBK));
}
}
}
else
{
clb_Debug.Items.Clear();
Close();
}
}
void Clb_Debug_SelectedIndexChanged(object sender, EventArgs e)
{
clb_Debug.ClearSelected(); //Removes the blue highlight on recently checked boxes.
//Enables/disables the Extract button, depending on whether a box has been checked.
if (clb_Debug.CheckedItems.Count > 0)
{
btn_Convert.Enabled = true;
}
else
{
btn_Convert.Enabled = false;
}
}
void Btn_Convert_Click(object sender, EventArgs e)
{
if (modes_SBKStudio.Checked == true)
{
/* UNFINISHED CODE - SBK USES BINA */
try
{
//Gets all checked boxes from the CheckedListBox and builds a string for each AT3.
foreach (string selectedSBK in clb_Debug.CheckedItems)
{
var readSBK = new BINAv1Header();
}
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred when decoding the selected SBKs.\n\n{ex}", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,362 +0,0 @@
using System;
using System.IO;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class Debugger : Form
{
public Debugger()
{
InitializeComponent();
}
private Main mainForm = null;
public Debugger(Form callingForm)
{
mainForm = callingForm as Main;
InitializeComponent();
}
public static bool unsafeState = false;
void Debugger_Load(object sender, EventArgs e)
{
if (Properties.Settings.Default.debugShow == true) { check_DebugAdvanced.Checked = true; }
else { check_DebugAdvanced.Checked = false; }
if (Properties.Settings.Default.skipWorkaround == true) { check_skipWorkaround.Checked = true; }
else { check_skipWorkaround.Checked = false; }
//nud_Progress.Value = this.mainForm.UpdateProgressValue;
tm_Update.Start();
tm_getStorage.Start();
}
void Tm_Update_Tick(object sender, EventArgs e)
{
#region Global
if (Tools.Global.versionNumber != null) versionNumber.Text = Tools.Global.versionNumber; else versionNumber.Text = "None";
if (Tools.Global.versionNumberLong != null) latestVersion.Text = Tools.Global.versionNumberLong; else latestVersion.Text = "None";
if (Tools.Global.serverStatus != null) serverStatus.Text = Tools.Global.serverStatus; else serverStatus.Text = "None";
if (Tools.Global.currentPath != null) currentPath.Text = Tools.Global.currentPath; else currentPath.Text = "None";
if (Tools.Global.updateState != null) updateState.Text = Tools.Global.updateState; else updateState.Text = "None";
if (Tools.Global.getStorage != null || Tools.Global.getStorage == string.Empty) lbl_getStorage.Text = Tools.Global.getStorage; else lbl_getStorage.Text = "None";
if (Tools.Global.applicationData != null) applicationData.Text = Tools.Global.applicationData; else applicationData.Text = "None";
sessionID.Text = Tools.Global.sessionID.ToString();
getIndex.Text = Tools.Global.getIndex.ToString();
gameChanged.Text = Tools.Global.gameChanged.ToString();
#endregion
#region Settings
showSessionID.Text = Properties.Settings.Default.showSessionID.ToString();
if (Properties.Settings.Default.theme != "") theme.Text = Properties.Settings.Default.theme; else theme.Text = "None";
if (Properties.Settings.Default.rootPath != "") rootPath.Text = Properties.Settings.Default.rootPath; else rootPath.Text = "None";
if (Properties.Settings.Default.toolsPath != "") toolsPath.Text = Properties.Settings.Default.toolsPath; else toolsPath.Text = "None";
if (Properties.Settings.Default.archivesPath != "") archivesPath.Text = Properties.Settings.Default.archivesPath; else archivesPath.Text = "None";
disableSoftwareUpdater.Text = Properties.Settings.Default.disableSoftwareUpdater.ToString();
if (Properties.Settings.Default.unlubPath != "") unlubPath.Text = Properties.Settings.Default.unlubPath; else unlubPath.Text = "None";
if (Properties.Settings.Default.xnoPath != "") xnoPath.Text = Properties.Settings.Default.xnoPath; else xnoPath.Text = "None";
if (Properties.Settings.Default.unpackFile != "") unpackFile.Text = Properties.Settings.Default.unpackFile; else unpackFile.Text = "None";
if (Properties.Settings.Default.repackFile != "") repackFile.Text = Properties.Settings.Default.repackFile; else repackFile.Text = "None";
if (Properties.Settings.Default.xnoFile != "") xnoFile.Text = Properties.Settings.Default.xnoFile; else xnoFile.Text = "None";
if (Properties.Settings.Default.csbFile != "") csbFile.Text = Properties.Settings.Default.csbFile; else csbFile.Text = "None";
if (Properties.Settings.Default.adx2wavFile != "") adx2wavFile.Text = Properties.Settings.Default.adx2wavFile; else adx2wavFile.Text = "None";
if (Properties.Settings.Default.criconverterFile != "") criconverterFile.Text = Properties.Settings.Default.criconverterFile; else criconverterFile.Text = "None";
showLogo.Text = Properties.Settings.Default.showLogo.ToString();
unpackAndLaunch.Text = Properties.Settings.Default.unpackAndLaunch.ToString();
if (Properties.Settings.Default.gamePath != "") gamePath.Text = Properties.Settings.Default.gamePath; else gamePath.Text = "None";
if (Properties.Settings.Default.exisoFile != "") exisoFile.Text = Properties.Settings.Default.exisoFile; else exisoFile.Text = "None";
if (Properties.Settings.Default.at3File != "") at3File.Text = Properties.Settings.Default.at3File; else at3File.Text = "None";
if (Properties.Settings.Default.xeniaFile != "") xeniaFile.Text = Properties.Settings.Default.xeniaFile; else xeniaFile.Text = "None";
if (Properties.Settings.Default.directXFile != "") directXFile.Text = Properties.Settings.Default.directXFile; else directXFile.Text = "None";
if (Properties.Settings.Default.arctoolFile != "") arctoolFile.Text = Properties.Settings.Default.arctoolFile; else arctoolFile.Text = "None";
ignoreLoop.Text = Properties.Settings.Default.ignoreLoop.ToString();
removeLoop.Text = Properties.Settings.Default.removeLoop.ToString();
downmix.Text = Properties.Settings.Default.downmix.ToString();
volume.Text = Properties.Settings.Default.volume.ToString();
wholeLoop.Text = Properties.Settings.Default.AT3wholeLoop.ToString();
useGPU.Text = Properties.Settings.Default.useGPU.ToString();
forceDirectX10.Text = Properties.Settings.Default.forceDirectX10.ToString();
backupSET.Text = Properties.Settings.Default.backupSET.ToString();
deleteXML.Text = Properties.Settings.Default.deleteXML.ToString();
if (Properties.Settings.Default.mstFile != "") mstFile.Text = Properties.Settings.Default.mstFile; else mstFile.Text = "None";
gameDir.Text = Properties.Settings.Default.gameDir.ToString();
debugMode.Text = Properties.Settings.Default.debugMode.ToString();
debugShow.Text = Properties.Settings.Default.debugShow.ToString();
disableWarns.Text = Properties.Settings.Default.disableWarns.ToString();
skipWorkaround.Text = Properties.Settings.Default.skipWorkaround.ToString();
NOWLOADING.Text = Properties.Settings.Default.NOWLOADING.ToString();
XMAwholeLoop.Text = Properties.Settings.Default.XMAwholeLoop.ToString();
patchXMA.Text = Properties.Settings.Default.patchXMA.ToString();
if (Properties.Settings.Default.xmaencodeFile != "") xmaencodeFile.Text = Properties.Settings.Default.xmaencodeFile; else xmaencodeFile.Text = "None";
if (Properties.Settings.Default.towavFile != "") towavFile.Text = Properties.Settings.Default.towavFile; else towavFile.Text = "None";
csbUnpackMode.Text = Properties.Settings.Default.csbUnpackMode.ToString();
if (Properties.Settings.Default.collisionFile != "") collisionFile.Text = Properties.Settings.Default.collisionFile; else collisionFile.Text = "None";
#endregion
foreach (Control x in this.Controls)
{
if (x is Label)
{
((Label)x).Update();
}
}
}
private void ShowSessionID_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.showSessionID == true) Properties.Settings.Default.showSessionID = false;
else Properties.Settings.Default.showSessionID = true;
Properties.Settings.Default.Save();
}
private void DisableSoftwareUpdater_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.disableSoftwareUpdater == true) Properties.Settings.Default.disableSoftwareUpdater = false;
else Properties.Settings.Default.disableSoftwareUpdater = true;
Properties.Settings.Default.Save();
}
private void ShowLogo_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.showLogo == true) Properties.Settings.Default.showLogo = false;
else Properties.Settings.Default.showLogo = true;
Properties.Settings.Default.Save();
}
private void UnpackAndLaunch_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.unpackAndLaunch == true) Properties.Settings.Default.unpackAndLaunch = false;
else Properties.Settings.Default.unpackAndLaunch = true;
Properties.Settings.Default.Save();
}
private void IgnoreLoop_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.ignoreLoop == true) Properties.Settings.Default.ignoreLoop = false;
else Properties.Settings.Default.ignoreLoop = true;
Properties.Settings.Default.Save();
}
private void RemoveLoop_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.removeLoop == true) Properties.Settings.Default.removeLoop = false;
else Properties.Settings.Default.removeLoop = true;
Properties.Settings.Default.Save();
}
private void Downmix_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.downmix == true) Properties.Settings.Default.downmix = false;
else Properties.Settings.Default.downmix = true;
Properties.Settings.Default.Save();
}
private void WholeLoop_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.AT3wholeLoop == true) Properties.Settings.Default.AT3wholeLoop = false;
else Properties.Settings.Default.AT3wholeLoop = true;
Properties.Settings.Default.Save();
}
private void UseGPU_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.useGPU == true) Properties.Settings.Default.useGPU = false;
else Properties.Settings.Default.useGPU = true;
Properties.Settings.Default.Save();
}
private void ForceDirectX10_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.forceDirectX10 == true) Properties.Settings.Default.forceDirectX10 = false;
else Properties.Settings.Default.forceDirectX10 = true;
Properties.Settings.Default.Save();
}
private void BackupSET_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.backupSET == true) Properties.Settings.Default.backupSET = false;
else Properties.Settings.Default.backupSET = true;
Properties.Settings.Default.Save();
}
private void DeleteXML_Click(object sender, EventArgs e)
{
if (Properties.Settings.Default.deleteXML == true) Properties.Settings.Default.deleteXML = false;
else Properties.Settings.Default.deleteXML = true;
Properties.Settings.Default.Save();
}
private void GameChanged_Click(object sender, EventArgs e)
{
if (Tools.Global.gameChanged == true) Tools.Global.gameChanged = false;
else Tools.Global.gameChanged = true;
}
private void Btn_PreviewUpdate_Click(object sender, EventArgs e)
{
try
{
var latestVersion = new Tools.TimedWebClient { Timeout = 100000 }.DownloadString("https://segacarnival.com/hyper/updates/latest_master.txt");
var changeLogs = new Tools.TimedWebClient { Timeout = 100000 }.DownloadString("https://segacarnival.com/hyper/updates/changelogs.txt");
if (latestVersion.Contains("Version"))
{
DialogResult confirmUpdate = MessageBox.Show("Sonic '06 Toolkit - " + latestVersion + " is now available!\n\nChangelogs:\n" + changeLogs + "\n\nDo you wish to download it?", "New update available!", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
switch (confirmUpdate)
{
case DialogResult.Yes:
MessageBox.Show("CONGRATURATIONS!\nAll Pages are displayed.\nTHANK YOU!\nYou are great debugger!", "CONGRATURATIONS", MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
case DialogResult.No:
MessageBox.Show("CONGRATURATIONS!\nAll Pages are displayed.\nTHANK YOU!\nYou are great debugger!", "CONGRATURATIONS", MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
}
}
else
{
MessageBox.Show("The update servers are currently undergoing maintenance. Apologies for the inconvenience.", "Server Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch { MessageBox.Show("Unable to establish a connection to SEGA Carnival.", "Server Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
}
private void Btn_EraseSettings_Click(object sender, EventArgs e)
{
Properties.Settings.Default.Reset();
}
private void Btn_UserClosing_Click(object sender, EventArgs e)
{
DialogResult confirmUserClosure = MessageBox.Show("Are you sure you want to quit? All unsaved changes will be lost if you haven't repacked.", "Are you sure?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
switch (confirmUserClosure)
{
case DialogResult.Yes:
MessageBox.Show("CONGRATURATIONS!\nAll Pages are displayed.\nTHANK YOU!\nYou are great debugger!", "CONGRATURATIONS", MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
case DialogResult.No:
MessageBox.Show("CONGRATURATIONS!\nAll Pages are displayed.\nTHANK YOU!\nYou are great debugger!", "CONGRATURATIONS", MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
}
}
private void Btn_WindowsShutdown_Click(object sender, EventArgs e)
{
DialogResult confirmShutdownClosure = MessageBox.Show("Sonic '06 Toolkit is still running, are you sure you want to quit? All unsaved changes will be lost if you haven't repacked.", "Are you sure?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
switch (confirmShutdownClosure)
{
case DialogResult.Yes:
MessageBox.Show("CONGRATURATIONS!\nAll Pages are displayed.\nTHANK YOU!\nYou are great debugger!", "CONGRATURATIONS", MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
case DialogResult.No:
MessageBox.Show("CONGRATURATIONS!\nAll Pages are displayed.\nTHANK YOU!\nYou are great debugger!", "CONGRATURATIONS", MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
}
}
private void Btn_UnsafeState_Click(object sender, EventArgs e)
{
if (unsafeState)
{
unsafeState = false;
MessageBox.Show("Sonic '06 Toolkit is now in a safe state.", "Sonic '06 Toolkit", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
unsafeState = true;
MessageBox.Show("Sonic '06 Toolkit is now in an unsafe state.", "Sonic '06 Toolkit", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
void Check_DebugAdvanced_CheckedChanged(object sender, EventArgs e)
{
if (check_DebugAdvanced.Checked == true)
{
this.mainForm.advanced_DebugMode.Visible = true;
Properties.Settings.Default.debugShow = true;
}
else
{
this.mainForm.advanced_DebugMode.Visible = false;
Properties.Settings.Default.debugShow = false;
}
Properties.Settings.Default.Save();
}
void Tm_getStorage_Tick(object sender, EventArgs e)
{
if (this.mainForm.GetStorage == string.Empty)
{
getStorage.Text = "None";
}
else { getStorage.Text = this.mainForm.GetStorage; }
}
void Check_skipWorkaround_CheckedChanged(object sender, EventArgs e)
{
if (check_skipWorkaround.Checked == true)
{
Properties.Settings.Default.skipWorkaround = true;
}
else { Properties.Settings.Default.skipWorkaround = false; }
Properties.Settings.Default.Save();
}
void Check_SkipWorkaround_Click(object sender, EventArgs e)
{
MessageBox.Show("A restart is required for this option to take effect.", "Sonic '06 Toolkit", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
void Btn_SimulateStupidError_Click(object sender, EventArgs e)
{
MessageBox.Show("A problem has been detected and Sonic '06 Toolkit has been closed to prevent nothing from happening to your computer.\n\nThe problem seems to be caused by the following file: " + Path.GetFileName(Application.ExecutablePath) + "\n\nSTUPID_ERROR\n\nIf this is the first time you've seen this Stop error screen, restart Sonic '06 Toolkit. If this screen appears again, follow these steps:\n\nCheck to be sure you have Windows installed. If .NET Framework 4.6 is not installed, please install it along with Visual C++ 2010 redistributables and Java.\n\nCheck via GitHub or GameBanana for any Sonic '06 Toolkit updates. Delete the Hyper_Development_Team folder from your Local Application Data to soft reset all binaries and settings. If you need to use a virtual machine, be my guest.\n\nTechnical information:\n\n*** STOP: 0x00000118 (0x0000000000000118, 0x0000000000000118, 0x0000000000000118, 0x0000000000000118)\n\n*** " + Path.GetFileName(Application.ExecutablePath) + " - Address 0x0000000000000118 base at 0x0000000000000118 DateStamp 0x4fa390f3", "STUPID_ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
private void Btn_OpenStatus_Click(object sender, EventArgs e)
{
new Status(Convert.ToInt32(nud_State.Value), combo_Modifier.Text).Show();
}
private void Btn_CloseStatus_Click(object sender, EventArgs e)
{
Status status = Application.OpenForms["Status"] != null ? (Status)Application.OpenForms["Status"] : null;
if (status != null)
{
try
{
status = (Status)Application.OpenForms["Status"];
status.Close();
}
catch { }
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,247 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Loop
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Loop));
this.lbl_Title = new System.Windows.Forms.Label();
this.panel1 = new System.Windows.Forms.Panel();
this.pic_Logo = new System.Windows.Forms.PictureBox();
this.btn_Cancel = new System.Windows.Forms.Button();
this.btn_Confirm = new System.Windows.Forms.Button();
this.group_Start = new System.Windows.Forms.GroupBox();
this.label2 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
this.track_Start = new System.Windows.Forms.TrackBar();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.track_End = new System.Windows.Forms.TrackBar();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).BeginInit();
this.group_Start.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.track_Start)).BeginInit();
this.groupBox1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.track_End)).BeginInit();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.Font = new System.Drawing.Font("Segoe UI", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_Title.ForeColor = System.Drawing.SystemColors.ControlText;
this.lbl_Title.Location = new System.Drawing.Point(12, 10);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(102, 47);
this.lbl_Title.TabIndex = 1;
this.lbl_Title.Text = "Loop";
//
// panel1
//
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panel1.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel1.Controls.Add(this.pic_Logo);
this.panel1.Controls.Add(this.lbl_Title);
this.panel1.Location = new System.Drawing.Point(-1, -2);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(468, 69);
this.panel1.TabIndex = 8;
//
// pic_Logo
//
this.pic_Logo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.pic_Logo.BackColor = System.Drawing.Color.Transparent;
this.pic_Logo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("pic_Logo.BackgroundImage")));
this.pic_Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.pic_Logo.Location = new System.Drawing.Point(391, 1);
this.pic_Logo.Name = "pic_Logo";
this.pic_Logo.Size = new System.Drawing.Size(67, 67);
this.pic_Logo.TabIndex = 11;
this.pic_Logo.TabStop = false;
//
// btn_Cancel
//
this.btn_Cancel.BackColor = System.Drawing.Color.Tomato;
this.btn_Cancel.FlatAppearance.BorderSize = 0;
this.btn_Cancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Cancel.Location = new System.Drawing.Point(380, 273);
this.btn_Cancel.Name = "btn_Cancel";
this.btn_Cancel.Size = new System.Drawing.Size(75, 23);
this.btn_Cancel.TabIndex = 27;
this.btn_Cancel.Text = "Cancel";
this.btn_Cancel.UseVisualStyleBackColor = false;
this.btn_Cancel.Click += new System.EventHandler(this.Btn_Cancel_Click);
//
// btn_Confirm
//
this.btn_Confirm.BackColor = System.Drawing.Color.LightGreen;
this.btn_Confirm.FlatAppearance.BorderSize = 0;
this.btn_Confirm.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Confirm.Location = new System.Drawing.Point(299, 273);
this.btn_Confirm.Name = "btn_Confirm";
this.btn_Confirm.Size = new System.Drawing.Size(75, 23);
this.btn_Confirm.TabIndex = 26;
this.btn_Confirm.Text = "Confirm";
this.btn_Confirm.UseVisualStyleBackColor = false;
this.btn_Confirm.Click += new System.EventHandler(this.Btn_Confirm_Click);
//
// group_Start
//
this.group_Start.Controls.Add(this.label2);
this.group_Start.Controls.Add(this.label1);
this.group_Start.Controls.Add(this.track_Start);
this.group_Start.Location = new System.Drawing.Point(13, 77);
this.group_Start.Name = "group_Start";
this.group_Start.Size = new System.Drawing.Size(442, 89);
this.group_Start.TabIndex = 34;
this.group_Start.TabStop = false;
this.group_Start.Text = "Start";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(395, 64);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(37, 13);
this.label2.TabIndex = 33;
this.label2.Text = "48000";
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(11, 64);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(13, 13);
this.label1.TabIndex = 32;
this.label1.Text = "0";
//
// track_Start
//
this.track_Start.LargeChange = 1000;
this.track_Start.Location = new System.Drawing.Point(4, 23);
this.track_Start.Maximum = 48000;
this.track_Start.Name = "track_Start";
this.track_Start.Size = new System.Drawing.Size(434, 45);
this.track_Start.SmallChange = 100;
this.track_Start.TabIndex = 31;
this.track_Start.TickFrequency = 1000;
this.track_Start.TickStyle = System.Windows.Forms.TickStyle.Both;
//
// groupBox1
//
this.groupBox1.Controls.Add(this.label3);
this.groupBox1.Controls.Add(this.label4);
this.groupBox1.Controls.Add(this.track_End);
this.groupBox1.Location = new System.Drawing.Point(13, 176);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(442, 89);
this.groupBox1.TabIndex = 35;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "End";
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(395, 64);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(37, 13);
this.label3.TabIndex = 33;
this.label3.Text = "48000";
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(11, 64);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(13, 13);
this.label4.TabIndex = 32;
this.label4.Text = "0";
//
// track_End
//
this.track_End.LargeChange = 1000;
this.track_End.Location = new System.Drawing.Point(4, 23);
this.track_End.Maximum = 48000;
this.track_End.Name = "track_End";
this.track_End.Size = new System.Drawing.Size(434, 45);
this.track_End.SmallChange = 100;
this.track_End.TabIndex = 31;
this.track_End.TickFrequency = 1000;
this.track_End.TickStyle = System.Windows.Forms.TickStyle.Both;
//
// Loop
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(466, 307);
this.ControlBox = false;
this.Controls.Add(this.groupBox1);
this.Controls.Add(this.group_Start);
this.Controls.Add(this.btn_Cancel);
this.Controls.Add(this.btn_Confirm);
this.Controls.Add(this.panel1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "Loop";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Loop";
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pic_Logo)).EndInit();
this.group_Start.ResumeLayout(false);
this.group_Start.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.track_Start)).EndInit();
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.track_End)).EndInit();
this.ResumeLayout(false);
}
#endregion
internal System.Windows.Forms.PictureBox pic_Logo;
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Panel panel1;
internal System.Windows.Forms.Button btn_Cancel;
private System.Windows.Forms.Button btn_Confirm;
private System.Windows.Forms.GroupBox group_Start;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TrackBar track_Start;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.TrackBar track_End;
}
}

View File

@ -1,56 +0,0 @@
using System;
using System.Windows.Forms;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
public partial class Loop : Form
{
public Loop()
{
InitializeComponent();
}
void Btn_Cancel_Click(object sender, EventArgs e)
{
Close();
}
void Btn_Confirm_Click(object sender, EventArgs e)
{
if (track_Start.Value > track_End.Value) MessageBox.Show("The start of the loop can't be initialised after the end...", "Stupid Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
else
{
AT3_Studio.wholeLoop = "";
AT3_Studio.beginLoop = "-loop ";
AT3_Studio.startLoop = track_Start.Value.ToString() + " ";
AT3_Studio.endLoop = track_End.Value.ToString() + " ";
Close();
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,78 +0,0 @@
namespace Sonic_06_Toolkit
{
partial class Updater
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Updater));
this.pgb_Progress = new System.Windows.Forms.ProgressBar();
this.label1 = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// pgb_Progress
//
this.pgb_Progress.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.pgb_Progress.Location = new System.Drawing.Point(12, 46);
this.pgb_Progress.Name = "pgb_Progress";
this.pgb_Progress.Size = new System.Drawing.Size(433, 50);
this.pgb_Progress.TabIndex = 3;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label1.Location = new System.Drawing.Point(12, 11);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(433, 25);
this.label1.TabIndex = 2;
this.label1.Text = "Updating Sonic \'06 Toolkit to Version 0.00_00...";
//
// Updater
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(458, 106);
this.Controls.Add(this.pgb_Progress);
this.Controls.Add(this.label1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "Updater";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Sonic \'06 Toolkit";
this.Load += new System.EventHandler(this.Updater_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.ProgressBar pgb_Progress;
private System.Windows.Forms.Label label1;
}
}

View File

@ -1,60 +0,0 @@
using System;
using System.IO;
using System.Net;
using System.Windows.Forms;
namespace Sonic_06_Toolkit
{
public partial class Updater : Form
{
string versionString;
string urlString;
bool enabledBool;
WebClient clientApplication = new WebClient();
public Updater(string versionNumber, string url, bool enabled)
{
InitializeComponent();
versionString = versionNumber;
urlString = url;
enabledBool = enabled;
}
private void Updater_Load(object sender, System.EventArgs e)
{
label1.Text = $"Updating Sonic '06 Toolkit to {versionString}...";
Width = label1.Width + 40;
if (enabledBool)
{
UpdateVersion();
}
else
{
Text = "Sonic '06 Toolkit - Debug Mode";
}
}
private void UpdateVersion()
{
using (clientApplication = new WebClient())
{
clientApplication.DownloadProgressChanged += (s, e) => { pgb_Progress.Value = e.ProgressPercentage; };
clientApplication.DownloadFileAsync(new Uri(urlString), Application.ExecutablePath + ".pak");
clientApplication.DownloadFileCompleted += (s, e) =>
{
File.Replace(Application.ExecutablePath + ".pak", Application.ExecutablePath, Application.ExecutablePath + ".bak");
MessageBox.Show("Update complete! Please restart Sonic '06 Toolkit.", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
Application.Exit();
};
}
}
public int UpdateProgressValue
{
get { return pgb_Progress.Value; }
set { pgb_Progress.Value = value; }
}
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,149 +0,0 @@
using System;
using System.IO;
using System.Diagnostics;
using System.Windows.Forms;
using System.Security.Principal;
// Sonic '06 Toolkit is licensed under the MIT License:
/*
* MIT License
* Copyright (c) 2019 Gabriel (HyperPolygon64)
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
namespace Sonic_06_Toolkit
{
static class Program
{
[STAThread]
public static void Main(string[] args)
{
WritePrerequisites();
var generateSessionID = new Random();
Tools.Global.sessionID = generateSessionID.Next(1, 99999); //Generates a random number between 1 to 99999 for a unique Session ID.
if (Properties.Settings.Default.skipWorkaround == true)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Main(args));
}
else
{
try
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Main(args));
}
catch
{
WritePrerequisites();
}
}
}
public static bool RunningAsAdmin()
{
return new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator);
}
public static void WritePrerequisites()
{
if (Properties.Settings.Default.rootPath == string.Empty) Properties.Settings.Default.rootPath = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\";
if (Properties.Settings.Default.toolsPath == string.Empty) Properties.Settings.Default.toolsPath = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\Tools\";
if (Properties.Settings.Default.archivesPath == string.Empty) Properties.Settings.Default.archivesPath = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\Archives\";
if (Properties.Settings.Default.unlubPath == string.Empty) Properties.Settings.Default.unlubPath = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\Tools\unlub\";
if (Properties.Settings.Default.xnoPath == string.Empty) Properties.Settings.Default.xnoPath = Tools.Global.applicationData + @"\Hyper_Development_Team\Sonic '06 Toolkit\Tools\xno2dae\";
Properties.Settings.Default.Save();
if (!Directory.Exists(Properties.Settings.Default.rootPath)) Directory.CreateDirectory(Properties.Settings.Default.rootPath);
if (!Directory.Exists(Properties.Settings.Default.toolsPath)) Directory.CreateDirectory(Properties.Settings.Default.toolsPath);
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"Arctool\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"Arctool\");
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"Arctool\arctool\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"Arctool\arctool\");
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"GerbilSoft\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"GerbilSoft\");
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"CsbEditor\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"CsbEditor\");
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"CriWare\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"CriWare\");
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"Microsoft\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"Microsoft\");
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"exiso\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"exiso\");
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"SONY\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"SONY\");
if (!Directory.Exists(Properties.Settings.Default.archivesPath)) Directory.CreateDirectory(Properties.Settings.Default.archivesPath);
if (!Directory.Exists(Properties.Settings.Default.unlubPath)) Directory.CreateDirectory(Properties.Settings.Default.unlubPath);
if (!Directory.Exists(Properties.Settings.Default.xnoPath)) Directory.CreateDirectory(Properties.Settings.Default.xnoPath);
if (!Directory.Exists(Properties.Settings.Default.toolsPath + @"LibS06\")) Directory.CreateDirectory(Properties.Settings.Default.toolsPath + @"LibS06\");
if (Properties.Settings.Default.unpackFile == string.Empty) Properties.Settings.Default.unpackFile = Properties.Settings.Default.toolsPath + @"unpack.exe";
if (Properties.Settings.Default.repackFile == string.Empty) Properties.Settings.Default.repackFile = Properties.Settings.Default.toolsPath + @"repack.exe";
if (Properties.Settings.Default.arctoolFile == string.Empty) Properties.Settings.Default.arctoolFile = Properties.Settings.Default.toolsPath + @"Arctool\arctool.exe";
if (Properties.Settings.Default.mstFile == string.Empty) Properties.Settings.Default.mstFile = Properties.Settings.Default.toolsPath + @"GerbilSoft\mst06.exe";
if (Properties.Settings.Default.csbFile == string.Empty) Properties.Settings.Default.csbFile = Properties.Settings.Default.toolsPath + @"CsbEditor\CsbEditor.exe";
if (Properties.Settings.Default.adx2wavFile == string.Empty) Properties.Settings.Default.adx2wavFile = Properties.Settings.Default.toolsPath + @"CriWare\ADX2WAV.exe";
if (Properties.Settings.Default.criconverterFile == string.Empty) Properties.Settings.Default.criconverterFile = Properties.Settings.Default.toolsPath + @"CriWare\criatomencd.exe";
if (Properties.Settings.Default.directXFile == string.Empty) Properties.Settings.Default.directXFile = Properties.Settings.Default.toolsPath + @"Microsoft\texconv.exe";
if (Properties.Settings.Default.exisoFile == string.Empty) Properties.Settings.Default.exisoFile = Properties.Settings.Default.toolsPath + @"exiso\exiso.exe";
if (Properties.Settings.Default.at3File == string.Empty) Properties.Settings.Default.at3File = Properties.Settings.Default.toolsPath + @"SONY\at3tool.exe";
if (Properties.Settings.Default.xmaencodeFile == string.Empty) Properties.Settings.Default.xmaencodeFile = Properties.Settings.Default.toolsPath + @"Microsoft\xmaencode2008.exe";
if (Properties.Settings.Default.towavFile == string.Empty) Properties.Settings.Default.towavFile = Properties.Settings.Default.toolsPath + @"Microsoft\towav.exe";
if (Properties.Settings.Default.aax2adxFile == string.Empty) Properties.Settings.Default.aax2adxFile = Properties.Settings.Default.toolsPath + @"CriWare\AAX2WAV.exe";
if (Properties.Settings.Default.csbextractFile == string.Empty) Properties.Settings.Default.csbextractFile = Properties.Settings.Default.toolsPath + @"CriWare\csb_extract.exe";
if (Properties.Settings.Default.collisionFile == string.Empty) Properties.Settings.Default.collisionFile = Properties.Settings.Default.toolsPath + @"LibS06\s06col.exe";
if (Properties.Settings.Default.colExportFile == string.Empty) Properties.Settings.Default.colExportFile = Properties.Settings.Default.toolsPath + @"LibS06\s06collision.py";
Properties.Settings.Default.Save();
if (!File.Exists(Path.Combine(Application.StartupPath, "HedgeLib.dll"))) File.WriteAllBytes(Path.Combine(Application.StartupPath, "HedgeLib.dll"), Properties.Resources.HedgeLib);
if (!File.Exists(Path.Combine(Application.StartupPath, "Ookii.Dialogs.dll"))) File.WriteAllBytes(Path.Combine(Application.StartupPath, "Ookii.Dialogs.dll"), Properties.Resources.Ookii_Dialogs);
if (!File.Exists(Properties.Settings.Default.unpackFile)) File.WriteAllBytes(Properties.Settings.Default.unpackFile, Properties.Resources.unpack);
if (!File.Exists(Properties.Settings.Default.repackFile)) File.WriteAllBytes(Properties.Settings.Default.repackFile, Properties.Resources.repack);
if (!File.Exists(Properties.Settings.Default.arctoolFile)) File.WriteAllBytes(Properties.Settings.Default.arctoolFile, Properties.Resources.arctool);
if (!File.Exists(Properties.Settings.Default.csbFile)) File.WriteAllBytes(Properties.Settings.Default.csbFile, Properties.Resources.CsbEditor);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"Arctool\arctool\arcc.php")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"Arctool\arctool\arcc.php", Properties.Resources.arcphp);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"Arctool\arctool\arctool.php")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"Arctool\arctool\arctool.php", Properties.Resources.arctoolphp);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CsbEditor\SonicAudioLib.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CsbEditor\SonicAudioLib.dll", Properties.Resources.SonicAudioLib);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CsbEditor\CsbEditor.exe.config")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CsbEditor\CsbEditor.exe.config", Properties.Resources.CsbEditorConfig);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"GerbilSoft\mst06.exe")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"GerbilSoft\mst06.exe", Properties.Resources.mst06);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"GerbilSoft\tinyxml2.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"GerbilSoft\tinyxml2.dll", Properties.Resources.tinyxml2);
if (!File.Exists(Properties.Settings.Default.adx2wavFile)) File.WriteAllBytes(Properties.Settings.Default.adx2wavFile, Properties.Resources.ADX2WAV);
if (!File.Exists(Properties.Settings.Default.criconverterFile)) File.WriteAllBytes(Properties.Settings.Default.criconverterFile, Properties.Resources.criatomencd);
if (!File.Exists(Properties.Settings.Default.aax2adxFile)) File.WriteAllBytes(Properties.Settings.Default.aax2adxFile, Properties.Resources.AAX2ADX);
if (!File.Exists(Properties.Settings.Default.csbextractFile)) File.WriteAllBytes(Properties.Settings.Default.csbextractFile, Properties.Resources.csb_extract);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CriWare\AsyncAudioEncoder.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CriWare\AsyncAudioEncoder.dll", Properties.Resources.AsyncAudioEncoder);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CriWare\AudioStream.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CriWare\AudioStream.dll", Properties.Resources.AudioStream);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CriWare\criatomencd.exe.config")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CriWare\criatomencd.exe.config", Properties.Resources.criatomencdConfig);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CriWare\CriAtomEncoderComponent.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CriWare\CriAtomEncoderComponent.dll", Properties.Resources.CriAtomEncoderComponent);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CriWare\CriSamplingRateConverter.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CriWare\CriSamplingRateConverter.dll", Properties.Resources.CriSamplingRateConverter);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"CriWare\vsthost.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"CriWare\vsthost.dll", Properties.Resources.vsthost);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"exiso\exiso.exe")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"exiso\exiso.exe", Properties.Resources.exiso);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"SONY\at3tool.exe")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"SONY\at3tool.exe", Properties.Resources.at3tool);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"Microsoft\texconv.exe")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"Microsoft\texconv.exe", Properties.Resources.texconv);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"Microsoft\xmaencode2008.exe")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"Microsoft\xmaencode2008.exe", Properties.Resources.xmaencode2008);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"Microsoft\towav.exe")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"Microsoft\towav.exe", Properties.Resources.towav);
if (!File.Exists(Properties.Settings.Default.collisionFile)) File.WriteAllBytes(Properties.Settings.Default.collisionFile, Properties.Resources.s06col);
if (!File.Exists(Properties.Settings.Default.colExportFile)) File.WriteAllBytes(Properties.Settings.Default.colExportFile, Properties.Resources.s06collision);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"unlub\unlub.jar")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"unlub\unlub.jar", Properties.Resources.unlub);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"unlub\lua50.dll")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"unlub\lua50.dll", Properties.Resources.lua50);
if (!File.Exists(Properties.Settings.Default.toolsPath + @"unlub\luac50.exe")) File.WriteAllBytes(Properties.Settings.Default.toolsPath + @"unlub\luac50.exe", Properties.Resources.luac50);
Application.Exit();
}
}
}

View File

@ -1,462 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Sonic_06_Toolkit.Properties {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Sonic_06_Toolkit.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] AAX2ADX {
get {
object obj = ResourceManager.GetObject("AAX2ADX", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap about_logo {
get {
object obj = ResourceManager.GetObject("about_logo", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] ADX2WAV {
get {
object obj = ResourceManager.GetObject("ADX2WAV", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] arcphp {
get {
object obj = ResourceManager.GetObject("arcphp", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] arctool {
get {
object obj = ResourceManager.GetObject("arctool", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] arctoolphp {
get {
object obj = ResourceManager.GetObject("arctoolphp", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] AsyncAudioEncoder {
get {
object obj = ResourceManager.GetObject("AsyncAudioEncoder", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] at3tool {
get {
object obj = ResourceManager.GetObject("at3tool", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] AudioStream {
get {
object obj = ResourceManager.GetObject("AudioStream", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized string similar to body
///{
/// background-color: #FFFFFF;
/// color: #000000;
/// font-size: 12px;
/// font-family: &apos;Microsoft Sans Serif&apos;, sans-serif;
///}
///
///a
///{
/// color: #FF0000;
/// text-decoration: none;
/// vertical-align: baseline;
///}
///
///h1
///{
/// font-size: 12px;
/// margin: 0 0 0.75em;
/// padding: 0 0 0.25em 0;
///}
///
///li
///{
/// list-style-type: square;
///}
///
///span.RedColor
///{
/// color: #FF4E4E;
///}.
/// </summary>
internal static string CreditsStyleSheet {
get {
return ResourceManager.GetString("CreditsStyleSheet", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] criatomencd {
get {
object obj = ResourceManager.GetObject("criatomencd", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] criatomencdConfig {
get {
object obj = ResourceManager.GetObject("criatomencdConfig", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] CriAtomEncoderComponent {
get {
object obj = ResourceManager.GetObject("CriAtomEncoderComponent", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] CriSamplingRateConverter {
get {
object obj = ResourceManager.GetObject("CriSamplingRateConverter", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] csb_extract {
get {
object obj = ResourceManager.GetObject("csb_extract", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] CsbEditor {
get {
object obj = ResourceManager.GetObject("CsbEditor", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] CsbEditorConfig {
get {
object obj = ResourceManager.GetObject("CsbEditorConfig", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] exiso {
get {
object obj = ResourceManager.GetObject("exiso", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] HedgeLib {
get {
object obj = ResourceManager.GetObject("HedgeLib", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap logo_main {
get {
object obj = ResourceManager.GetObject("logo_main", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] lua50 {
get {
object obj = ResourceManager.GetObject("lua50", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] luac50 {
get {
object obj = ResourceManager.GetObject("luac50", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] mst06 {
get {
object obj = ResourceManager.GetObject("mst06", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] Ookii_Dialogs {
get {
object obj = ResourceManager.GetObject("Ookii_Dialogs", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] repack {
get {
object obj = ResourceManager.GetObject("repack", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] s06col {
get {
object obj = ResourceManager.GetObject("s06col", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] s06collision {
get {
object obj = ResourceManager.GetObject("s06collision", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] SonicAudioLib {
get {
object obj = ResourceManager.GetObject("SonicAudioLib", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap sonori {
get {
object obj = ResourceManager.GetObject("sonori", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] texconv {
get {
object obj = ResourceManager.GetObject("texconv", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] tinyxml2 {
get {
object obj = ResourceManager.GetObject("tinyxml2", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] towav {
get {
object obj = ResourceManager.GetObject("towav", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] unlub {
get {
object obj = ResourceManager.GetObject("unlub", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] unpack {
get {
object obj = ResourceManager.GetObject("unpack", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] vsthost {
get {
object obj = ResourceManager.GetObject("vsthost", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] xmaencode2008 {
get {
object obj = ResourceManager.GetObject("xmaencode2008", resourceCulture);
return ((byte[])(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>
internal static byte[] xno2dae {
get {
object obj = ResourceManager.GetObject("xno2dae", resourceCulture);
return ((byte[])(obj));
}
}
}
}

View File

@ -1,232 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="about_logo" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\about_logo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="CsbEditor" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\CsbEditor.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="logo_main" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\logo_main.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="repack" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\repack.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="unlub" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\unlub.jar;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="unpack" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\unpack.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="xno2dae" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\xno2dae.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="SonicAudioLib" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\SonicAudioLib.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="CsbEditorConfig" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\CsbEditor.exe.config;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="ADX2WAV" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ADX2WAV.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="AsyncAudioEncoder" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\AsyncAudioEncoder.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="AudioStream" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\AudioStream.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="criatomencd" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\criatomencd.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="criatomencdConfig" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\criatomencd.exe.config;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="CriAtomEncoderComponent" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\CriAtomEncoderComponent.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="CriSamplingRateConverter" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\CriSamplingRateConverter.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="vsthost" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\vsthost.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="HedgeLib" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\HedgeLib.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="exiso" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\exiso.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="at3tool" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\PS3_at3tool.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="texconv" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\texconv.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="arcphp" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arcc.php;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="arctool" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arctool.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="arctoolphp" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arctool.php;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="mst06" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mst06.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="tinyxml2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\tinyxml2.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="towav" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\towav.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="xmaencode2008" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\xmaencode2008.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="sonori" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\sonori.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="AAX2ADX" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\AAX2ADX.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="csb_extract" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\csb_extract.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="s06col" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\s06col.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="CreditsStyleSheet" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\GBStyleSheet.css;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
</data>
<data name="s06collision" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\s06collision.py;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="Ookii_Dialogs" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Ookii.Dialogs.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="lua50" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lua50.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="luac50" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\luac50.exe;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
</root>

View File

@ -1,614 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Sonic_06_Toolkit.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.1.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool showSessionID {
get {
return ((bool)(this["showSessionID"]));
}
set {
this["showSessionID"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("Compact")]
public string theme {
get {
return ((string)(this["theme"]));
}
set {
this["theme"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string rootPath {
get {
return ((string)(this["rootPath"]));
}
set {
this["rootPath"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string toolsPath {
get {
return ((string)(this["toolsPath"]));
}
set {
this["toolsPath"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string archivesPath {
get {
return ((string)(this["archivesPath"]));
}
set {
this["archivesPath"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool disableSoftwareUpdater {
get {
return ((bool)(this["disableSoftwareUpdater"]));
}
set {
this["disableSoftwareUpdater"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string unlubPath {
get {
return ((string)(this["unlubPath"]));
}
set {
this["unlubPath"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string xnoPath {
get {
return ((string)(this["xnoPath"]));
}
set {
this["xnoPath"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string unpackFile {
get {
return ((string)(this["unpackFile"]));
}
set {
this["unpackFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string repackFile {
get {
return ((string)(this["repackFile"]));
}
set {
this["repackFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string xnoFile {
get {
return ((string)(this["xnoFile"]));
}
set {
this["xnoFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string csbFile {
get {
return ((string)(this["csbFile"]));
}
set {
this["csbFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string adx2wavFile {
get {
return ((string)(this["adx2wavFile"]));
}
set {
this["adx2wavFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string criconverterFile {
get {
return ((string)(this["criconverterFile"]));
}
set {
this["criconverterFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool showLogo {
get {
return ((bool)(this["showLogo"]));
}
set {
this["showLogo"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool unpackAndLaunch {
get {
return ((bool)(this["unpackAndLaunch"]));
}
set {
this["unpackAndLaunch"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string gamePath {
get {
return ((string)(this["gamePath"]));
}
set {
this["gamePath"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string exisoFile {
get {
return ((string)(this["exisoFile"]));
}
set {
this["exisoFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string at3File {
get {
return ((string)(this["at3File"]));
}
set {
this["at3File"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string xeniaFile {
get {
return ((string)(this["xeniaFile"]));
}
set {
this["xeniaFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string directXFile {
get {
return ((string)(this["directXFile"]));
}
set {
this["directXFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string arctoolFile {
get {
return ((string)(this["arctoolFile"]));
}
set {
this["arctoolFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool ignoreLoop {
get {
return ((bool)(this["ignoreLoop"]));
}
set {
this["ignoreLoop"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool removeLoop {
get {
return ((bool)(this["removeLoop"]));
}
set {
this["removeLoop"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool downmix {
get {
return ((bool)(this["downmix"]));
}
set {
this["downmix"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("1")]
public double volume {
get {
return ((double)(this["volume"]));
}
set {
this["volume"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool AT3wholeLoop {
get {
return ((bool)(this["AT3wholeLoop"]));
}
set {
this["AT3wholeLoop"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool useGPU {
get {
return ((bool)(this["useGPU"]));
}
set {
this["useGPU"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool forceDirectX10 {
get {
return ((bool)(this["forceDirectX10"]));
}
set {
this["forceDirectX10"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool backupSET {
get {
return ((bool)(this["backupSET"]));
}
set {
this["backupSET"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool deleteXML {
get {
return ((bool)(this["deleteXML"]));
}
set {
this["deleteXML"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string mstFile {
get {
return ((string)(this["mstFile"]));
}
set {
this["mstFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool gameDir {
get {
return ((bool)(this["gameDir"]));
}
set {
this["gameDir"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool debugMode {
get {
return ((bool)(this["debugMode"]));
}
set {
this["debugMode"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool debugShow {
get {
return ((bool)(this["debugShow"]));
}
set {
this["debugShow"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool disableWarns {
get {
return ((bool)(this["disableWarns"]));
}
set {
this["disableWarns"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool skipWorkaround {
get {
return ((bool)(this["skipWorkaround"]));
}
set {
this["skipWorkaround"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool NOWLOADING {
get {
return ((bool)(this["NOWLOADING"]));
}
set {
this["NOWLOADING"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool XMAwholeLoop {
get {
return ((bool)(this["XMAwholeLoop"]));
}
set {
this["XMAwholeLoop"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool patchXMA {
get {
return ((bool)(this["patchXMA"]));
}
set {
this["patchXMA"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string xmaencodeFile {
get {
return ((string)(this["xmaencodeFile"]));
}
set {
this["xmaencodeFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string towavFile {
get {
return ((string)(this["towavFile"]));
}
set {
this["towavFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("0")]
public int csbUnpackMode {
get {
return ((int)(this["csbUnpackMode"]));
}
set {
this["csbUnpackMode"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string aax2adxFile {
get {
return ((string)(this["aax2adxFile"]));
}
set {
this["aax2adxFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string csbextractFile {
get {
return ((string)(this["csbextractFile"]));
}
set {
this["csbextractFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string collisionFile {
get {
return ((string)(this["collisionFile"]));
}
set {
this["collisionFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string sonic06mmFile {
get {
return ((string)(this["sonic06mmFile"]));
}
set {
this["sonic06mmFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string colExportFile {
get {
return ((string)(this["colExportFile"]));
}
set {
this["colExportFile"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool culling {
get {
return ((bool)(this["culling"]));
}
set {
this["culling"] = value;
}
}
}
}

View File

@ -1,153 +0,0 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="Sonic_06_Toolkit.Properties" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="showSessionID" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="theme" Type="System.String" Scope="User">
<Value Profile="(Default)">Compact</Value>
</Setting>
<Setting Name="rootPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="toolsPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="archivesPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="disableSoftwareUpdater" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="unlubPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="xnoPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="unpackFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="repackFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="xnoFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="csbFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="adx2wavFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="criconverterFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="showLogo" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="unpackAndLaunch" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="gamePath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="exisoFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="at3File" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="xeniaFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="directXFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="arctoolFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ignoreLoop" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="removeLoop" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="downmix" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="volume" Type="System.Double" Scope="User">
<Value Profile="(Default)">1</Value>
</Setting>
<Setting Name="AT3wholeLoop" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="useGPU" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="forceDirectX10" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="backupSET" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="deleteXML" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="mstFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="gameDir" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="debugMode" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="debugShow" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="disableWarns" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="skipWorkaround" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="NOWLOADING" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="XMAwholeLoop" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="patchXMA" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="xmaencodeFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="towavFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="csbUnpackMode" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="aax2adxFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="csbextractFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="collisionFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="sonic06mmFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="colExportFile" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="culling" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="CsbEditor.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/>
</sectionGroup>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
</startup>
<userSettings>
<CsbEditor.Properties.Settings>
<setting name="EnableThreading" serializeAs="String">
<value>False</value>
</setting>
<setting name="MaxThreads" serializeAs="String">
<value>1</value>
</setting>
<setting name="BufferSize" serializeAs="String">
<value>4096</value>
</setting>
</CsbEditor.Properties.Settings>
</userSettings>
</configuration>

View File

@ -1,31 +0,0 @@
body
{
background-color: #FFFFFF;
color: #000000;
font-size: 12px;
font-family: 'Microsoft Sans Serif', sans-serif;
}
a
{
color: #FF0000;
text-decoration: none;
vertical-align: baseline;
}
h1
{
font-size: 12px;
margin: 0 0 0.75em;
padding: 0 0 0.25em 0;
}
li
{
list-style-type: square;
}
span.RedColor
{
color: #FF4E4E;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 KiB

View File

@ -1,236 +0,0 @@
<?php
//ARC packer
//written by Link
$checkdirectory;
$headpos=-1;
function PrepareHeader($fp,$fls,$fname="") { //writes incomplete header
global $headpos;
//if($fname=="") $fname=chr(0);
if($fls["?isdir?"]) {
fwrite($fp,pack('N',0x01000000+$headpos+1));
fwrite($fp,pack('N',$fls["?parent?"]));
fwrite($fp,pack('N',$fls["?count?"]));
fwrite($fp,pack('N',0));
$headpos+=1+strlen($fname);
for($i=0;$i<count($fls["?filelist?"]);$i++)
PrepareHeader($fp,$fls[$fls["?filelist?"][$i]],$fls["?filelist?"][$i]);
} else {
fwrite($fp,pack('N',$headpos+1));
$headpos+=1+strlen($fname);
fwrite($fp,pack('N',0));
fwrite($fp,pack('N',0)) ;
fwrite($fp,pack('N',$fls["?filesize?"]));
}
}
function FinalizeHeader($fp,$fls,$fname="",$folder="") { //writes final header (copy of function before just with final data)
//simply writes over the header again
global $headpos;
//if($fname=="") $fname=chr(0);
if($fls["?isdir?"]) {
fwrite($fp,pack('N',0x01000000+$headpos+1));
fwrite($fp,pack('N',$fls["?parent?"]));
fwrite($fp,pack('N',$fls["?count?"]));
fwrite($fp,pack('N',0));
$headpos+=1+strlen($fname);
for($i=0;$i<count($fls["?filelist?"]);$i++)
FinalizeHeader($fp,$fls[$fls["?filelist?"][$i]],$fls["?filelist?"][$i],$fls);
} else if(!$fls["?virtual?"]) {
fwrite($fp,pack('N',$headpos+1));
$headpos+=1+strlen($fname);
fwrite($fp,pack('N',$fls["?data?"]));
fwrite($fp,pack('N',$fls["?compressed?"]));
fwrite($fp,pack('N',$fls["?filesize?"]));
} else {
fwrite($fp,pack('N',$headpos+1));
$headpos+=1+strlen($fname);
fwrite($fp,pack('N',$folder[$fls["?realfile?"]]["?data?"]));
fwrite($fp,pack('N',$folder[$fls["?realfile?"]]["?compressed?"]));
fwrite($fp,pack('N',$fls["?filesize?"]));
}
}
function WriteList($fp,$fls,$fname="") { //Writes the filelist
fwrite($fp,$fname.chr(0));
if($fls["?isdir?"])
for($i=0;$i<count($fls["?filelist?"]);$i++)
WriteList($fp,$fls[$fls["?filelist?"][$i]],$fls["?filelist?"][$i]);
}
function msort($a,$b) //sort files by filename, folders always first!
{
global $checkdirectory;
$dir=$checkdirectory;
$a=strtoupper($a);
$b=strtoupper($b);
$array[0]=$a;
$array[1]=$b;
sort($array);
if(is_dir($dir.$b) && !is_dir($dir.$a)) return -1;
else if(is_dir($dir.$a) && !is_dir($dir.$b)) return 1;
if($array[0]==$a) return -1;
else return 1;
}
$fcount=1;
function file_ext($filename)
{
return strtolower(str_replace(".", "", strrchr($filename, ".")));
}
function no_fname($filename)
{
return substr($filename,0,(-1*strlen(file_ext($filename))-1));
}
function GenerateDirectoryList($dir="./",$parent=0) //Generate a directory list of the current directory
{
global $checkdirectory,$fcount;
$flist;
if ($dh=opendir($dir)) {
$checkdirectory=$dir;
while (($file = readdir($dh)) !== false) {
if($file!=".." && $file!=".")
$flist[]=$file;
}
closedir($dh);
}
usort($flist,"msort");
$res["?filelist?"]=$flist;
$res["?isdir?"]=true;
$res["?myid?"]=$fcount-1;
$res["?parent?"]=$parent;
$fstart=$fcount;
for($i=0;$i<count($flist);$i++) {
$fcount++;
if(is_dir($dir.$flist[$i])) {
$res[$flist[$i]]=GenerateDirectoryList($dir.$flist[$i]."/",$res["?myid?"]);
}
else if(is_file($dir.$flist[$i])) {
if(file_ext($flist[$i])=="virt!") {
$flist[$i]=no_fname($flist[$i]);
$res["?filelist?"][$i]=$flist[$i];
$res[$flist[$i]]["?virtual?"]=true;
$vfile=file($dir.$flist[$i].".virt!");
$res[$flist[$i]]["?realfile?"]=$vfile[0];
$res[$flist[$i]]["?filesize?"]=filesize($dir.$vfile[0]);
} else {
$res[$flist[$i]]["?virtual?"]=false;
$res[$flist[$i]]["?realfile?"]=$flist[$i];
$res[$flist[$i]]["?filesize?"]=filesize($dir.$flist[$i]);
}
$res[$flist[$i]]["?isdir?"]=false;
}
}
$res["?count?"]=$fcount;
return $res;
}
//if ($argc != 2) {
// die("Usage: php arc.php [output]");
//}
//echo file_ext("data.huhu.virt!")."\n".no_fname("data.huhu.virt!");
//die;
$tooldir=str_replace("\\","/",getcwd());
while(substr($tooldir,-1,1) == "/") $tooldir=substr($tooldir,0,-1);
if(!chdir($inputdir)) die("Failed changing directory");
$inputdir=str_replace("\\","/",getcwd());
while(substr($inputdir,-1,1) == "/") $inputdir=substr($inputdir,0,-1);
$files=GenerateDirectoryList();
if(!chdir($tooldir)) die("Failed changing directory");
$fp = fopen($filename, 'wb');
if(!chdir($inputdir)) die("Failed changing directory");
fwrite($fp,pack('N',0x55aa382d));
fwrite($fp,pack('N',0x20));
for($i=0;$i<8;$i++)
fwrite($fp,chr(0));
fwrite($fp,pack('N',0xE4f91200));
fwrite($fp,pack('N',0x00000402));
fwrite($fp,pack('N',0));
fwrite($fp,pack('N',0));
function WriteFiles($fp,&$fls,$fname=".") {
global $arranged,$compressionlevel;
if($fls["?isdir?"]) {
for($i=0;$i<count($fls["?filelist?"]);$i++)
WriteFiles($fp,$fls[$fls["?filelist?"][$i]],$fname."/".$fls["?filelist?"][$i]);
} else if(!$fls["?virtual?"]) {
echo "Writing ".$fname."\n";
if($arranged)
while(ftell($fp)%32!=0)
fwrite($fp,chr(0));
$flup=fopen($fname,"rb");
$dt=fread($flup,filesize($fname));
fclose($flup);
//if($compressionlevel == 0) //The final requires files to be compressed, even if it is compression level 0
//{
//$cmp=$dt;
//$fls["?filesize?"]=0;
//}
//else
$cmp=gzcompress($dt,$compressionlevel);
$fls["?compressed?"]=strlen($cmp);
$fls["?data?"]=ftell($fp);
fwrite($fp,$cmp);
}
}
PrepareHeader($fp,$files);
WriteList($fp,$files);
$filelistlength=ftell($fp)-0x20;
if($arranged)
$filelistbegin=(floor($filelistlength/32)+1)*32+0x20;
else
$filelistbegin=ftell($fp)+1; //1 byte for security reasons
while(ftell($fp)<$filelistbegin)
fwrite($fp,chr(0));
WriteFiles($fp,$files);
fseek($fp,8);
fwrite($fp,pack('N',$filelistlength));
fwrite($fp,pack('N',$filelistbegin));
fseek($fp,0x20);
$headpos=-1;
FinalizeHeader($fp,$files);
fseek($fp,0,SEEK_END);
while(ftell($fp)<$fs)
fwrite($fp,chr(0));
fclose($fp);
chdir($tooldir);
echo "\nDone.";
?>

View File

@ -1,111 +0,0 @@
<?php
$create=false;
$simulate=false;
$extract=false;
$compressionlevel=0;
$overwrite=false;
$arranged=true;
$inputdir="./";
$fs=-1;
$filename="";
for($i=1;$i<$argc;$i++)
{
switch($argv[$i]) {
case "-d":
$extract=true;
break;
case "-s":
$simulate=true;
break;
case "-c":
$create=true;
break;
case "-f":
$overwrite=true;
break;
case "-j":
if($i!=$argc-1)
$fs=$argv[$i+1];
$i++;
break;
case "-i":
if($i!=$argc-1)
$inputdir=$argv[$i+1];
$i++;
break;
default:
$cmd=substr($argv[$i],0,2);
$val=substr($argv[$i],2);
if($cmd=="-a") $arranged=(($val == "1") ? true:false);
else if($cmd=="-c") $compressionlevel=$val;
else $filename=$argv[$i];
break;
}
}
if($filename=="")
{
die($argv[0]." [options] [filename]\n
Possible options:
-d: Deflate/Extract (standard if file does already exist)
-s: List files (simulate extraction)
-c: Create ARC file (standard if file does not already exist)
-l#:Compression level (# ranges from 0 to 9, 9 being default, 0 meaning no compression at all) (only for creation)
-a#:Write 32-byte-arranged ARC files (#1 for true, true is default) (only for creation)
-f: Force overwriting of old ARC file
-i: Input directory (only for creation)
-j [filesize/filename]: Fill file with junk data (only for creation)
If a numeric value is given: the final file will be at least as large as the given value
If a filename is given, the filesize of the filename given will be used for final size!
ARC file format/Unpacker: written by xose
Packer: written by Link");
}
if(!($create || $extract || $simulate))
{
if(file_exists($filename))
$extract=true;
else
$create=true;
}
if($simulate || $extract)
{
if(!file_exists($filename))
die("File not found");
$doit=!$simulate;
include("unarc.php");
die;
}
if($create)
{
if(file_exists($filename) && !$overwrite)
die("File already exists... append -f to overwrite");
else if(file_exists($filename))
unlink($filename);
if(!is_numeric($compressionlevel) || $compressionlevel<0 || $compressionlevel>9)
die("Invalid compression level set!");
if(!is_numeric($fs)) {
if(file_exists($fs))
$fs=filesize($fs);
else
die("File size value invalid - reference file not found!");
}
if(!file_exists($inputdir)) {
die("Input directory not found");
}
$inputdir=str_replace("\\","/",$inputdir);
while(substr($inputdir,-1,1) == "/") $inputdir=substr($inputdir,0,-1);
include("arcc.php");
die;
}
?>

View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding='utf-8'?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>

View File

@ -1,88 +0,0 @@
#!/usr/bin/python3
import argparse
import csv
import re
import os.path
import sys
import struct
from collections import namedtuple
parser = argparse.ArgumentParser(description='Export collision.bin files from Sonic the Hedgehog (2006) to .obj')
parser.add_argument('files', help='collision file(s) to work with', type=argparse.FileType('r+b'), nargs="+")
Face = namedtuple('Face', ['v1', 'v2', 'v3', 'null', 'flags'])
Vertex = namedtuple('Vertex', ['x', 'y', 'z'])
def main(args):
for file_obj in args.files:
vertices, faces = read_collision_data(file_obj)
filename = os.path.basename(os.path.splitext(file_obj.name)[0])
groups = groups_from_flags(filename, faces)
output_name = filename + '.obj'
write_obj(output_name, vertices, groups)
def read_collision_data(file_obj):
file_size, offset_table_address, table_size = struct.unpack('>III', file_obj.read(12))
root_node_offset = 0x20
file_obj.seek(root_node_offset)
geometry_address, mopp_code_address = struct.unpack('>II', file_obj.read(8))
file_obj.seek(geometry_address + root_node_offset)
vertex_section_address, face_section_address = struct.unpack('>II', file_obj.read(8))
# Vertices
file_obj.seek(vertex_section_address + root_node_offset)
vertices_total, = struct.unpack('>I', file_obj.read(4))
vertices = [Vertex(*struct.unpack('>fff', file_obj.read(12))) for i in range(vertices_total)]
# Faces
file_obj.seek(face_section_address + root_node_offset)
faces_total, = struct.unpack('>I', file_obj.read(4))
faces = [Face(*struct.unpack('>HHHHI', file_obj.read(12))) for i in range(faces_total)]
return vertices, faces
def groups_from_flags(filename, faces):
groups = {}
for face in faces:
group_name = '{:08x}'.format(face.flags)
try:
groups[group_name].append(face)
except KeyError:
groups[group_name] = [face]
return groups
def write_obj(filename, vertices, groups):
with open(filename, 'w') as output:
output.write("mtllib collision.mtl\n")
for vertex in vertices:
output.write('v {} {} {}\n'.format(*vertex))
output.write("\n")
output.write("usemtl collision\n")
output.write("\n")
for group, faces in groups.items():
output.write('g {}\n'.format(group))
for face in faces:
face = face.v1 + 1, face.v2 + 1, face.v3 + 1
output.write('f {} {} {}\n'.format(*face))
if __name__ == '__main__':
args = parser.parse_args()
main(args)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

Some files were not shown because too many files have changed in this diff Show More