diff --git a/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.Designer.cs b/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.Designer.cs
index 17a82d7d..aee60d4e 100644
--- a/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.Designer.cs
+++ b/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.Designer.cs
@@ -32,9 +32,9 @@ private void InitializeComponent()
this.labelAssetName = new System.Windows.Forms.Label();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.button2 = new System.Windows.Forms.Button();
+ this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.button1 = new System.Windows.Forms.Button();
this.checkBoxSendToSNDI = new System.Windows.Forms.CheckBox();
- this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.tableLayoutPanel1.SuspendLayout();
this.SuspendLayout();
//
@@ -62,30 +62,40 @@ private void InitializeComponent()
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 5;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.tableLayoutPanel1.Size = new System.Drawing.Size(293, 267);
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 22F));
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28F));
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28F));
+ this.tableLayoutPanel1.Size = new System.Drawing.Size(293, 283);
this.tableLayoutPanel1.TabIndex = 7;
//
// button2
//
this.button2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.button2.Location = new System.Drawing.Point(3, 240);
+ this.button2.Location = new System.Drawing.Point(3, 258);
this.button2.Name = "button2";
- this.button2.Size = new System.Drawing.Size(287, 24);
+ this.button2.Size = new System.Drawing.Size(287, 22);
this.button2.TabIndex = 10;
this.button2.Text = "Export Sound Data";
this.button2.UseVisualStyleBackColor = true;
this.button2.Click += new System.EventHandler(this.button2_Click);
//
+ // richTextBox1
+ //
+ this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.richTextBox1.Location = new System.Drawing.Point(3, 73);
+ this.richTextBox1.Name = "richTextBox1";
+ this.richTextBox1.ReadOnly = true;
+ this.richTextBox1.Size = new System.Drawing.Size(287, 179);
+ this.richTextBox1.TabIndex = 9;
+ this.richTextBox1.Text = resources.GetString("richTextBox1.Text");
+ //
// button1
//
this.button1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.button1.Location = new System.Drawing.Point(3, 46);
+ this.button1.Location = new System.Drawing.Point(3, 45);
this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(287, 23);
+ this.button1.Size = new System.Drawing.Size(287, 22);
this.button1.TabIndex = 7;
this.button1.Text = "Import Sound Data";
this.button1.UseVisualStyleBackColor = true;
@@ -96,26 +106,16 @@ private void InitializeComponent()
this.checkBoxSendToSNDI.AutoSize = true;
this.checkBoxSendToSNDI.Location = new System.Drawing.Point(3, 23);
this.checkBoxSendToSNDI.Name = "checkBoxSendToSNDI";
- this.checkBoxSendToSNDI.Size = new System.Drawing.Size(178, 17);
+ this.checkBoxSendToSNDI.Size = new System.Drawing.Size(178, 16);
this.checkBoxSendToSNDI.TabIndex = 8;
this.checkBoxSendToSNDI.Text = "Trim header and send it to SNDI";
this.checkBoxSendToSNDI.UseVisualStyleBackColor = true;
//
- // richTextBox1
- //
- this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.richTextBox1.Location = new System.Drawing.Point(3, 75);
- this.richTextBox1.Name = "richTextBox1";
- this.richTextBox1.ReadOnly = true;
- this.richTextBox1.Size = new System.Drawing.Size(287, 159);
- this.richTextBox1.TabIndex = 9;
- this.richTextBox1.Text = resources.GetString("richTextBox1.Text");
- //
// InternalSoundEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(293, 267);
+ this.ClientSize = new System.Drawing.Size(293, 283);
this.Controls.Add(this.tableLayoutPanel1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
diff --git a/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.cs b/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.cs
index e6860e6f..4b5e5ec4 100644
--- a/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.cs
+++ b/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.cs
@@ -65,7 +65,11 @@ private void button2_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog = new SaveFileDialog()
{
- FileName = asset.AHDR.ADBG.assetName,
+ FileName = asset.AHDR.ADBG.assetName + (
+ (HipHopFile.Functions.currentPlatform == HipHopFile.Platform.GameCube) ? ".DSP" :
+ (HipHopFile.Functions.currentPlatform == HipHopFile.Platform.Xbox) ? ".WAV" :
+ (HipHopFile.Functions.currentPlatform == HipHopFile.Platform.PS2) ? ".VAG" :
+ ""),
Filter = "All files|*"
};
diff --git a/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.resx b/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.resx
index 09a130c7..0f50c9b4 100644
--- a/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.resx
+++ b/IndustrialPark/ArchiveEditor/AssetEditor/InternalSoundEditor.resx
@@ -118,8 +118,9 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- The sound data is a GameCube DSP audio file stripped of its 0x60 byte header: all of a level's sound headers (SND and SNDS) are kept separate in the single SNDI asset in the HOP file.
-The Import Sound Data button allows you to choose a DSP to import. If you check the checkbox, I will trim the header and send it to the SNDI asset myself. If you leave it unchecked, I will only import the raw data, won't perform any operation on it and won't touch the SNDI.
-The Export Sound Data button will take the header from the SNDI asset and put it in the file before exporting it.
+ All of a file's sound headers are kept separate in the single SNDI asset in the HOP file. The SND and SNDS assets only contain a part of the data.
+The Import Sound Data button allows you to choose a sound file to import (GameCube DSP, XBOX WAV, PS2 VAG). If you check the checkbox, I will trim the header and send it to the SNDI asset myself. If you leave it unchecked, I will only import the raw data, won't perform any operation on it and won't touch the SNDI.
+The Export Sound Data button will take the header from the SNDI asset and put it in the file before exporting it.
+This is supported in all games and platforms except GameCube versions of TSSM, Incredibles and ROTU.
\ No newline at end of file