private void DoneButton_OnClick(object sender, RoutedEventArgs e) { // Save settings Settings.Instance.DisableTelemetry = !TelemetryCheckBox.IsChecked ?? false; Settings.Instance.UpdateAssembliesOnStart = UpdateAssembliesCheckBox.IsChecked ?? true; Settings.Instance.EnableInjection = InjectCheckBox.IsChecked ?? true; Settings.Instance.DisableAutomaticUpdates = DisableAutomaticUpdatesCheckBox.IsChecked ?? false; Settings.Instance.Configuration.AntiAfk = AntiAfkCheckBox.IsChecked ?? true; Settings.Instance.Configuration.Console = ConsoleCheckBox.IsChecked ?? false; Settings.Instance.Configuration.ExtendedZoom = ExtendedZoomCheckBox.IsChecked ?? false; Settings.Instance.Configuration.TowerRange = TowerRangeCheckBox.IsChecked ?? true; Settings.Instance.Configuration.MovementHack = false; Settings.Instance.Configuration.StreamingMode = StreamingModeCheckBox.IsChecked ?? false; Settings.Instance.Configuration.DrawWaterMark = DrawWatermarkCheckBox.IsChecked ?? true; Settings.Instance.Configuration.DisableChatFunction = DisableChatCheckBox.IsChecked ?? false; Settings.Instance.Configuration.DisableRangeIndicator = DisableRangeIndicatorCheckBox.IsChecked ?? false; if (LanguageComboBox.SelectedIndex != -1) { Settings.Instance.SelectedLanguage = (Language)Enum.Parse(typeof(Language), LanguageComboBox.SelectedItem.ToString()); MultiLanguage.Text = LocalizedText.Load(Settings.Instance.SelectedLanguage.Value); } if (AssemblyLocationTextBox.Text != Settings.Instance.Directories.AssembliesDirectory) { try { DirectoryHelper.CopyDirectory(Settings.Instance.Directories.AssembliesDirectory, AssemblyLocationTextBox.Text, true); DirectoryHelper.DeleteDirectory(Settings.Instance.Directories.AssembliesDirectory, false); Settings.Instance.Directories.AssembliesDirectory = AssemblyLocationTextBox.Text; } catch (Exception) { MessageBox.Show("Failed to create new Assemblies Directory!", "Settings", MessageBoxButton.OK, MessageBoxImage.Exclamation); } } Close(); }