private void CleanUp() { if (this.gameProcess != null) { this.gameProcess.Dispose(); } if (enableDiscordRP) { DiscordRPC.Shutdown(); } if (keeprunning) { if (swapFileResult != null) { if (swapfile_swapped) { if (File.Exists(swapFileResult.BackupFilename)) { if (File.Exists(swapFileResult.FilenameToSwap)) { File.Delete(swapFileResult.FilenameToSwap); } if (File.Exists(swapFileResult.FilenameToBeSwapped)) { File.Move(swapFileResult.FilenameToBeSwapped, swapFileResult.FilenameToSwap); } File.Move(swapFileResult.BackupFilename, swapFileResult.FilenameToBeSwapped); } } } if (optimizeLoading) { if (Directory.Exists(optLoading_to) && (filelist != null)) { string tmpstrFrom, tmpstrTo; for (int i = 0; i < filelist.Count; i++) { tmpstrFrom = Path.Combine(optLoading_from, filelist[i]); tmpstrTo = Path.Combine(optLoading_to, filelist[i] + ".bak"); if (File.Exists(tmpstrTo)) { if (File.Exists(tmpstrFrom)) { File.Delete(tmpstrFrom); } File.Move(tmpstrTo, tmpstrFrom); } } } } } if (config != null) { config.Save(); } if (this.MainForm != null) { this.MainForm.Dispose(); } // System.Environment.ExitCode = code; // System.Windows.Forms.Application.Exit(); }
private void UpdateRichPresence(bool force) { var rpData = new Leayal.Ini.IniFile(Path.Combine(AppInfo.EntryAssemblyInfo.DirectoryPath, "Discord-RPC-Payload.ini")); if (rpData.IsEmpty) { rpData.SetValue("DiscordRichPresence", "State", "Playing Solo"); rpData.SetValue("DiscordRichPresence", "Details", "Leveling up class"); rpData.SetValue("DiscordRichPresence", "LargeImageKey", "Map-Name-Key"); rpData.SetValue("DiscordRichPresence", "LargeImageText", "Map's name"); rpData.SetValue("DiscordRichPresence", "SmallImageKey", "char-icon-key"); rpData.SetValue("DiscordRichPresence", "SmallImageText", "CharacterName"); rpData.SetValue("DiscordRichPresence", "PartySizeMax", "0"); rpData.SetValue("DiscordRichPresence", "PartySizeCurrent", "0"); rpData.Save(Encoding.UTF8); } if (!enableDiscordRP) { rpData.Close(); return; } this.cacheRP.state = rpData.GetValue("DiscordRichPresence", "State", "Playing Solo"); this.cacheRP.details = rpData.GetValue("DiscordRichPresence", "Details", "Leveling up class"); this.cacheRP.largeImageKey = rpData.GetValue("DiscordRichPresence", "LargeImageKey", "Map-Name-Key"); this.cacheRP.largeImageText = rpData.GetValue("DiscordRichPresence", "LargeImageText", "Map's name"); this.cacheRP.smallImageKey = rpData.GetValue("DiscordRichPresence", "SmallImageKey", "char-icon-key"); this.cacheRP.smallImageText = rpData.GetValue("DiscordRichPresence", "SmallImageText", "CharacterName"); string inString = rpData.GetValue("DiscordRichPresence", "PartySizeMax", "4"); int outNumber; if (int.TryParse(inString, out outNumber)) { this.cacheRP.partyMax = outNumber; } else { this.cacheRP.partyMax = 0; } inString = rpData.GetValue("DiscordRichPresence", "PartySizeCurrent", "1"); if (int.TryParse(inString, out outNumber)) { this.cacheRP.partySize = outNumber; } else { this.cacheRP.partySize = 0; } rpData.Close(); DiscordRPC.UpdatePresence(ref this.cacheRP); this.GetWrapperForm(); if (!force) { this.MainForm.Hide(); } }