converted content providers and part colors to json

This commit is contained in:
Bitl 2024-01-25 21:19:10 -07:00
parent 1e9a73e8a3
commit c2ecc53df7
24 changed files with 962 additions and 180 deletions

View File

@ -63,7 +63,7 @@ class CharacterCustomizationShared
if (File.Exists(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName))
{
contentProviders = OnlineClothing.GetContentProviders();
contentProviders = ContentProviderLoader.GetContentProviders();
for (int i = 0; i < contentProviders.Length; i++)
{
@ -76,7 +76,7 @@ class CharacterCustomizationShared
//face
if (GlobalVars.UserCustomization.ReadSetting("Face").Contains("http://") || GlobalVars.UserCustomization.ReadSetting("Face").Contains("https://"))
{
Provider faceProvider = OnlineClothing.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("Face"));
Provider faceProvider = ContentProviderLoader.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("Face"));
FaceIDBox.Text = GlobalVars.UserCustomization.ReadSetting("Face").Replace(faceProvider.URL, "");
FaceTypeBox.SelectedItem = faceProvider.Name;
}
@ -84,21 +84,21 @@ class CharacterCustomizationShared
//clothing
if (GlobalVars.UserCustomization.ReadSetting("TShirt").Contains("http://") || GlobalVars.UserCustomization.ReadSetting("TShirt").Contains("https://"))
{
Provider tShirtProvider = OnlineClothing.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("TShirt"));
Provider tShirtProvider = ContentProviderLoader.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("TShirt"));
TShirtsIDBox.Text = GlobalVars.UserCustomization.ReadSetting("TShirt").Replace(tShirtProvider.URL, "");
TShirtsTypeBox.SelectedItem = tShirtProvider.Name;
}
if (GlobalVars.UserCustomization.ReadSetting("Shirt").Contains("http://") || GlobalVars.UserCustomization.ReadSetting("Shirt").Contains("https://"))
{
Provider shirtProvider = OnlineClothing.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("Shirt"));
Provider shirtProvider = ContentProviderLoader.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("Shirt"));
ShirtsIDBox.Text = GlobalVars.UserCustomization.ReadSetting("Shirt").Replace(shirtProvider.URL, "");
ShirtsTypeBox.SelectedItem = shirtProvider.Name;
}
if (GlobalVars.UserCustomization.ReadSetting("Pants").Contains("http://") || GlobalVars.UserCustomization.ReadSetting("Pants").Contains("https://"))
{
Provider pantsProvider = OnlineClothing.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("Pants"));
Provider pantsProvider = ContentProviderLoader.FindContentProviderByURL(contentProviders, GlobalVars.UserCustomization.ReadSetting("Pants"));
PantsIDBox.Text = GlobalVars.UserCustomization.ReadSetting("Pants").Replace(pantsProvider.URL, "");
PantsTypeBox.SelectedItem = pantsProvider.Name;
}
@ -300,7 +300,7 @@ class CharacterCustomizationShared
FaceDesc,
FaceList,
true,
FaceTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
FaceTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
);
break;
@ -327,7 +327,7 @@ class CharacterCustomizationShared
TShirtDesc,
TShirtList,
true,
TShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
TShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
);
break;
@ -354,7 +354,7 @@ class CharacterCustomizationShared
ShirtDesc,
ShirtList,
true,
ShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
ShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
);
break;
@ -381,7 +381,7 @@ class CharacterCustomizationShared
PantsDesc,
PantsList,
true,
PantsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
PantsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
);
break;
@ -664,7 +664,7 @@ class CharacterCustomizationShared
public void ChangeItem(string item, string itemdir, string defaultitem, PictureBox outputImage, TextBox outputString, ListBox box, bool initial, bool hatsinextra = false, string itemdir2 = "")
{
ChangeItem(item, itemdir, defaultitem, outputImage, outputString, box, initial, null, hatsinextra, itemdir);
ChangeItem(item, itemdir, defaultitem, outputImage, outputString, box, initial, null, hatsinextra, itemdir2);
}
public void ChangeItem(string item, string itemdir, string defaultitem, PictureBox outputImage, TextBox outputString, ListBox box, bool initial, Provider provider, bool hatsinextra = false, string itemdir2 = "")

View File

@ -148,7 +148,7 @@ public partial class CharacterCustomizationCompact : Form
textBox6,
listBox4,
false,
FaceTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
FaceTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -203,7 +203,7 @@ public partial class CharacterCustomizationCompact : Form
textBox6,
listBox4,
false,
FaceTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
FaceTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
);
}
@ -213,7 +213,7 @@ public partial class CharacterCustomizationCompact : Form
if (FaceTypeBox.SelectedItem != null)
{
faceProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString());
faceProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_Face_URL = faceProvider.URL;
}
@ -261,7 +261,7 @@ public partial class CharacterCustomizationCompact : Form
textBox7,
listBox5,
false,
TShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
TShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -316,7 +316,7 @@ public partial class CharacterCustomizationCompact : Form
textBox7,
listBox5,
false,
TShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
TShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
);
}
@ -326,7 +326,7 @@ public partial class CharacterCustomizationCompact : Form
if (TShirtsTypeBox.SelectedItem != null)
{
tShirtProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString());
tShirtProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_T_Shirt_URL = tShirtProvider.URL;
}
@ -373,7 +373,7 @@ public partial class CharacterCustomizationCompact : Form
textBox8,
listBox6,
false,
ShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
ShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -428,7 +428,7 @@ public partial class CharacterCustomizationCompact : Form
textBox8,
listBox6,
false,
ShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
ShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
);
}
@ -438,7 +438,7 @@ public partial class CharacterCustomizationCompact : Form
if (ShirtsTypeBox.SelectedItem != null)
{
shirtProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString());
shirtProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_Shirt_URL = shirtProvider.URL;
}
@ -485,7 +485,7 @@ public partial class CharacterCustomizationCompact : Form
textBox9,
listBox7,
false,
PantsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
PantsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -540,7 +540,7 @@ public partial class CharacterCustomizationCompact : Form
textBox9,
listBox7,
false,
PantsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
PantsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
);
}
@ -550,7 +550,7 @@ public partial class CharacterCustomizationCompact : Form
if (PantsTypeBox.SelectedItem != null)
{
pantsProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString());
pantsProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_Pants_URL = pantsProvider.URL;
}

View File

@ -150,7 +150,7 @@ public partial class CharacterCustomizationExtended : Form
textBox6,
listBox4,
false,
FaceTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
FaceTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -205,7 +205,7 @@ public partial class CharacterCustomizationExtended : Form
textBox6,
listBox4,
false,
FaceTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
FaceTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString()) : null
);
}
@ -215,7 +215,7 @@ public partial class CharacterCustomizationExtended : Form
if (FaceTypeBox.SelectedItem != null)
{
faceProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString());
faceProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, FaceTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_Face_URL = faceProvider.URL;
}
@ -263,7 +263,7 @@ public partial class CharacterCustomizationExtended : Form
textBox7,
listBox5,
false,
TShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
TShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -318,7 +318,7 @@ public partial class CharacterCustomizationExtended : Form
textBox7,
listBox5,
false,
TShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
TShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString()) : null
);
}
@ -328,7 +328,7 @@ public partial class CharacterCustomizationExtended : Form
if (TShirtsTypeBox.SelectedItem != null)
{
tShirtProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString());
tShirtProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, TShirtsTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_T_Shirt_URL = tShirtProvider.URL;
}
@ -375,7 +375,7 @@ public partial class CharacterCustomizationExtended : Form
textBox8,
listBox6,
false,
ShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
ShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -430,7 +430,7 @@ public partial class CharacterCustomizationExtended : Form
textBox8,
listBox6,
false,
ShirtsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
ShirtsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString()) : null
);
}
@ -440,7 +440,7 @@ public partial class CharacterCustomizationExtended : Form
if (ShirtsTypeBox.SelectedItem != null)
{
shirtProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString());
shirtProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, ShirtsTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_Shirt_URL = shirtProvider.URL;
}
@ -487,7 +487,7 @@ public partial class CharacterCustomizationExtended : Form
textBox9,
listBox7,
false,
PantsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
PantsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
);
}
}
@ -542,7 +542,7 @@ public partial class CharacterCustomizationExtended : Form
textBox9,
listBox7,
false,
PantsTypeBox.SelectedItem != null ? OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
PantsTypeBox.SelectedItem != null ? ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString()) : null
);
}
@ -552,7 +552,7 @@ public partial class CharacterCustomizationExtended : Form
if (PantsTypeBox.SelectedItem != null)
{
pantsProvider = OnlineClothing.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString());
pantsProvider = ContentProviderLoader.FindContentProviderByName(characterCustomizationForm.contentProviders, PantsTypeBox.SelectedItem.ToString());
characterCustomizationForm.Custom_Pants_URL = pantsProvider.URL;
}

View File

@ -13,6 +13,7 @@ using System.Windows.Forms;
using System.Xml.Serialization;
using System.Xml;
using System.Xml.Linq;
using Newtonsoft.Json;
#endregion
namespace Novetus.Core
@ -387,43 +388,30 @@ namespace Novetus.Core
#endregion
#region Part Color Options
[JsonObject(MemberSerialization.OptIn)]
public class PartColor
{
[JsonProperty]
public string ColorName;
[JsonProperty]
public int ColorID;
[JsonProperty]
public string ColorRGB;
[XmlIgnore]
public Color ColorObject;
[XmlIgnore]
public string ColorGroup;
[XmlIgnore]
public string ColorRawName;
[XmlIgnore]
public Bitmap ColorImage;
}
[XmlRoot("PartColors")]
public class PartColors
{
[XmlArray("ColorList")]
public PartColor[] ColorList;
}
public class PartColorLoader
{
public static PartColor[] GetPartColors()
{
if (File.Exists(GlobalPaths.ConfigDir + "\\" + GlobalPaths.PartColorXMLName))
{
XmlSerializer serializer = new XmlSerializer(typeof(PartColors));
PartColors colors;
List<PartColor> colors = JsonConvert.DeserializeObject<List<PartColor>>(File.ReadAllText(GlobalPaths.ConfigDir + "\\" + GlobalPaths.PartColorXMLName));
using (FileStream fs = new FileStream(GlobalPaths.ConfigDir + "\\" + GlobalPaths.PartColorXMLName, FileMode.Open))
{
colors = (PartColors)serializer.Deserialize(fs);
}
foreach (var item in colors.ColorList)
foreach (var item in colors)
{
string colorFixed = Regex.Replace(item.ColorRGB, @"[\[\]\{\}\(\)\<\> ]", "");
string[] rgbValues = colorFixed.Split(',');
@ -446,7 +434,7 @@ namespace Novetus.Core
item.ColorImage = GeneratePartColorIcon(item, 128);
}
return colors.ColorList;
return colors.ToArray();
}
else
{
@ -552,35 +540,25 @@ namespace Novetus.Core
#endregion
#region Content Provider Options
[JsonObject(MemberSerialization.OptIn)]
public class Provider
{
[JsonProperty]
public string Name;
[JsonProperty]
public string URL;
[JsonProperty]
public string Icon;
}
[XmlRoot("ContentProviders")]
public class ContentProviders
{
[XmlArray("Providers")]
public Provider[] Providers;
}
public class OnlineClothing
public class ContentProviderLoader
{
public static Provider[] GetContentProviders()
{
if (File.Exists(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName))
{
XmlSerializer serializer = new XmlSerializer(typeof(ContentProviders));
ContentProviders providers;
using (FileStream fs = new FileStream(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName, FileMode.Open))
{
providers = (ContentProviders)serializer.Deserialize(fs);
}
return providers.Providers;
List<Provider> providers = JsonConvert.DeserializeObject<List<Provider>>(File.ReadAllText(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName));
return providers.ToArray();
}
else
{
@ -994,7 +972,7 @@ namespace Novetus.Core
if (GlobalVars.ExternalIP.Equals("localhost"))
return "";
if (!GlobalVars.SelectedClientInfo.CommandLineArgs.Contains("%localizeonlineclothing%"))
if (!GlobalVars.SelectedClientInfo.CommandLineArgs.Contains("%localizeContentProviderLoader%"))
return "";
if (item.Contains("http://") || item.Contains("https://"))
@ -1035,7 +1013,7 @@ namespace Novetus.Core
if (GlobalVars.ExternalIP.Equals("localhost"))
return "";
if (!GlobalVars.SelectedClientInfo.CommandLineArgs.Contains("%localizeonlineclothing%"))
if (!GlobalVars.SelectedClientInfo.CommandLineArgs.Contains("%localizeContentProviderLoader%"))
return "";
if (item.Contains("http://") || item.Contains("https://"))
@ -1074,7 +1052,7 @@ namespace Novetus.Core
return "";
}
public static void ReloadLoadoutValue(bool localizeOnlineClothing = false)
public static void ReloadLoadoutValue(bool localizeContentProviderLoader = false)
{
string hat1 = (!GlobalVars.UserCustomization.ReadSetting("Hat1").EndsWith("-Solo.rbxm")) ? GlobalVars.UserCustomization.ReadSetting("Hat1") : "NoHat.rbxm";
string hat2 = (!GlobalVars.UserCustomization.ReadSetting("Hat2").EndsWith("-Solo.rbxm")) ? GlobalVars.UserCustomization.ReadSetting("Hat2") : "NoHat.rbxm";
@ -1100,7 +1078,7 @@ namespace Novetus.Core
baseClothing +
extra + "'";
if (localizeOnlineClothing)
if (localizeContentProviderLoader)
{
GlobalVars.TShirtTextureID = GetItemTextureID(GlobalVars.UserCustomization.ReadSetting("TShirt"), "TShirt", new AssetCacheDefBasic("ShirtGraphic", new string[] { "Graphic" }));
GlobalVars.ShirtTextureID = GetItemTextureID(GlobalVars.UserCustomization.ReadSetting("Shirt"), "Shirt", new AssetCacheDefBasic("Shirt", new string[] { "ShirtTemplate" }));

View File

@ -116,8 +116,8 @@ namespace Novetus.Core
public static readonly string InfoName = "info.ini";
public static readonly string ScriptName = "CSMPFunctions";
public static readonly string ScriptGenName = "CSMPBoot";
public static readonly string ContentProviderXMLName = "ContentProviders.xml";
public static readonly string PartColorXMLName = "PartColors.xml";
public static readonly string ContentProviderXMLName = "ContentProviders.json";
public static readonly string PartColorXMLName = "PartColors.json";
public static readonly string FileDeleteFilterName = "FileDeleteFilter.txt";
public static readonly string InitialFileListIgnoreFilterName = "InitialFileListIgnoreFilter.txt";
public static readonly string ServerInfoFileName = "serverinfo.txt";

View File

@ -39,7 +39,7 @@ public partial class AssetDownloader : Form
//shared
if (File.Exists(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName))
{
contentProviders = OnlineClothing.GetContentProviders();
contentProviders = ContentProviderLoader.GetContentProviders();
for (int i = 0; i < contentProviders.Length; i++)
{
@ -105,7 +105,7 @@ public partial class AssetDownloader : Form
}
else
{
Provider pro = OnlineClothing.FindContentProviderByName(contentProviders, URLSelection.SelectedItem.ToString());
Provider pro = ContentProviderLoader.FindContentProviderByName(contentProviders, URLSelection.SelectedItem.ToString());
if (pro != null)
{
url = pro.URL;

View File

@ -42,7 +42,7 @@ public partial class AssetFixer : Form
//shared
if (File.Exists(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName))
{
contentProviders = OnlineClothing.GetContentProviders();
contentProviders = ContentProviderLoader.GetContentProviders();
for (int i = 0; i < contentProviders.Length; i++)
{
@ -115,7 +115,7 @@ public partial class AssetFixer : Form
}
else
{
Provider pro = OnlineClothing.FindContentProviderByName(contentProviders, URLSelection.SelectedItem.ToString());
Provider pro = ContentProviderLoader.FindContentProviderByName(contentProviders, URLSelection.SelectedItem.ToString());
if (pro != null)
{
url = pro.URL;

View File

@ -144,7 +144,7 @@ partial class ClientinfoEditor
this.iconToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.charappToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.loadoutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.localizeonlineclothingToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.localizeContentProviderLoaderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.nameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.idToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.tripcodeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@ -163,6 +163,7 @@ partial class ClientinfoEditor
this.checkBox8 = new System.Windows.Forms.CheckBox();
this.textBox2 = new System.Windows.Forms.TextBox();
this.label3 = new System.Windows.Forms.Label();
this.jSONToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//
@ -311,7 +312,8 @@ partial class ClientinfoEditor
//
this.saveAsTextFileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.textToolStripMenuItem,
this.iNIToolStripMenuItem});
this.iNIToolStripMenuItem,
this.jSONToolStripMenuItem});
this.saveAsTextFileToolStripMenuItem.Name = "saveAsTextFileToolStripMenuItem";
this.saveAsTextFileToolStripMenuItem.Size = new System.Drawing.Size(294, 22);
this.saveAsTextFileToolStripMenuItem.Text = "Save As";
@ -319,14 +321,14 @@ partial class ClientinfoEditor
// textToolStripMenuItem
//
this.textToolStripMenuItem.Name = "textToolStripMenuItem";
this.textToolStripMenuItem.Size = new System.Drawing.Size(95, 22);
this.textToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.textToolStripMenuItem.Text = "Text";
this.textToolStripMenuItem.Click += new System.EventHandler(this.saveAsTextFileToolStripMenuItem_Click);
//
// iNIToolStripMenuItem
//
this.iNIToolStripMenuItem.Name = "iNIToolStripMenuItem";
this.iNIToolStripMenuItem.Size = new System.Drawing.Size(95, 22);
this.iNIToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.iNIToolStripMenuItem.Text = "INI";
this.iNIToolStripMenuItem.Click += new System.EventHandler(this.saveAsINIFileToolStripMenuItem_Click);
//
@ -358,48 +360,48 @@ partial class ClientinfoEditor
this.sharedToolStripMenuItem,
this.validateToolStripMenuItem});
this.tagsToolStripMenuItem.Name = "tagsToolStripMenuItem";
this.tagsToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.tagsToolStripMenuItem.Size = new System.Drawing.Size(157, 22);
this.tagsToolStripMenuItem.Text = "Add Tags";
//
// clientToolStripMenuItem
//
this.clientToolStripMenuItem.Name = "clientToolStripMenuItem";
this.clientToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.clientToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
this.clientToolStripMenuItem.Text = "client=";
this.clientToolStripMenuItem.Click += new System.EventHandler(this.clientToolStripMenuItem_Click);
//
// serverToolStripMenuItem
//
this.serverToolStripMenuItem.Name = "serverToolStripMenuItem";
this.serverToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.serverToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
this.serverToolStripMenuItem.Text = "server=";
this.serverToolStripMenuItem.Click += new System.EventHandler(this.serverToolStripMenuItem_Click);
//
// soloToolStripMenuItem
//
this.soloToolStripMenuItem.Name = "soloToolStripMenuItem";
this.soloToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.soloToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
this.soloToolStripMenuItem.Text = "solo=";
this.soloToolStripMenuItem.Click += new System.EventHandler(this.soloToolStripMenuItem_Click);
//
// studioToolStripMenuItem
//
this.studioToolStripMenuItem.Name = "studioToolStripMenuItem";
this.studioToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.studioToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
this.studioToolStripMenuItem.Text = "studio=";
this.studioToolStripMenuItem.Click += new System.EventHandler(this.studioToolStripMenuItem_Click);
//
// no3dToolStripMenuItem
//
this.no3dToolStripMenuItem.Name = "no3dToolStripMenuItem";
this.no3dToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.no3dToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
this.no3dToolStripMenuItem.Text = "no3d=";
this.no3dToolStripMenuItem.Click += new System.EventHandler(this.no3dToolStripMenuItem_Click);
//
// sharedToolStripMenuItem
//
this.sharedToolStripMenuItem.Name = "sharedToolStripMenuItem";
this.sharedToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.sharedToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
this.sharedToolStripMenuItem.Text = "shared=";
this.sharedToolStripMenuItem.Click += new System.EventHandler(this.sharedToolStripMenuItem_Click);
//
@ -408,7 +410,7 @@ partial class ClientinfoEditor
this.validateToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.addValidateTagsForRelativePathToolStripMenuItem});
this.validateToolStripMenuItem.Name = "validateToolStripMenuItem";
this.validateToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.validateToolStripMenuItem.Size = new System.Drawing.Size(123, 22);
this.validateToolStripMenuItem.Text = "validate=";
this.validateToolStripMenuItem.Click += new System.EventHandler(this.validateToolStripMenuItem_Click);
//
@ -428,7 +430,7 @@ partial class ClientinfoEditor
this.playerToolStripMenuItem,
this.argsToolStripMenuItem});
this.variablesToolStripMenuItem.Name = "variablesToolStripMenuItem";
this.variablesToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.variablesToolStripMenuItem.Size = new System.Drawing.Size(157, 22);
this.variablesToolStripMenuItem.Text = "Add Variables";
//
// generalToolStripMenuItem
@ -452,7 +454,7 @@ partial class ClientinfoEditor
this.generatescriptToolStripMenuItem,
this.serverToolStripMenuItem2});
this.generalToolStripMenuItem.Name = "generalToolStripMenuItem";
this.generalToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.generalToolStripMenuItem.Size = new System.Drawing.Size(116, 22);
this.generalToolStripMenuItem.Text = "General";
//
// mapfileToolStripMenuItem
@ -581,7 +583,7 @@ partial class ClientinfoEditor
this.notificationsToolStripMenuItem,
this.portToolStripMenuItem});
this.serverToolStripMenuItem1.Name = "serverToolStripMenuItem1";
this.serverToolStripMenuItem1.Size = new System.Drawing.Size(180, 22);
this.serverToolStripMenuItem1.Size = new System.Drawing.Size(116, 22);
this.serverToolStripMenuItem1.Text = "Server";
//
// limitToolStripMenuItem
@ -616,7 +618,7 @@ partial class ClientinfoEditor
this.md5sToolStripMenuItem,
this.md5sdToolStripMenuItem});
this.securityToolStripMenuItem.Name = "securityToolStripMenuItem";
this.securityToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.securityToolStripMenuItem.Size = new System.Drawing.Size(116, 22);
this.securityToolStripMenuItem.Text = "Security";
//
// md5launcherToolStripMenuItem
@ -676,7 +678,7 @@ partial class ClientinfoEditor
this.idToolStripMenuItem,
this.tripcodeToolStripMenuItem});
this.playerToolStripMenuItem.Name = "playerToolStripMenuItem";
this.playerToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.playerToolStripMenuItem.Size = new System.Drawing.Size(116, 22);
this.playerToolStripMenuItem.Text = "Player";
//
// customizationToolStripMenuItem
@ -692,7 +694,7 @@ partial class ClientinfoEditor
this.extraToolStripMenuItem,
this.charappToolStripMenuItem,
this.loadoutToolStripMenuItem,
this.localizeonlineclothingToolStripMenuItem});
this.localizeContentProviderLoaderToolStripMenuItem});
this.customizationToolStripMenuItem.Name = "customizationToolStripMenuItem";
this.customizationToolStripMenuItem.Size = new System.Drawing.Size(151, 22);
this.customizationToolStripMenuItem.Text = "Customization";
@ -707,7 +709,7 @@ partial class ClientinfoEditor
this.rarmcolorToolStripMenuItem,
this.rlegcolorToolStripMenuItem});
this.bodyColorsToolStripMenuItem.Name = "bodyColorsToolStripMenuItem";
this.bodyColorsToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.bodyColorsToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.bodyColorsToolStripMenuItem.Text = "Body Colors";
//
// headcolorToolStripMenuItem
@ -762,7 +764,7 @@ partial class ClientinfoEditor
this.hat2dToolStripMenuItem,
this.hat3dToolStripMenuItem});
this.hatsToolStripMenuItem.Name = "hatsToolStripMenuItem";
this.hatsToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.hatsToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.hatsToolStripMenuItem.Text = "Hats";
//
// hat1ToolStripMenuItem
@ -815,7 +817,7 @@ partial class ClientinfoEditor
this.facetexidToolStripMenuItem,
this.facetexlocalToolStripMenuItem});
this.facesToolStripMenuItem.Name = "facesToolStripMenuItem";
this.facesToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.facesToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.facesToolStripMenuItem.Text = "Faces";
//
// faceToolStripMenuItem
@ -852,7 +854,7 @@ partial class ClientinfoEditor
this.headToolStripMenuItem,
this.headdToolStripMenuItem});
this.headsToolStripMenuItem.Name = "headsToolStripMenuItem";
this.headsToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.headsToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.headsToolStripMenuItem.Text = "Heads";
//
// headToolStripMenuItem
@ -877,7 +879,7 @@ partial class ClientinfoEditor
this.tshirttexidToolStripMenuItem,
this.tshirttexidlocalToolStripMenuItem});
this.tShirtsToolStripMenuItem.Name = "tShirtsToolStripMenuItem";
this.tShirtsToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.tShirtsToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.tShirtsToolStripMenuItem.Text = "T-Shirts";
//
// tshirtToolStripMenuItem
@ -916,7 +918,7 @@ partial class ClientinfoEditor
this.shirttexidToolStripMenuItem,
this.shirttexidlocalToolStripMenuItem});
this.shirtsToolStripMenuItem.Name = "shirtsToolStripMenuItem";
this.shirtsToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.shirtsToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.shirtsToolStripMenuItem.Text = "Shirts";
//
// shirtToolStripMenuItem
@ -955,7 +957,7 @@ partial class ClientinfoEditor
this.pantstexidToolStripMenuItem,
this.pantstexidlocalToolStripMenuItem});
this.pantsToolStripMenuItem.Name = "pantsToolStripMenuItem";
this.pantsToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.pantsToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.pantsToolStripMenuItem.Text = "Pants";
//
// pantsToolStripMenuItem1
@ -996,7 +998,7 @@ partial class ClientinfoEditor
this.iconeToolStripMenuItem,
this.iconToolStripMenuItem});
this.extraToolStripMenuItem.Name = "extraToolStripMenuItem";
this.extraToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.extraToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.extraToolStripMenuItem.Text = "Extra";
//
// extraToolStripMenuItem1
@ -1044,23 +1046,23 @@ partial class ClientinfoEditor
// charappToolStripMenuItem
//
this.charappToolStripMenuItem.Name = "charappToolStripMenuItem";
this.charappToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.charappToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.charappToolStripMenuItem.Text = "%charapp%";
this.charappToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
// loadoutToolStripMenuItem
//
this.loadoutToolStripMenuItem.Name = "loadoutToolStripMenuItem";
this.loadoutToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.loadoutToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.loadoutToolStripMenuItem.Text = "%loadout%";
this.loadoutToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
// localizeonlineclothingToolStripMenuItem
// localizeContentProviderLoaderToolStripMenuItem
//
this.localizeonlineclothingToolStripMenuItem.Name = "localizeonlineclothingToolStripMenuItem";
this.localizeonlineclothingToolStripMenuItem.Size = new System.Drawing.Size(210, 22);
this.localizeonlineclothingToolStripMenuItem.Text = "%localizeonlineclothing%";
this.localizeonlineclothingToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
this.localizeContentProviderLoaderToolStripMenuItem.Name = "localizeContentProviderLoaderToolStripMenuItem";
this.localizeContentProviderLoaderToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.localizeContentProviderLoaderToolStripMenuItem.Text = "%localizeContentProviderLoader%";
this.localizeContentProviderLoaderToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
// nameToolStripMenuItem
//
@ -1086,14 +1088,14 @@ partial class ClientinfoEditor
// argsToolStripMenuItem
//
this.argsToolStripMenuItem.Name = "argsToolStripMenuItem";
this.argsToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.argsToolStripMenuItem.Size = new System.Drawing.Size(116, 22);
this.argsToolStripMenuItem.Text = "%args%";
this.argsToolStripMenuItem.Click += new System.EventHandler(this.variableToolStripMenuItem_Click);
//
// documentationToolStripMenuItem1
//
this.documentationToolStripMenuItem1.Name = "documentationToolStripMenuItem1";
this.documentationToolStripMenuItem1.Size = new System.Drawing.Size(180, 22);
this.documentationToolStripMenuItem1.Size = new System.Drawing.Size(157, 22);
this.documentationToolStripMenuItem1.Text = "Documentation";
this.documentationToolStripMenuItem1.Click += new System.EventHandler(this.documentationToolStripMenuItem_Click);
//
@ -1250,6 +1252,13 @@ partial class ClientinfoEditor
this.label3.TabIndex = 37;
this.label3.Text = "EXE Name:";
//
// jSONToolStripMenuItem
//
this.jSONToolStripMenuItem.Name = "jSONToolStripMenuItem";
this.jSONToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.jSONToolStripMenuItem.Text = "JSON";
this.jSONToolStripMenuItem.Click += new System.EventHandler(this.jSONToolStripMenuItem_Click);
//
// ClientinfoEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -1406,7 +1415,7 @@ partial class ClientinfoEditor
private System.Windows.Forms.ToolStripMenuItem tshirttexidlocalToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem shirttexidlocalToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem pantstexidlocalToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem localizeonlineclothingToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem localizeContentProviderLoaderToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem newguiToolStripMenuItem;
private System.Windows.Forms.CheckBox checkBox8;
private System.Windows.Forms.TextBox textBox2;
@ -1418,4 +1427,5 @@ partial class ClientinfoEditor
private System.Windows.Forms.ToolStripMenuItem userbxassetforgenerationToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem generatescriptToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem serverToolStripMenuItem2;
private System.Windows.Forms.ToolStripMenuItem jSONToolStripMenuItem;
}

View File

@ -345,7 +345,42 @@ public partial class ClientinfoEditor : Form
}
}
void TextBox4TextChanged(object sender, EventArgs e)
private void jSONToolStripMenuItem_Click(object sender, EventArgs e)
{
using (var sfd = new SaveFileDialog())
{
sfd.Filter = "Configuration File (*.json)|*.json";
sfd.FilterIndex = 1;
string filename = "clientinfo.son";
sfd.FileName = filename;
sfd.Title = "Save " + filename;
if (sfd.ShowDialog() == DialogResult.OK)
{
//WRITE
string section = "ClientInfo";
JSONFile json = new JSONFile(sfd.FileName, section);
json.JsonWriteValue(section, "UsesPlayerName", SelectedClientInfo.UsesPlayerName.ToString());
json.JsonWriteValue(section, "UsesID", SelectedClientInfo.UsesID.ToString());
json.JsonWriteValue(section, "Warning", SelectedClientInfo.Warning.ToString());
json.JsonWriteValue(section, "LegacyMode", SelectedClientInfo.LegacyMode.ToString());
json.JsonWriteValue(section, "ClientMD5", SelectedClientInfo.ClientMD5.ToString());
json.JsonWriteValue(section, "ScriptMD5", SelectedClientInfo.ScriptMD5.ToString());
json.JsonWriteValue(section, "Description", SelectedClientInfo.Description.ToString());
json.JsonWriteValue(section, "Locked", Locked.ToString());
json.JsonWriteValue(section, "Fix2007", SelectedClientInfo.Fix2007.ToString());
json.JsonWriteValue(section, "AlreadyHasSecurity", SelectedClientInfo.AlreadyHasSecurity.ToString());
json.JsonWriteValue(section, "ClientLoadOptions", ((int)SelectedClientInfo.ClientLoadOptions).ToString());
json.JsonWriteValue(section, "SeperateFolders", SelectedClientInfo.SeperateFolders.ToString());
json.JsonWriteValue(section, "UsesCustomClientEXEName", SelectedClientInfo.UsesCustomClientEXEName.ToString());
json.JsonWriteValue(section, "CustomClientEXEName", SelectedClientInfo.CustomClientEXEName.ToString());
json.JsonWriteValue(section, "CommandLineArgs", SelectedClientInfo.CommandLineArgs.ToString());
}
}
}
void TextBox4TextChanged(object sender, EventArgs e)
{
SelectedClientInfo.CommandLineArgs = textBox4.Text;
}
@ -583,7 +618,7 @@ public partial class ClientinfoEditor : Form
textBox4.Text = SelectedClientInfo.CommandLineArgs;
textBox5.Text = SelectedClientInfo.Warning;
}
#endregion
#endregion
}
#endregion

View File

@ -52,7 +52,7 @@
System.Windows.Forms.ListViewItem listViewItem12 = new System.Windows.Forms.ListViewItem(new string[] {
"ClientScript Tester"}, "ClientScriptTester.png", System.Drawing.Color.Empty, System.Drawing.Color.Empty, new System.Drawing.Font("Microsoft Sans Serif", 9.75F));
System.Windows.Forms.ListViewItem listViewItem13 = new System.Windows.Forms.ListViewItem(new string[] {
"XML Content Editor"}, 9, System.Drawing.Color.Empty, System.Drawing.Color.Empty, new System.Drawing.Font("Microsoft Sans Serif", 9.75F));
"JSON Content Editor"}, 9, System.Drawing.Color.Empty, System.Drawing.Color.Empty, new System.Drawing.Font("Microsoft Sans Serif", 9.75F));
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(NovetusSDK));
this.label1 = new System.Windows.Forms.Label();
this.pictureBox2 = new System.Windows.Forms.PictureBox();

View File

@ -125,7 +125,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACw
FgAAAk1TRnQBSQFMAgEBDQEAAVABAAFQAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
FgAAAk1TRnQBSQFMAgEBDQEAAVgBAAFYAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAAUADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@ -154,9 +154,9 @@
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wYAAd0BtAHdBf8B3QG0
Ad01AAG0AdYBtAHuAQcB+ALrAbQB1gG0NAAB/wHxAbQB8AH0AfMB6wJtAfABtAHxNAAB/wHvAvgC6wHt
AfcB6wH0MgABGwdSARwBkgHtAfcB6wH0MgABUgblAVkBUgH0AfgB7wHrAfQyAAFSAeUCWAM3AeUBUgH0
AfgB7wHrAfQyAAFSAeUBWAOgATcB5QFSAf8B7AHvAfgB9DIAAVIB5QVeAeUBUgH/AewB7wH4AfQyAAFS
Ad01AAG0AdYBtAG8AQcB7ALrAbQB1gG0NAAB/wHxAbQB8AH0AfMB6wJtAfABtAHxNAAB/wHvAuwC6wHt
AfcB6wH0MgABGwdSARwBkgHtAfcB6wH0MgABUgblAVkBUgH0AewB7wHrAfQyAAFSAeUCWAM3AeUBUgH0
AewB7wHrAfQyAAFSAeUBWAOgATcB5QFSAf8B7AHvAewB9DIAAVIB5QVeAeUBUgH/AewB7wHsAfQyAAFS
AeUFWAHlAVIB/wHtAe8B7AH0MgABUgHlAVgDoAFYAeUBUgH/Ae0B7wHsAfQyAAFSBOUCXgHlAVIB/wGS
Ae8B7AH0MgABeQdYAXkB8gHtAe8B7AH0MgABGwFSAVgBHAH3BZIC7wHsAfQzAAHzAZkBHAH3Ae8FBwHv
Ae0B/zQAAv8B9AHvAvcEkgG8Af9aAAH/AZgaAASzAa0BxwEABa0BvAS1CrQBvAUAA20CSQFtDAACcgsA

View File

@ -180,7 +180,7 @@
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MinimumSize = new System.Drawing.Size(340, 210);
this.Name = "XMLContentEditor";
this.Text = "XML Content Editor";
this.Text = "JSON Content Editor";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.XMLContentEditor_OnClosing);
this.XMLStrip.ResumeLayout(false);
this.XMLStrip.PerformLayout();

View File

@ -1,4 +1,5 @@
#region Usings
using Newtonsoft.Json;
using Novetus.Core;
using System;
using System.Collections.Generic;
@ -163,7 +164,7 @@ public partial class XMLContentEditor : Form
case XMLContentType.ContentProviders:
if (File.Exists(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName))
{
contentProviders = OnlineClothing.GetContentProviders();
contentProviders = ContentProviderLoader.GetContentProviders();
}
else
{
@ -280,40 +281,19 @@ public partial class XMLContentEditor : Form
}
}
string fileName = "";
//https://stackoverflow.com/questions/2129414/how-to-insert-xml-comments-in-xml-serialization
switch (ListType)
{
case XMLContentType.ContentProviders:
ContentProviders providers = new ContentProviders();
providers.Providers = providerList.ToArray();
XmlSerializer ser = new XmlSerializer(typeof(ContentProviders));
using (FileStream fs = new FileStream(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName, FileMode.Create))
{
XmlWriter writer = XmlWriter.Create(fs, new XmlWriterSettings { Indent = true });
writer.WriteStartDocument();
writer.WriteComment(GenerateComment("content providers"));
ser.Serialize(writer, providers);
writer.WriteEndDocument();
writer.Flush();
}
string jsonProviders = JsonConvert.SerializeObject(providerList, Newtonsoft.Json.Formatting.Indented);
File.WriteAllText(GlobalPaths.ConfigDir + "\\" + GlobalPaths.ContentProviderXMLName, jsonProviders);
fileName = GlobalPaths.ContentProviderXMLName;
break;
case XMLContentType.PartColors:
PartColors partColors = new PartColors();
partColors.ColorList = partColorList.ToArray();
XmlSerializer ser2 = new XmlSerializer(typeof(PartColors));
using (FileStream fs = new FileStream(GlobalPaths.ConfigDir + "\\" + GlobalPaths.PartColorXMLName, FileMode.Create))
{
XmlWriter writer = XmlWriter.Create(fs, new XmlWriterSettings { Indent = true });
writer.WriteStartDocument();
writer.WriteComment(GenerateComment("part colors"));
ser2.Serialize(writer, partColors);
writer.WriteEndDocument();
writer.Flush();
}
string jsonColors = JsonConvert.SerializeObject(providerList, Newtonsoft.Json.Formatting.Indented);
File.WriteAllText(GlobalPaths.ConfigDir + "\\" + GlobalPaths.PartColorXMLName, jsonColors);
fileName = GlobalPaths.PartColorXMLName;
break;
default:
break;
@ -322,19 +302,6 @@ public partial class XMLContentEditor : Form
providerList.Clear();
partColorList.Clear();
string fileName = "";
switch (ListType)
{
case XMLContentType.ContentProviders:
fileName = GlobalPaths.ContentProviderXMLName;
break;
case XMLContentType.PartColors:
fileName = GlobalPaths.PartColorXMLName;
break;
default:
break;
}
if (!noReload)
{
MessageBox.Show(fileName + " has been saved! The list will now reload.", "XML Content Editor - File Saved", MessageBoxButtons.OK, MessageBoxIcon.Information);
@ -345,12 +312,6 @@ public partial class XMLContentEditor : Form
MessageBox.Show(fileName + " has been saved!", "XML Content Editor - File Saved", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
//this is completely fucking dumb.
private string GenerateComment(string add)
{
return "Novetus reads through this file in order to grab " + add + " for the Avatar Customization.";
}
#endregion
}
#endregion

View File

@ -124,7 +124,7 @@
<data name="SearchButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAPZJREFUOE9jGJ5AHYgXAvE5IN4ExM5ATDTQBeKXQFwMxIZAHAXED6E0UWAzEKdB
wgAADsIBFShKgAAAAPZJREFUOE9jGJ5AHYgXAvE5IN4ExM5ATDTQBeKXQFwMxIZAHAXED6E0UWAzEKdB
mHCgD8TPgZgFzCMAQLaLQ5go4C4QK0OY+MFVIDaBMOGAg4GB8QMbF78QlI8bMDIyFACpw0AsCBaAOHs6
IyPTWyEFdX+IEH7AyMLM2A+k3wHxfiB+zMzE9FVSTHy/nLjAdnENgwiQIoJAlJtNVkhIKIhXWNpIXlRo
iayijo+SmMBEGVESDIGBadk2nHJSoptltUx9FEUFJnKxcTwQtkiWh0oTB2CGsLGw72JkZv3DqRNKmgEg

View File

@ -289,7 +289,7 @@ The ROBLOX Corporation does not support or endorse the creation of Novetus.
Bitl Development Studio is not affiliated with the ROBLOX Corporation or its subsidiaries.
Bitl Development Studio does not own the majority of the places or items included with Novetus.
Novetus is not associated with Novetus Engineering LLC.
This item is not authorized for posting on Steam, except under Bitl Development Studio or the ROBLOX Corporation.
This item is not authorized for posting on Steam.
Novetus uses the majority of the Whimsee's Map Pack in the "full" version. Credits go to Whimsee and many other people for making that pack possible.
Thank you to everyone who has contributed a map, item, or client including cole and many other people.
LUA scripts were used to build a client that can connect to LAN and the Internet.

View File

@ -1,6 +1,11 @@
EDGE Snapshot v24.8788.21050.1
EDGE Snapshot v24.8790.38152.1
Enhancements:
- Added a revamped Novetus Dependency Installer based off of NSIS that streamlines the installation of Novetus' dependencies.
- Replaced most INI and XML files with JSON files.
Fixes:
- Fixed a bug where selecting an Extra item in the Extras panel would be slightly broken when "Show Hats" is enabled.
- Fixed buggy item description behavior.
---------------------------------------------------------------------------
EDGE Snapshot v24.8786.38141.3
Fixes:

View File

@ -0,0 +1,69 @@
; Script generated by the HM NIS Edit Script Wizard.
; HM NIS Edit Wizard helper defines
!define PRODUCT_NAME "Novetus Dependencies"
!define PRODUCT_VERSION "1.0"
!define PRODUCT_PUBLISHER "Bitl Development Studio"
; MUI 1.67 compatible ------
!include "MUI.nsh"
; MUI Settings
!define MUI_ABORTWARNING
!define MUI_ICON "G:\Projects\GitHub\Novetus\Novetus_src\Graphics\NovetusIcon.ico"
!define MUI_WELCOMEFINISHPAGE_BITMAP "G:\Projects\GitHub\Novetus\Novetus_src\Graphics\Novetus_Installer_WizardImage.bmp"
; Welcome page
!insertmacro MUI_PAGE_WELCOME
; Components page
!insertmacro MUI_PAGE_COMPONENTS
; Instfiles page
!insertmacro MUI_PAGE_INSTFILES
; MediaPlayer
!define MUI_PAGE_HEADER_TEXT "Windows Media Player"
!define MUI_PAGE_HEADER_SUBTEXT "If you don't have Windows Media Player binaries installed, please follow these directions."
!define MUI_LICENSEPAGE_TEXT_TOP "Instructions:"
!define MUI_LICENSEPAGE_TEXT_BOTTOM "Please make sure you have this dependency installed before continuing."
!define MUI_LICENSEPAGE_BUTTON "Next >"
!insertmacro MUI_PAGE_LICENSE "WMP_instructions.txt"
; Finish page
!insertmacro MUI_PAGE_FINISH
; Language files
!insertmacro MUI_LANGUAGE "English"
; MUI end ------
Name "${PRODUCT_NAME}"
OutFile "Novetus_Dependency_Installer.exe"
ShowInstDetails show
RequestExecutionLevel user
Section ".NET Framework 4.5.1" SEC01
DetailPrint "Installing .NET Framework 4.5.1..."
ExecWait '"$EXEDIR\_redist\NET Framework\NDP451-KB2858728-x86-x64-AllOS-ENU.exe" /q /norestart'
SectionEnd
Section ".NET Framework 2.0" SEC02
DetailPrint "Installing .NET Framework 2.0..."
ExecWait '"$EXEDIR\_redist\NET Framework\NetFx20SP2_x86.exe" /q'
ExecWait '"$EXEDIR\_redist\NET Framework\NetFx20SP2_x64.exe" /q'
SectionEnd
Section "Visual C++ 2005 Redistributables" SEC03
DetailPrint "Installing Visual C++ 2005 Redistributables..."
ExecWait '"$EXEDIR\_redist\Visual C++ Redistributables\vcredist2005_x86.exe" /q /r:n'
SectionEnd
Section "Visual C++ 2008 Redistributables" SEC04
DetailPrint "Installing Visual C++ 2008 Redistributables..."
ExecWait '"$EXEDIR\_redist\Visual C++ Redistributables\vcredist2008_x86.exe" /q /norestart'
SectionEnd
; Section descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "Used for running the Novetus Launcher."
!insertmacro MUI_DESCRIPTION_TEXT ${SEC02} "Used for running the Novetus SDK's Script Generator application."
!insertmacro MUI_DESCRIPTION_TEXT ${SEC03} "Used for running 2007 clients."
!insertmacro MUI_DESCRIPTION_TEXT ${SEC04} "Used for running 2008 clients and above."
!insertmacro MUI_FUNCTION_DESCRIPTION_END

View File

@ -0,0 +1,3 @@
Please install the Windows Media Player through Windows' "Add a feature" utility.
Windows 7+: Go to the Control Panel, Programs and Features, go to "Turn Windows features on and off", and enable Windows Media Player in Media Features.
Windows 10+: Go to the Settings app, Apps, Optional Features, then search "Windows Media Player", then select it and press Install.

View File

@ -107,6 +107,8 @@ del /s /q config\saved.txt
del /s /q config\ReShade.ini
del /s /q config\config.ini
del /s /q config\config_customization.ini
del /s /q config\config.json
del /s /q config\config_customization.json
del /s /q config\initialfilelist.txt
del /s /q config\BadgeDatabase.ini

View File

@ -108,8 +108,8 @@ if not exist "%launcherscriptdir%" mkdir "%launcherscriptdir%"
XCOPY "%cd%\Novetus\config\launcherdata\3DView.rbxl" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\launcherdata\Appreciation.rbxl" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\ContentProviders.xml" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\PartColors.xml" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\ContentProviders.json" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\PartColors.json" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\splashes.txt" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\splashes-special.txt" "%launcherscriptdir%" /y
XCOPY "%cd%\Novetus\config\names-special.txt" "%launcherscriptdir%" /y
@ -149,8 +149,8 @@ XCOPY "%cd%\dev_menu.bat" "%scriptsdir%\batch" /y
XCOPY "%cd%\Novetus\clean_junk.bat" "%scriptsdir%\batch" /y
XCOPY "%cd%\github_sync.bat" "%scriptsdir%\batch" /y
XCOPY "%cd%\assetfixer_gauntlet.lua" "%scriptsdir%" /y
XCOPY "%cd%\NovetusInstaller.nsi" "%scriptsdir%" /y
XCOPY "%cd%\Novetus\Novetus_dependency_installer.bat" "%scriptsdir%\batch" /y
XCOPY "%cd%\NovetusDependencyInstaller.nsi" "%scriptsdir%" /y
XCOPY "%cd%\WMP_instructions.txt" "%scriptsdir%" /y
XCOPY "%cd%\Novetus\misc\documentation.txt" "%dest%" /y
XCOPY "%cd%\Novetus\misc\consolehelp.txt" "%dest%" /y
XCOPY /c "%cd%\Novetus\.itch.toml" "%dest%" /y

View File

@ -0,0 +1,22 @@
[
{
"Name": "Roblox (Asset Delivery, Incompatible w/ older clients)",
"URL": "https://assetdelivery.roblox.com/v1/asset/?id=",
"Icon": "roblox.png"
},
{
"Name": "Roblox (Web Proxy Required)",
"URL": "http://www.roblox.com/asset?id=",
"Icon": "roblox.png"
},
{
"Name": "Imgur (HTTP)",
"URL": "http://i.imgur.com/",
"Icon": "imgur.png"
},
{
"Name": "Imgur (HTTPS, Incompatible w/ older clients)",
"URL": "https://i.imgur.com/",
"Icon": "imgur.png"
}
]

View File

@ -0,0 +1,697 @@
[
{
"ColorName": "[Classic Colors]White",
"ColorID": "1",
"ColorRGB": "[242, 243, 243]"
},
{
"ColorName": "[Classic Colors]Light stone grey",
"ColorID": "208",
"ColorRGB": "[229, 228, 223]"
},
{
"ColorName": "[Classic Colors]Medium stone grey",
"ColorID": "194",
"ColorRGB": "[163, 162, 165]"
},
{
"ColorName": "[Classic Colors]Dark stone grey",
"ColorID": "199",
"ColorRGB": "[99, 95, 98]"
},
{
"ColorName": "[Classic Colors]Black",
"ColorID": "26",
"ColorRGB": "[27, 42, 53]"
},
{
"ColorName": "[Classic Colors]Bright red",
"ColorID": "21",
"ColorRGB": "[196, 40, 28]"
},
{
"ColorName": "[Classic Colors]Bright yellow",
"ColorID": "24",
"ColorRGB": "[245, 205, 48]"
},
{
"ColorName": "[Classic Colors]Cool yellow",
"ColorID": "226",
"ColorRGB": "[253, 234, 141]"
},
{
"ColorName": "[Classic Colors]Bright blue",
"ColorID": "23",
"ColorRGB": "[13, 105, 172]"
},
{
"ColorName": "[Classic Colors]Bright bluish green",
"ColorID": "107",
"ColorRGB": "[0, 143, 156]"
},
{
"ColorName": "[Classic Colors]Medium blue",
"ColorID": "102",
"ColorRGB": "[110, 153, 202]"
},
{
"ColorName": "[Classic Colors]Pastel Blue",
"ColorID": "11",
"ColorRGB": "[128, 187, 219]"
},
{
"ColorName": "[Classic Colors]Light blue",
"ColorID": "45",
"ColorRGB": "[180, 210, 228]"
},
{
"ColorName": "[Classic Colors]Sand blue",
"ColorID": "135",
"ColorRGB": "[116, 134, 157]"
},
{
"ColorName": "[Classic Colors]Bright orange",
"ColorID": "106",
"ColorRGB": "[206, 125, 63]"
},
{
"ColorName": "[Classic Colors]Br. yellowish orange",
"ColorID": "105",
"ColorRGB": "[225, 154, 66]"
},
{
"ColorName": "[Classic Colors]Earth green",
"ColorID": "141",
"ColorRGB": "[36, 65, 43]"
},
{
"ColorName": "[Classic Colors]Dark green",
"ColorID": "28",
"ColorRGB": "[40, 127, 71]"
},
{
"ColorName": "[Classic Colors]Bright green",
"ColorID": "37",
"ColorRGB": "[75, 151, 75]"
},
{
"ColorName": "[Classic Colors]Br. yellowish green",
"ColorID": "119",
"ColorRGB": "[164, 189, 71]"
},
{
"ColorName": "[Classic Colors]Medium green",
"ColorID": "29",
"ColorRGB": "[161, 196, 140]"
},
{
"ColorName": "[Classic Colors]Sand green",
"ColorID": "151",
"ColorRGB": "[120, 144, 130]"
},
{
"ColorName": "[Classic Colors]Dark orange",
"ColorID": "38",
"ColorRGB": "[160, 95, 53]"
},
{
"ColorName": "[Classic Colors]Reddish brown",
"ColorID": "192",
"ColorRGB": "[105, 64, 40]"
},
{
"ColorName": "[Classic Colors]Bright violet",
"ColorID": "104",
"ColorRGB": "[107, 50, 124]"
},
{
"ColorName": "[Classic Colors]Light reddish violet",
"ColorID": "9",
"ColorRGB": "[232, 186, 200]"
},
{
"ColorName": "[Classic Colors]Medium red",
"ColorID": "101",
"ColorRGB": "[218, 134, 122]"
},
{
"ColorName": "[Classic Colors]Brick yellow",
"ColorID": "5",
"ColorRGB": "[215, 197, 154]"
},
{
"ColorName": "[Classic Colors]Sand red",
"ColorID": "153",
"ColorRGB": "[149, 121, 119]"
},
{
"ColorName": "[Classic Colors]Brown",
"ColorID": "217",
"ColorRGB": "[124, 92, 70]"
},
{
"ColorName": "[Classic Colors]Nougat",
"ColorID": "18",
"ColorRGB": "[204, 142, 105]"
},
{
"ColorName": "[2009+ Colors]Institutional white",
"ColorID": "1001",
"ColorRGB": "[248, 248, 248]"
},
{
"ColorName": "[2009+ Colors]Mid gray",
"ColorID": "1002",
"ColorRGB": "[205, 205, 205]"
},
{
"ColorName": "[2009+ Colors]Really black",
"ColorID": "1003",
"ColorRGB": "[17, 17, 17]"
},
{
"ColorName": "[2009+ Colors]Grime",
"ColorID": "1022",
"ColorRGB": "[127, 142, 100]"
},
{
"ColorName": "[2009+ Colors]Lavender",
"ColorID": "1023",
"ColorRGB": "[140, 91, 159]"
},
{
"ColorName": "[2009+ Colors]Neon orange",
"ColorID": "1005",
"ColorRGB": "[216, 148, 13]"
},
{
"ColorName": "[2009+ Colors]Teal",
"ColorID": "1018",
"ColorRGB": "[18, 238, 212]"
},
{
"ColorName": "[2009+ Colors]Pastel brown",
"ColorID": "1030",
"ColorRGB": "[255, 204, 153]"
},
{
"ColorName": "[2009+ Colors]Pastel yellow",
"ColorID": "1029",
"ColorRGB": "[255, 255, 204]"
},
{
"ColorName": "[2009+ Colors]Pastel orange",
"ColorID": "1025",
"ColorRGB": "[255, 201, 201]"
},
{
"ColorName": "[2009+ Colors]Pink",
"ColorID": "1016",
"ColorRGB": "[255, 102, 204]"
},
{
"ColorName": "[2009+ Colors]Pastel violet",
"ColorID": "1026",
"ColorRGB": "[177, 167, 255]"
},
{
"ColorName": "[2009+ Colors]Pastel light blue",
"ColorID": "1024",
"ColorRGB": "[175, 221, 255]"
},
{
"ColorName": "[2009+ Colors]Pastel blue-green",
"ColorID": "1027",
"ColorRGB": "[159, 243, 233]"
},
{
"ColorName": "[2009+ Colors]Pastel green",
"ColorID": "1028",
"ColorRGB": "[204, 255, 204]"
},
{
"ColorName": "[2009+ Colors]Olive",
"ColorID": "1008",
"ColorRGB": "[193, 190, 66]"
},
{
"ColorName": "[2009+ Colors]New Yeller",
"ColorID": "1009",
"ColorRGB": "[255, 255, 0]"
},
{
"ColorName": "[2009+ Colors]Really red",
"ColorID": "1004",
"ColorRGB": "[255, 0, 0]"
},
{
"ColorName": "[2009+ Colors]Hot pink",
"ColorID": "1032",
"ColorRGB": "[255, 0, 191]"
},
{
"ColorName": "[2009+ Colors]Really blue",
"ColorID": "1010",
"ColorRGB": "[0, 0, 255]"
},
{
"ColorName": "[2009+ Colors]Toothpaste",
"ColorID": "1019",
"ColorRGB": "[0, 255, 255]"
},
{
"ColorName": "[2009+ Colors]Lime green",
"ColorID": "1020",
"ColorRGB": "[0, 255, 0]"
},
{
"ColorName": "[2009+ Colors]Royal purple",
"ColorID": "1031",
"ColorRGB": "[98, 37, 209]"
},
{
"ColorName": "[2009+ Colors]Alder",
"ColorID": "1006",
"ColorRGB": "[180, 128, 255]"
},
{
"ColorName": "[2009+ Colors]Cyan",
"ColorID": "1013",
"ColorRGB": "[4, 175, 236]"
},
{
"ColorName": "[2009+ Colors]Camo",
"ColorID": "1021",
"ColorRGB": "[58, 125, 21]"
},
{
"ColorName": "[2009+ Colors]CGA brown",
"ColorID": "1014",
"ColorRGB": "[170, 85, 0]"
},
{
"ColorName": "[2009+ Colors]Dusty Rose",
"ColorID": "1007",
"ColorRGB": "[163, 75, 75]"
},
{
"ColorName": "[2009+ Colors]Magenta",
"ColorID": "1015",
"ColorRGB": "[170, 0, 170]"
},
{
"ColorName": "[2009+ Colors]Deep blue",
"ColorID": "1012",
"ColorRGB": "[33, 84, 185]"
},
{
"ColorName": "[2009+ Colors]Navy blue",
"ColorID": "1011",
"ColorRGB": "[0, 32, 96]"
},
{
"ColorName": "[Unused Colors]Light orange",
"ColorID": "125",
"ColorRGB": "[234, 184, 146]"
},
{
"ColorName": "[Unused Colors]Med. reddish violet",
"ColorID": "22",
"ColorRGB": "[196, 112, 160]"
},
{
"ColorName": "[Unused Colors]Dark nougat",
"ColorID": "128",
"ColorRGB": "[174, 122, 89]"
},
{
"ColorName": "[Unused Colors]Grey",
"ColorID": "2",
"ColorRGB": "[161, 165, 162]"
},
{
"ColorName": "[Unused Colors]Light yellow",
"ColorID": "3",
"ColorRGB": "[249, 233, 153]"
},
{
"ColorName": "[Unused Colors]Light green (Mint)",
"ColorID": "6",
"ColorRGB": "[194, 218, 184]"
},
{
"ColorName": "[Unused Colors]Light orange brown",
"ColorID": "12",
"ColorRGB": "[203, 132, 66]"
},
{
"ColorName": "[Unused Colors]Earth orange",
"ColorID": "25",
"ColorRGB": "[98, 71, 50]"
},
{
"ColorName": "[Unused Colors]Dark grey",
"ColorID": "27",
"ColorRGB": "[109, 110, 108]"
},
{
"ColorName": "[Unused Colors]Lig. Yellowich orange",
"ColorID": "36",
"ColorRGB": "[243, 207, 155]"
},
{
"ColorName": "[Unused Colors]Light bluish violet",
"ColorID": "39",
"ColorRGB": "[193, 202, 222]"
},
{
"ColorName": "[Unused Colors]Transparent",
"ColorID": "40",
"ColorRGB": "[236, 236, 236]"
},
{
"ColorName": "[Unused Colors]Tr. Red",
"ColorID": "41",
"ColorRGB": "[205, 84, 75]"
},
{
"ColorName": "[Unused Colors]Tr. Lg blue",
"ColorID": "42",
"ColorRGB": "[193, 223, 240]"
},
{
"ColorName": "[Unused Colors]Tr. Blue",
"ColorID": "43",
"ColorRGB": "[123, 182, 232]"
},
{
"ColorName": "[Unused Colors]Tr. Yellow",
"ColorID": "44",
"ColorRGB": "[247, 241, 141]"
},
{
"ColorName": "[Unused Colors]Tr. Flu. Reddish orange",
"ColorID": "47",
"ColorRGB": "[217, 133, 108]"
},
{
"ColorName": "[Unused Colors]Tr. Green",
"ColorID": "48",
"ColorRGB": "[132, 182, 141]"
},
{
"ColorName": "[Unused Colors]Tr. Flu. Green",
"ColorID": "49",
"ColorRGB": "[248, 241, 132]"
},
{
"ColorName": "[Unused Colors]Phosph. White",
"ColorID": "50",
"ColorRGB": "[236, 232, 222]"
},
{
"ColorName": "[Unused Colors]Light red",
"ColorID": "100",
"ColorRGB": "[238, 196, 182]"
},
{
"ColorName": "[Unused Colors]Light grey",
"ColorID": "103",
"ColorRGB": "[199, 193, 183]"
},
{
"ColorName": "[Unused Colors]Earth yellow",
"ColorID": "108",
"ColorRGB": "[104, 92, 67]"
},
{
"ColorName": "[Unused Colors]Bright bluish violet",
"ColorID": "110",
"ColorRGB": "[67, 84, 147]"
},
{
"ColorName": "[Unused Colors]Tr. Brown",
"ColorID": "111",
"ColorRGB": "[191, 183, 177]"
},
{
"ColorName": "[Unused Colors]Medium bluish violet",
"ColorID": "112",
"ColorRGB": "[104, 116, 172]"
},
{
"ColorName": "[Unused Colors]Tr. Medi. reddish violet",
"ColorID": "113",
"ColorRGB": "[229, 173, 200]"
},
{
"ColorName": "[Unused Colors]Med. yellowish green",
"ColorID": "115",
"ColorRGB": "[199, 210, 60]"
},
{
"ColorName": "[Unused Colors]Med. bluish green",
"ColorID": "116",
"ColorRGB": "[85, 165, 175]"
},
{
"ColorName": "[Unused Colors]Light bluish green",
"ColorID": "118",
"ColorRGB": "[183, 215, 213]"
},
{
"ColorName": "[Unused Colors]Lig. yellowish green",
"ColorID": "120",
"ColorRGB": "[217, 228, 167]"
},
{
"ColorName": "[Unused Colors]Med. yellowish orange",
"ColorID": "121",
"ColorRGB": "[231, 172, 88]"
},
{
"ColorName": "[Unused Colors]Br. reddish orange",
"ColorID": "123",
"ColorRGB": "[211, 111, 76]"
},
{
"ColorName": "[Unused Colors]Bright reddish violet",
"ColorID": "124",
"ColorRGB": "[146, 57, 120]"
},
{
"ColorName": "[Unused Colors]Tr. Bright bluish violet",
"ColorID": "126",
"ColorRGB": "[165, 165, 203]"
},
{
"ColorName": "[Unused Colors]Gold",
"ColorID": "127",
"ColorRGB": "[220, 188, 129]"
},
{
"ColorName": "[Unused Colors]Silver",
"ColorID": "131",
"ColorRGB": "[156, 163, 168]"
},
{
"ColorName": "[Unused Colors]Neon orange (2006)",
"ColorID": "133",
"ColorRGB": "[213, 115, 61]"
},
{
"ColorName": "[Unused Colors]Neon green",
"ColorID": "134",
"ColorRGB": "[216, 221, 86]"
},
{
"ColorName": "[Unused Colors]Sand violet",
"ColorID": "136",
"ColorRGB": "[135, 124, 144]"
},
{
"ColorName": "[Unused Colors]Medium orange",
"ColorID": "137",
"ColorRGB": "[224, 152, 100]"
},
{
"ColorName": "[Unused Colors]Sand yellow",
"ColorID": "138",
"ColorRGB": "[149, 138, 115]"
},
{
"ColorName": "[Unused Colors]Earth blue",
"ColorID": "140",
"ColorRGB": "[32, 58, 86]"
},
{
"ColorName": "[Unused Colors]Tr. Flu. Blue",
"ColorID": "143",
"ColorRGB": "[207, 226, 247]"
},
{
"ColorName": "[Unused Colors]Sand blue metallic",
"ColorID": "145",
"ColorRGB": "[121, 136, 161]"
},
{
"ColorName": "[Unused Colors]Sand violet metallic",
"ColorID": "146",
"ColorRGB": "[149, 142, 163]"
},
{
"ColorName": "[Unused Colors]Dark red",
"ColorID": "154",
"ColorRGB": "[123, 46, 47]"
},
{
"ColorName": "[Unused Colors]Tr. Flu. Yellow",
"ColorID": "157",
"ColorRGB": "[255, 246, 123]"
},
{
"ColorName": "[Unused Colors]Tr. Flu. Red",
"ColorID": "158",
"ColorRGB": "[225, 164, 194]"
},
{
"ColorName": "[Unused Colors]Gun metallic",
"ColorID": "168",
"ColorRGB": "[117, 108, 98]"
},
{
"ColorName": "[Unused Colors]Red flip/flop",
"ColorID": "176",
"ColorRGB": "[151, 105, 91]"
},
{
"ColorName": "[Unused Colors]Yellow flip/flop",
"ColorID": "178",
"ColorRGB": "[180, 132, 85]"
},
{
"ColorName": "[Unused Colors]Silver flip/flop",
"ColorID": "179",
"ColorRGB": "[137, 135, 136]"
},
{
"ColorName": "[Unused Colors]Curry",
"ColorID": "180",
"ColorRGB": "[215, 169, 75]"
},
{
"ColorName": "[Unused Colors]Fire Yellow",
"ColorID": "190",
"ColorRGB": "[249, 214, 46]"
},
{
"ColorName": "[Unused Colors]Flame yellowish orange",
"ColorID": "191",
"ColorRGB": "[232, 171, 45]"
},
{
"ColorName": "[Unused Colors]Royal blue",
"ColorID": "195",
"ColorRGB": "[70, 103, 164]"
},
{
"ColorName": "[Unused Colors]Dark Royal blue",
"ColorID": "196",
"ColorRGB": "[35, 71, 139]"
},
{
"ColorName": "[Unused Colors]Bright reddish lilac",
"ColorID": "198",
"ColorRGB": "[142, 66, 133]"
},
{
"ColorName": "[Unused Colors]Lemon metalic",
"ColorID": "200",
"ColorRGB": "[130, 138, 93]"
},
{
"ColorName": "[Unused Colors]Dark Curry",
"ColorID": "209",
"ColorRGB": "[176, 142, 68]"
},
{
"ColorName": "[Unused Colors]Faded green",
"ColorID": "210",
"ColorRGB": "[112, 149, 120]"
},
{
"ColorName": "[Unused Colors]Turquoise",
"ColorID": "211",
"ColorRGB": "[121, 181, 181]"
},
{
"ColorName": "[Unused Colors]Light Royal blue",
"ColorID": "212",
"ColorRGB": "[159, 195, 233]"
},
{
"ColorName": "[Unused Colors]Medium Royal blue",
"ColorID": "213",
"ColorRGB": "[108, 129, 183]"
},
{
"ColorName": "[Unused Colors]Rust",
"ColorID": "216",
"ColorRGB": "[144, 76, 42]"
},
{
"ColorName": "[Unused Colors]Reddish lilac",
"ColorID": "218",
"ColorRGB": "[150, 112, 159]"
},
{
"ColorName": "[Unused Colors]Lilac",
"ColorID": "219",
"ColorRGB": "[107, 98, 155]"
},
{
"ColorName": "[Unused Colors]Light lilac",
"ColorID": "220",
"ColorRGB": "[167, 169, 206]"
},
{
"ColorName": "[Unused Colors]Bright purple",
"ColorID": "221",
"ColorRGB": "[205, 98, 152]"
},
{
"ColorName": "[Unused Colors]Light purple",
"ColorID": "222",
"ColorRGB": "[228, 173, 200]"
},
{
"ColorName": "[Unused Colors]Light pink",
"ColorID": "223",
"ColorRGB": "[220, 144, 149]"
},
{
"ColorName": "[Unused Colors]Light brick yellow",
"ColorID": "224",
"ColorRGB": "[240, 213, 160]"
},
{
"ColorName": "[Unused Colors]Warm yellowish orange",
"ColorID": "225",
"ColorRGB": "[235, 184, 127]"
},
{
"ColorName": "[Unused Colors]Dove blue",
"ColorID": "232",
"ColorRGB": "[125, 187, 221]"
},
{
"ColorName": "[Unused Colors]Medium lilac",
"ColorID": "268",
"ColorRGB": "[52, 43, 117]"
},
{
"ColorName": "[Unused Colors]Deep orange (2009+)",
"ColorID": "1005",
"ColorRGB": "[255, 176, 0]"
}
]