Add an option to disable ESC
authorLiza Carvelli <liza@carvel.li>
Thu, 1 Aug 2024 16:47:13 +0000 (18:47 +0200)
committerLiza Carvelli <liza@carvel.li>
Thu, 1 Aug 2024 16:47:13 +0000 (18:47 +0200)
Questionable/Configuration.cs
Questionable/Controller/QuestController.cs
Questionable/Windows/ConfigWindow.cs

index 4b2769614d042a7c7b04d6398d7b7d04acba2724..4424db236bfc20a943f171f900cc0de05d82bee0 100644 (file)
@@ -18,6 +18,7 @@ internal sealed class Configuration : IPluginConfiguration
         public uint MountId { get; set; } = 71;
         public GrandCompany GrandCompany { get; set; } = GrandCompany.None;
         public bool HideInAllInstances { get; set; } = true;
+        public bool UseEscToCancelQuesting { get; set; } = true;
     }
 
     internal sealed class AdvancedConfiguration
index 4838353aa8fa67d35409ddeaf833404dba4eadb0..c92fee2ba6b68e8d57a0b2c89324dfb2d1769800 100644 (file)
@@ -140,7 +140,7 @@ internal sealed class QuestController
                 _combatController.Stop("HP = 0");
             }
         }
-        else if (_keyState[VirtualKey.ESCAPE])
+        else if (_configuration.General.UseEscToCancelQuesting && _keyState[VirtualKey.ESCAPE])
         {
             if (_currentTask != null || _taskQueue.Count > 0)
             {
index 11693300ed61a82c6601bb88e86ce49eacc80ae3..0fa60d69c1c57926be61ae907e781e2a1ee04f16 100644 (file)
@@ -76,6 +76,13 @@ internal sealed class ConfigWindow : LWindow, IPersistableWindowConfig
                     Save();
                 }
 
+                bool useEscToCancelQuesting = _configuration.General.UseEscToCancelQuesting;
+                if (ImGui.Checkbox("Use ESC to cancel questing/movement", ref useEscToCancelQuesting))
+                {
+                    _configuration.General.UseEscToCancelQuesting = useEscToCancelQuesting;
+                    Save();
+                }
+
                 ImGui.EndTabItem();
             }