status reporting works!

This commit is contained in:
Bitl 2019-11-13 12:33:55 -07:00
parent a4d10036bc
commit 018110cb55
5 changed files with 382 additions and 277 deletions

View File

@ -25,277 +25,6 @@ public static class RobloxXMLLocalizer
Pants
}
public static void LoadRBXFile(DLType type, string stringToUpdate = "")
{
OpenFileDialog openFileDialog1 = new OpenFileDialog()
{
FileName = "Select a ROBLOX level or model",
Filter = "ROBLOX Level (*.rbxl)|*.rbxl|ROBLOX Model (*.rbxm)|*.rbxm",
Title = "Open ROBLOX level or model"
};
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string path = openFileDialog1.FileName;
switch (type)
{
case DLType.RBXL:
//backup the original copy
try
{
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Backing up RBXL...";
}
File.Copy(path, path.Replace(".rbxl", " BAK.rbxl"));
}
catch(Exception ex) when (!Env.Debugging)
{
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Failed to back up RBXL. " + ex.Message;
}
}
//meshes
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Meshes and Textures...";
}
DownloadFromNodes(path, GlobalVars.Fonts);
DownloadFromNodes(path, GlobalVars.Fonts, 1, 1, 1, 1);
//skybox
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Skybox Textures...";
}
DownloadFromNodes(path, GlobalVars.Sky);
DownloadFromNodes(path, GlobalVars.Sky, 1, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 2, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 3, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 4, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 5, 0, 0, 0);
//decal
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Decal Textures...";
}
DownloadFromNodes(path, GlobalVars.Decal);
//texture
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Textures...";
}
DownloadFromNodes(path, GlobalVars.Texture);
//tools and hopperbin
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Tool Textures...";
}
DownloadFromNodes(path, GlobalVars.Tool);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL HopperBin Textures...";
}
DownloadFromNodes(path, GlobalVars.HopperBin);
//sound
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Sounds...";
}
DownloadFromNodes(path, GlobalVars.Sound);
//gui
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL GUI Textures...";
}
DownloadFromNodes(path, GlobalVars.ImageLabel);
//clothing
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Shirt Textures...";
}
DownloadFromNodes(path, GlobalVars.Shirt);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL T-Shirt Textures...";
}
DownloadFromNodes(path, GlobalVars.ShirtGraphic);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Pants Textures...";
}
DownloadFromNodes(path, GlobalVars.Pants);
//scripts
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Linked Scripts...";
}
DownloadFromNodes(path, GlobalVars.Script);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXL Linked LocalScripts...";
}
DownloadFromNodes(path, GlobalVars.LocalScript);
goto default;
case DLType.RBXM:
//meshes
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Meshes and Textures...";
}
DownloadFromNodes(path, GlobalVars.Fonts);
DownloadFromNodes(path, GlobalVars.Fonts, 1, 1, 1, 1);
//skybox
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Skybox Textures...";
}
DownloadFromNodes(path, GlobalVars.Sky);
DownloadFromNodes(path, GlobalVars.Sky, 1, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 2, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 3, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 4, 0, 0, 0);
DownloadFromNodes(path, GlobalVars.Sky, 5, 0, 0, 0);
//decal
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Decal Textures...";
}
DownloadFromNodes(path, GlobalVars.Decal);
//texture
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Textures...";
}
DownloadFromNodes(path, GlobalVars.Texture);
//tools and hopperbin
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Tool Textures...";
}
DownloadFromNodes(path, GlobalVars.Tool);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM HopperBin Textures...";
}
DownloadFromNodes(path, GlobalVars.HopperBin);
//sound
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Sounds...";
}
DownloadFromNodes(path, GlobalVars.Sound);
//gui
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM GUI Textures...";
}
DownloadFromNodes(path, GlobalVars.ImageLabel);
//clothing
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Shirt Textures...";
}
DownloadFromNodes(path, GlobalVars.Shirt);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM T-Shirt Textures...";
}
DownloadFromNodes(path, GlobalVars.ShirtGraphic);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Pants Textures...";
}
DownloadFromNodes(path, GlobalVars.Pants);
//scripts
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Linked Scripts...";
}
DownloadFromNodes(path, GlobalVars.Script);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading RBXM Linked LocalScripts...";
}
DownloadFromNodes(path, GlobalVars.LocalScript);
goto default;
case DLType.Hat:
//meshes
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Hat Meshes and Textures...";
}
DownloadFromNodes(path, GlobalVars.ItemHatFonts);
DownloadFromNodes(path, GlobalVars.ItemHatFonts, 1, 1, 1, 1);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Hat Sounds...";
}
DownloadFromNodes(path, GlobalVars.ItemHatSound);
//scripts
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Hat Linked Scripts...";
}
DownloadFromNodes(path, GlobalVars.Script);
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Hat Linked LocalScripts...";
}
DownloadFromNodes(path, GlobalVars.LocalScript);
goto default;
case DLType.Head:
//meshes
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Head Meshes and Textures...";
}
DownloadFromNodes(path, GlobalVars.ItemHeadFonts);
DownloadFromNodes(path, GlobalVars.ItemHeadFonts, 1, 1, 1, 1);
goto default;
case DLType.Face:
//decal
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Face Textures...";
}
DownloadFromNodes(path, GlobalVars.ItemFaceTexture);
goto default;
case DLType.TShirt:
//texture
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading T-Shirt Textures...";
}
DownloadFromNodes(path, GlobalVars.ItemTShirtTexture);
goto default;
case DLType.Shirt:
//texture
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Shirt Textures...";
}
DownloadFromNodes(path, GlobalVars.ItemShirtTexture);
goto default;
case DLType.Pants:
//texture
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Downloading Pants Textures...";
}
DownloadFromNodes(path, GlobalVars.ItemPantsTexture);
goto default;
default:
if (!string.IsNullOrWhiteSpace(stringToUpdate))
{
stringToUpdate = "Doing Nothing";
}
break;
}
}
}
public static void DownloadFromNodes(string filepath, AssetCacheDef assetdef)
{
DownloadFromNodes(filepath, assetdef.Class, assetdef.Id[0], assetdef.Ext[0], assetdef.Dir[0], assetdef.GameDir[0]);

View File

@ -32,6 +32,7 @@
this.button1 = new System.Windows.Forms.Button();
this.comboBox1 = new System.Windows.Forms.ComboBox();
this.label2 = new System.Windows.Forms.Label();
this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker();
this.SuspendLayout();
//
// button1
@ -69,9 +70,17 @@
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(240, 13);
this.label2.TabIndex = 3;
this.label2.Text = "Doing Nothing";
this.label2.Text = "Idle";
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// backgroundWorker1
//
this.backgroundWorker1.WorkerReportsProgress = true;
this.backgroundWorker1.WorkerSupportsCancellation = true;
this.backgroundWorker1.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker1_DoWork);
this.backgroundWorker1.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.backgroundWorker1_ProgressChanged);
this.backgroundWorker1.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker1_RunWorkerCompleted);
//
// AssetLocalizer
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -83,9 +92,11 @@
this.Controls.Add(this.button1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "AssetLocalizer";
this.Text = "Novetus Asset Localizer";
this.Load += new System.EventHandler(this.AssetLocalizer_Load);
this.Closing += new System.ComponentModel.CancelEventHandler(this.AssetLocalizer_Close);
this.ResumeLayout(false);
}
@ -95,5 +106,6 @@
private System.Windows.Forms.Button button1;
private System.Windows.Forms.ComboBox comboBox1;
private System.Windows.Forms.Label label2;
private System.ComponentModel.BackgroundWorker backgroundWorker1;
}
}

View File

@ -14,6 +14,7 @@ namespace NovetusLauncher
public partial class AssetLocalizer : Form
{
private RobloxXMLLocalizer.DLType currentType;
private string path;
public AssetLocalizer()
{
@ -22,13 +23,17 @@ namespace NovetusLauncher
private void button1_Click(object sender, EventArgs e)
{
try
OpenFileDialog openFileDialog1 = new OpenFileDialog()
{
RobloxXMLLocalizer.LoadRBXFile(currentType, label2.Text);
}
catch (Exception ex) when (!Env.Debugging)
Filter = (currentType == RobloxXMLLocalizer.DLType.RBXL) ? "ROBLOX Level (*.rbxl)|*.rbxl" : "ROBLOX Model (*.rbxm)|*.rbxm",
Title = "Open ROBLOX level or model"
};
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
MessageBox.Show("Error: Unable to localize the asset. " + ex.Message, "Novetus Asset Localizer", MessageBoxButtons.OK, MessageBoxIcon.Error);
path = openFileDialog1.FileName;
backgroundWorker1.RunWorkerAsync();
}
}
@ -97,5 +102,360 @@ namespace NovetusLauncher
Directory.CreateDirectory(GlobalVars.AssetCacheDirScripts);
}
}
private string GetProgressString(RobloxXMLLocalizer.DLType type, int percent)
{
string progressString = "";
switch (currentType)
{
case RobloxXMLLocalizer.DLType.RBXL:
switch (percent)
{
case 0:
progressString = "Backing up RBXL...";
break;
case 5:
progressString = "Downloading RBXL Meshes and Textures...";
break;
case 10:
progressString = "Downloading RBXL Skybox Textures...";
break;
case 15:
progressString = "Downloading RBXL Decal Textures...";
break;
case 20:
progressString = "Downloading RBXL Textures...";
break;
case 25:
progressString = "Downloading RBXL Tool Textures...";
break;
case 30:
progressString = "Downloading RBXL HopperBin Textures...";
break;
case 40:
progressString = "Downloading RBXL Sounds...";
break;
case 50:
progressString = "Downloading RBXL GUI Textures...";
break;
case 60:
progressString = "Downloading RBXL Shirt Textures...";
break;
case 65:
progressString = "Downloading RBXL T-Shirt Textures...";
break;
case 70:
progressString = "Downloading RBXL Pants Textures...";
break;
case 80:
progressString = "Downloading RBXL Linked Scripts...";
break;
case 90:
progressString = "Downloading RBXL Linked LocalScripts...";
break;
}
break;
case RobloxXMLLocalizer.DLType.RBXM:
switch (percent)
{
case 0:
progressString = "Downloading RBXL Meshes and Textures...";
break;
case 10:
progressString = "Downloading RBXL Skybox Textures...";
break;
case 15:
progressString = "Downloading RBXL Decal Textures...";
break;
case 20:
progressString = "Downloading RBXL Textures...";
break;
case 25:
progressString = "Downloading RBXL Tool Textures...";
break;
case 30:
progressString = "Downloading RBXL HopperBin Textures...";
break;
case 40:
progressString = "Downloading RBXL Sounds...";
break;
case 50:
progressString = "Downloading RBXL GUI Textures...";
break;
case 60:
progressString = "Downloading RBXL Shirt Textures...";
break;
case 65:
progressString = "Downloading RBXL T-Shirt Textures...";
break;
case 70:
progressString = "Downloading RBXL Pants Textures...";
break;
case 80:
progressString = "Downloading RBXL Linked Scripts...";
break;
case 90:
progressString = "Downloading RBXL Linked LocalScripts...";
break;
}
break;
case RobloxXMLLocalizer.DLType.Hat:
switch (percent)
{
case 0:
progressString = "Downloading Hat Meshes and Textures...";
break;
case 25:
progressString = "Downloading Hat Sounds...";
break;
case 50:
progressString = "Downloading Hat Linked Scripts...";
break;
case 75:
progressString = "Downloading Hat Linked LocalScripts...";
break;
}
break;
case RobloxXMLLocalizer.DLType.Head:
//meshes
switch (percent)
{
case 0:
progressString = "Downloading Head Meshes and Textures...";
break;
}
break;
case RobloxXMLLocalizer.DLType.Face:
//decal
switch (percent)
{
case 0:
progressString = "Downloading Face Textures...";
break;
}
break;
case RobloxXMLLocalizer.DLType.TShirt:
//texture
switch (percent)
{
case 0:
progressString = "Downloading T-Shirt Textures...";
break;
}
break;
case RobloxXMLLocalizer.DLType.Shirt:
//texture
switch (percent)
{
case 0:
progressString = "Downloading Shirt Textures...";
break;
}
break;
case RobloxXMLLocalizer.DLType.Pants:
//texture
switch (percent)
{
case 0:
progressString = "Downloading Pants Textures...";
break;
}
break;
default:
progressString = "Idle";
break;
}
return progressString + " " + percent.ToString() + "%";
}
// This event handler is where the time-consuming work is done.
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
BackgroundWorker worker = sender as BackgroundWorker;
try
{
switch (currentType)
{
case RobloxXMLLocalizer.DLType.RBXL:
//backup the original copy
try
{
worker.ReportProgress(0);
File.Copy(path, path.Replace(".rbxl", " BAK.rbxl"));
}
catch (Exception) when (!Env.Debugging)
{
worker.ReportProgress(100);
}
//meshes
worker.ReportProgress(5);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Fonts);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Fonts, 1, 1, 1, 1);
//skybox
worker.ReportProgress(10);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 1, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 2, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 3, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 4, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 5, 0, 0, 0);
//decal
worker.ReportProgress(15);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Decal);
//texture
worker.ReportProgress(20);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Texture);
//tools and hopperbin
worker.ReportProgress(25);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Tool);
worker.ReportProgress(30);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.HopperBin);
//sound
worker.ReportProgress(40);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sound);
worker.ReportProgress(50);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ImageLabel);
//clothing
worker.ReportProgress(60);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Shirt);
worker.ReportProgress(65);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ShirtGraphic);
worker.ReportProgress(70);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Pants);
//scripts
worker.ReportProgress(80);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Script);
worker.ReportProgress(90);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.LocalScript);
worker.ReportProgress(100);
break;
case RobloxXMLLocalizer.DLType.RBXM:
//meshes
worker.ReportProgress(0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Fonts);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Fonts, 1, 1, 1, 1);
//skybox
worker.ReportProgress(10);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 1, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 2, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 3, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 4, 0, 0, 0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sky, 5, 0, 0, 0);
//decal
worker.ReportProgress(15);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Decal);
//texture
worker.ReportProgress(20);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Texture);
//tools and hopperbin
worker.ReportProgress(25);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Tool);
worker.ReportProgress(30);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.HopperBin);
//sound
worker.ReportProgress(40);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Sound);
worker.ReportProgress(50);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ImageLabel);
//clothing
worker.ReportProgress(60);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Shirt);
worker.ReportProgress(65);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ShirtGraphic);
worker.ReportProgress(70);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Pants);
//scripts
worker.ReportProgress(80);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Script);
worker.ReportProgress(90);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.LocalScript);
worker.ReportProgress(100);
break;
case RobloxXMLLocalizer.DLType.Hat:
//meshes
worker.ReportProgress(0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemHatFonts);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemHatFonts, 1, 1, 1, 1);
worker.ReportProgress(25);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemHatSound);
//scripts
worker.ReportProgress(50);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.Script);
worker.ReportProgress(75);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.LocalScript);
worker.ReportProgress(100);
break;
case RobloxXMLLocalizer.DLType.Head:
//meshes
worker.ReportProgress(0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemHeadFonts);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemHeadFonts, 1, 1, 1, 1);
worker.ReportProgress(100);
break;
case RobloxXMLLocalizer.DLType.Face:
//decal
worker.ReportProgress(0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemFaceTexture);
worker.ReportProgress(100);
break;
case RobloxXMLLocalizer.DLType.TShirt:
//texture
worker.ReportProgress(0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemTShirtTexture);
worker.ReportProgress(100);
break;
case RobloxXMLLocalizer.DLType.Shirt:
//texture
worker.ReportProgress(0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemShirtTexture);
worker.ReportProgress(100);
break;
case RobloxXMLLocalizer.DLType.Pants:
//texture
worker.ReportProgress(0);
RobloxXMLLocalizer.DownloadFromNodes(path, GlobalVars.ItemPantsTexture);
worker.ReportProgress(100);
break;
default:
break;
}
}
catch (Exception ex) when (!Env.Debugging)
{
MessageBox.Show("Error: Unable to localize the asset. " + ex.Message, "Novetus Asset Localizer", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
// This event handler updates the progress.
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
label2.Text = GetProgressString(currentType, e.ProgressPercentage);
}
// This event handler deals with the results of the background operation.
private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
if (e.Cancelled == true)
{
label2.Text = "Canceled!";
}
else if (e.Error != null)
{
label2.Text = "Error: " + e.Error.Message;
}
else
{
label2.Text = "Done!";
}
}
void AssetLocalizer_Close(object sender, CancelEventArgs e)
{
backgroundWorker1.CancelAsync();
}
}
}

View File

@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="backgroundWorker1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>

View File

@ -78,6 +78,7 @@
this.Controls.Add(this.label1);
this.Controls.Add(this.pictureBox2);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "NovetusSDK";
this.Text = "Novetus SDK";
this.Load += new System.EventHandler(this.NovetusSDK_Load);