diff --git a/RotationSolver/Configuration/PluginConfiguration.cs b/RotationSolver/Configuration/PluginConfiguration.cs index bc05f705a..db03d5dd6 100644 --- a/RotationSolver/Configuration/PluginConfiguration.cs +++ b/RotationSolver/Configuration/PluginConfiguration.cs @@ -125,6 +125,7 @@ public class PluginConfiguration : IPluginConfiguration public bool ShowWorkTaskFPS = true; public bool UseStopCasting = false; + public bool EsunaAll = false; public string PositionalErrorText = string.Empty; diff --git a/RotationSolver/Localization/Strings_Major.cs b/RotationSolver/Localization/Strings_Major.cs index d9b95deae..9b4b495b9 100644 --- a/RotationSolver/Localization/Strings_Major.cs +++ b/RotationSolver/Localization/Strings_Major.cs @@ -168,6 +168,7 @@ internal partial class Strings public string Configwindow_Param_UseItemDesc { get; set; } = "Use poison, WIP"; public string Configwindow_Param_Conditon { get; set; } = "Condition"; public string Configwindow_Param_StartOnCountdown { get; set; } = "Turn on auto-rotation on countdown"; + public string Configwindow_Param_EsunaAll { get; set; } = "Esuna All Statuses."; public string Configwindow_Param_InterruptibleMoreCheck { get; set; } = "Interrupt the action with action type check."; diff --git a/RotationSolver/Rotations/CustomRotation/CustomRotation_GCD.cs b/RotationSolver/Rotations/CustomRotation/CustomRotation_GCD.cs index 1cbb0969d..52b645283 100644 --- a/RotationSolver/Rotations/CustomRotation/CustomRotation_GCD.cs +++ b/RotationSolver/Rotations/CustomRotation/CustomRotation_GCD.cs @@ -40,7 +40,7 @@ private IAction GCD(byte abilityRemain, bool helpDefenseAOE, bool helpDefenseSin if (helpDefenseSingle && DefenseSingleGCD(out act)) return act; //Esuna - if ((specialType == SpecialCommandType.EsunaShieldNorth || !HasHostilesInRange) + if ((specialType == SpecialCommandType.EsunaShieldNorth || !HasHostilesInRange || Service.Configuration.EsunaAll) && TargetUpdater.WeakenPeople.Any() || TargetUpdater.DyingPeople.Any()) { diff --git a/RotationSolver/Windows/RotationConfigWindow_Param.cs b/RotationSolver/Windows/RotationConfigWindow_Param.cs index b541fa870..b9b218161 100644 --- a/RotationSolver/Windows/RotationConfigWindow_Param.cs +++ b/RotationSolver/Windows/RotationConfigWindow_Param.cs @@ -294,6 +294,9 @@ private void DrawParamCondition() DrawCheckBox(LocalizationManager.RightLang.Configwindow_Param_StartOnCountdown, ref Service.Configuration.StartOnCountdown); + DrawCheckBox(LocalizationManager.RightLang.Configwindow_Param_EsunaAll, + ref Service.Configuration.EsunaAll); + DrawCheckBox(LocalizationManager.RightLang.Configwindow_Param_HealOutOfCombat, ref Service.Configuration.HealOutOfCombat);