diff --git a/EliteBGS/CombatZoneDialog.xaml b/EliteBGS/CombatZoneDialog.xaml
deleted file mode 100644
index c96769c..0000000
--- a/EliteBGS/CombatZoneDialog.xaml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-    
-        
-            
-        
-        
-            
-            
-        
-        
-            
-                
-                    
-                    
-                    
-                
-                
-                    
-                
-                
-                    
-                    
-                
-                
-                    
-                    
-                    
-                
-                
-            
-        
-        
-            
-                
-                
-            
-            
-            
-        
-    
-
diff --git a/EliteBGS/CombatZoneDialog.xaml.cs b/EliteBGS/CombatZoneDialog.xaml.cs
deleted file mode 100644
index c311dba..0000000
--- a/EliteBGS/CombatZoneDialog.xaml.cs
+++ /dev/null
@@ -1,47 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows;
-using System.Windows.Forms;
-using System.Windows.Controls;
-using System.Windows.Data;
-using System.Windows.Documents;
-using System.Windows.Input;
-using System.Windows.Media;
-using System.Windows.Media.Imaging;
-using System.Windows.Shapes;
-
-namespace EliteBGS {
-    /// 
-    /// Interaction logic for CombatZoneDialog.xaml
-    /// 
-    public partial class CombatZoneDialog : Window {
-        public CombatZoneDialog() {
-            InitializeComponent();
-        }
-
-        public string Type => (type.SelectedItem as ComboBoxItem).Content.ToString();
-        public string Grade => (grade.SelectedItem as ComboBoxItem).Content.ToString();
-        public int Amount {
-            get {
-                try {
-                    return int.Parse(amount.Text);
-                } catch (Exception) {
-                    return 1;
-                }
-            }
-        }
-
-        private void Accept_Click(object sender, RoutedEventArgs e) {
-            DialogResult = true;
-            Close();
-        }
-
-        private void Cancel_Click(object sender, RoutedEventArgs e) {
-            DialogResult = false;
-            Close();
-        }
-    }
-}
diff --git a/EliteBGS/MainWindow.xaml b/EliteBGS/MainWindow.xaml
index ac92a48..f9e8b2d 100644
--- a/EliteBGS/MainWindow.xaml
+++ b/EliteBGS/MainWindow.xaml
@@ -116,6 +116,7 @@
                                                     
                                                         
                                                         
+                                                        
                                                     
                                                 
                                             
diff --git a/EliteBGS/MainWindow.xaml.cs b/EliteBGS/MainWindow.xaml.cs
index d7223fb..712fab5 100644
--- a/EliteBGS/MainWindow.xaml.cs
+++ b/EliteBGS/MainWindow.xaml.cs
@@ -329,6 +329,16 @@ public partial class MainWindow : Window {
         RefreshView();
     }
 
+    private void Thargoid_Click(object sender, RoutedEventArgs e) {
+        CombatZone transaction = GetTransaction(sender);
+        if (transaction == null) {
+            return;
+        }
+
+        transaction.Type = CombatZones.ThargoidCombatZone;
+        RefreshView();
+    }
+
     private void Profit_LostFocus(object sender, RoutedEventArgs e) {
         RefreshView();
     }
diff --git a/EliteBGS/Objective.cs b/EliteBGS/Objective.cs
index c1f0e88..330ebfd 100644
--- a/EliteBGS/Objective.cs
+++ b/EliteBGS/Objective.cs
@@ -5,6 +5,7 @@ using Newtonsoft.Json;
 using EDPlayerJournal.BGS;
 using System.Linq;
 using System.Windows;
+using EDPlayerJournal;
 
 namespace EliteBGS;
 
@@ -25,6 +26,21 @@ public class UITransaction {
         }
     }
 
+    public Visibility IsGroundCombatZone {
+        get {
+            CombatZone combat = Transaction as CombatZone;
+            if (combat == null) {
+                return Visibility.Hidden;
+            }
+
+            if (string.Compare(combat.Type, CombatZones.GroundCombatZone) == 0) {
+                return Visibility.Visible;
+            }
+
+            return Visibility.Hidden;
+        }
+    }
+
     public Visibility IsShipCombatZone {
         get {
             CombatZone combat = Transaction as CombatZone;
@@ -32,7 +48,22 @@ public class UITransaction {
                 return Visibility.Hidden;
             }
 
-            if (string.Compare(combat.Type, "Ship") == 0) {
+            if (string.Compare(combat.Type, CombatZones.ShipCombatZone) == 0) {
+                return Visibility.Visible;
+            }
+
+            return Visibility.Hidden;
+        }
+    }
+
+    public Visibility IsThargoidCombatZone {
+        get {
+            CombatZone combat = Transaction as CombatZone;
+            if (combat == null) {
+                return Visibility.Hidden;
+            }
+
+            if (string.Compare(combat.Type, CombatZones.ThargoidCombatZone) == 0) {
                 return Visibility.Visible;
             }