public void Save(string file) { QuestLoader.mkDir(saveLocation()); // Write to disk using (BinaryWriter writer = new BinaryWriter(File.Open(saveLocation() + "/" + file, FileMode.Create))) { writer.Write(download.bytes); writer.Close(); } string section = file.Substring(0, file.Length - ".valkyrie".Length); int localVersion, remoteVersion; int.TryParse(localManifest.Get(section, "version"), out localVersion); int.TryParse(remoteManifest.Get(section, "version"), out remoteVersion); localManifest.Remove(section); localManifest.Add(section, remoteManifest.Get(section)); if (File.Exists(saveLocation() + "/manifest.ini")) { File.Delete(saveLocation() + "/manifest.ini"); } File.WriteAllText(saveLocation() + "/manifest.ini", localManifest.ToString()); Destroyer.Dialog(); DrawList(); }
public void SetQuestAvailability(string key, bool isAvailable) { // update list of local quest IniData localManifest = IniRead.ReadFromString(""); string saveLocation = ContentData.DownloadPath(); if (File.Exists(saveLocation + "/manifest.ini")) { localManifest = IniRead.ReadFromIni(saveLocation + "/manifest.ini"); } if (isAvailable) { IniData downloaded_quest = IniRead.ReadFromString(remote_quests_data[key].ToString()); localManifest.Remove(key); localManifest.Add(key, downloaded_quest.data["Quest"]); } else { if (localManifest.Get(key) != null) { localManifest.Remove(key); } // we need to delete /temp and reload list UnloadLocalQuests(); } if (File.Exists(saveLocation + "/manifest.ini")) { File.Delete(saveLocation + "/manifest.ini"); } File.WriteAllText(saveLocation + "/manifest.ini", localManifest.ToString()); // update status quest remote_quests_data[key].downloaded = isAvailable; remote_quests_data[key].update_available = false; }
public void RemovePack(string gameType, string pack) { data.Remove(gameType + "Packs", pack); LocalizationRead.SetGroupTranslationLanguage(pack, ""); Save(); }