private void DupUpgradesFile(string savePath) { ConsoleHandler.append("Duplicating base tower's UpgradeDefinitions"); string baseTowerUpgradeDef = CurrentProjectVariables.PathToProjectFiles + "\\Assets\\JSON\\UpgradeDefinitions\\" + BaseTowerName_NoExt + ".upgrades"; if (!File.Exists(baseTowerUpgradeDef)) { ConsoleHandler.append("The Base Tower's UpgradeDefinitions wasn't found. Creating a new one instead."); MakeNewUpgradesFile(savePath); return; } if (!JSON_Reader.IsValidJson(File.ReadAllText(baseTowerUpgradeDef))) { ConsoleHandler.append("The Base Tower's UpgradeDefinitions has invalid JSON. Creating a new one instead."); MakeNewUpgradesFile(savePath); return; } UpgradesFile upgrades = UpgradesFile.FromJson(baseTowerUpgradeDef); if (upgrades.Upgrades == null) { ConsoleHandler.append("The Base Tower's UpgradeDefinitions is empty. Creating a new one instead."); MakeNewUpgradesFile(savePath); return; } SaveUpgradesFile(upgrades, savePath); }
private void SaveUpgradesFile(UpgradesFile upgrades, string savePath) { ConsoleHandler.append("Saving UpgradeDefinition file"); string text = upgrades.ToJson(); StreamWriter serialize = new StreamWriter(savePath, false); serialize.Write(text); serialize.Close(); }
public void LoadNetTuning(byte[] data) { Editable = false; using (var mem = new MemoryStream(data)) { using (var reader = new BinaryReader(mem)) { ActiveFile = new UpgradesFile(); ActiveFile.Load(reader); } } PrepareRuntime(false); }
public void LoadJSONTuning() { FileUpgrades.Clear(); try { var json = File.ReadAllText("Content/upgrades.json"); ActiveFile = JsonConvert.DeserializeObject <UpgradesFile>(json); Editable = true; } catch { ActiveFile = null; } PrepareRuntime(true); }
private void MakeNewUpgradesFile(string savePath) { ConsoleHandler.append("Creating new UpgradeDefinitions file"); UpgradesFile upgrades = new UpgradesFile(); upgrades.Upgrades = new Upgrade[8]; for (int i = 0; i < upgrades.Upgrades.Length; i++) { upgrades.Upgrades[i] = new Upgrade(); upgrades.Upgrades[i].Name = ""; upgrades.Upgrades[i].TowerUpgrade = new TowerUpgrade(); upgrades.Upgrades[i].WeaponUpgrade = new WeaponUpgrade(); upgrades.Upgrades[i].WeaponUpgrade.TaskUpgrade = new TaskUpgrade[0]; } SaveUpgradesFile(upgrades, savePath); }
public static string ToJson(this UpgradesFile self) => JsonConvert.SerializeObject(self, BTDToolbox.Classes.JSON_Classes.Converter.Settings);