public void HandleLevelLoad(object sender, RoutedEventArgs e) { // Check for correct level input int level; if (!Int32.TryParse(LevelTextBox.Text, out level) || level < 0) { MessageBox.Show("Invalid level (must be positive integer)", "Error"); return; } // Check path is valid string trialPath = "campaigns/" + CampaignTextBox.Text + "/" + level.ToString() + "/"; if (!Directory.Exists(trialPath)) { MessageBox.Show("Invalid level, level folder cannot be found at: " + trialPath, "Error"); return; } Path = trialPath; using (INIParser settings = new INIParser("settings.ini")) { settings.Set("level_default", "campaign", CampaignTextBox.Text); settings.Set("level_default", "level", level.ToString()); } this.Close(); }