From 6625e29db03c00545988eeb8f8d7e17032c41d41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E6=B0=B4?= <1123993881@qq.com> Date: Sat, 22 Apr 2023 20:25:50 +0800 Subject: [PATCH] fix: changed the Move method signature. --- RotationSolver.Basic/Rotations/Basic/DNC_Base.cs | 4 ++-- RotationSolver.Basic/Rotations/Basic/DRK_Base.cs | 5 ++--- RotationSolver.Basic/Rotations/Basic/GNB_Base.cs | 4 ++-- RotationSolver.Basic/Rotations/Basic/MNK_Base.cs | 6 +++--- RotationSolver.Basic/Rotations/Basic/NIN_Base.cs | 6 +++--- RotationSolver.Basic/Rotations/Basic/PLD_Base.cs | 6 +++--- RotationSolver.Basic/Rotations/Basic/RDM_Base.cs | 6 +++--- RotationSolver.Basic/Rotations/Basic/RPR_Base.cs | 4 ++-- RotationSolver.Basic/Rotations/Basic/SAM_Base.cs | 4 ++-- RotationSolver.Basic/Rotations/Basic/SGE_Base.cs | 5 ++--- RotationSolver.Basic/Rotations/Basic/WAR_Base.cs | 4 ++-- RotationSolver.Basic/Rotations/CustomRotation_Ability.cs | 2 +- RotationSolver.Basic/Rotations/CustomRotation_Invoke.cs | 7 ++++++- 13 files changed, 33 insertions(+), 30 deletions(-) diff --git a/RotationSolver.Basic/Rotations/Basic/DNC_Base.cs b/RotationSolver.Basic/Rotations/Basic/DNC_Base.cs index ed24101b8..82b4748a6 100644 --- a/RotationSolver.Basic/Rotations/Basic/DNC_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/DNC_Base.cs @@ -236,9 +236,9 @@ protected static bool ExecuteStepGCD(out IAction act) #endregion [RotationDesc(ActionID.EnAvant)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (EnAvant.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; + if (EnAvant.CanUse(out act)) return true; return false; } diff --git a/RotationSolver.Basic/Rotations/Basic/DRK_Base.cs b/RotationSolver.Basic/Rotations/Basic/DRK_Base.cs index 0417a3a0d..60d4a53a7 100644 --- a/RotationSolver.Basic/Rotations/Basic/DRK_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/DRK_Base.cs @@ -153,10 +153,9 @@ protected override bool EmergencyAbility(IAction nextGCD, out IAction act) } [RotationDesc(ActionID.Plunge)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (Plunge.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; - + if (Plunge.CanUse(out act)) return true; return false; } } \ No newline at end of file diff --git a/RotationSolver.Basic/Rotations/Basic/GNB_Base.cs b/RotationSolver.Basic/Rotations/Basic/GNB_Base.cs index 36758a77f..13cf70269 100644 --- a/RotationSolver.Basic/Rotations/Basic/GNB_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/GNB_Base.cs @@ -164,9 +164,9 @@ protected override bool EmergencyAbility(IAction nextGCD, out IAction act) } [RotationDesc(ActionID.RoughDivide)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (RoughDivide.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; + if (RoughDivide.CanUse(out act)) return true; return false; } } diff --git a/RotationSolver.Basic/Rotations/Basic/MNK_Base.cs b/RotationSolver.Basic/Rotations/Basic/MNK_Base.cs index 005fdb792..81e9b66db 100644 --- a/RotationSolver.Basic/Rotations/Basic/MNK_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/MNK_Base.cs @@ -106,10 +106,10 @@ public abstract class MNK_Base : CustomRotation }; [RotationDesc(ActionID.Thunderclap)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (Thunderclap.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; - return base.MoveForwardAbility(out act, option); + if (Thunderclap.CanUse(out act)) return true; + return base.MoveForwardAbility(out act); } [RotationDesc(ActionID.Feint)] diff --git a/RotationSolver.Basic/Rotations/Basic/NIN_Base.cs b/RotationSolver.Basic/Rotations/Basic/NIN_Base.cs index 07de6c555..b97eaba79 100644 --- a/RotationSolver.Basic/Rotations/Basic/NIN_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/NIN_Base.cs @@ -206,10 +206,10 @@ internal NinAction(ActionID actionID, params IBaseAction[] ninjutsu) [RotationDesc(ActionID.Shukuchi)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (Shukuchi.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; - return base.MoveForwardAbility(out act, option); + if (Shukuchi.CanUse(out act)) return true; + return base.MoveForwardAbility(out act); } [RotationDesc(ActionID.Feint)] diff --git a/RotationSolver.Basic/Rotations/Basic/PLD_Base.cs b/RotationSolver.Basic/Rotations/Basic/PLD_Base.cs index 9352a184d..b7cd30264 100644 --- a/RotationSolver.Basic/Rotations/Basic/PLD_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/PLD_Base.cs @@ -144,10 +144,10 @@ protected override bool EmergencyAbility(IAction nextGCD, out IAction act) } [RotationDesc(ActionID.Intervene)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (Intervene.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; - return base.MoveForwardAbility(out act, option); + if (Intervene.CanUse(out act)) return true; + return base.MoveForwardAbility(out act); } [RotationDesc(ActionID.Clemency)] diff --git a/RotationSolver.Basic/Rotations/Basic/RDM_Base.cs b/RotationSolver.Basic/Rotations/Basic/RDM_Base.cs index 0ba4593e5..d8e6b49fa 100644 --- a/RotationSolver.Basic/Rotations/Basic/RDM_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/RDM_Base.cs @@ -139,10 +139,10 @@ protected sealed override bool HealSingleGCD(out IAction act) } [RotationDesc(ActionID.CorpsACorps)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (CorpsACorps.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; - return base.MoveForwardAbility(out act, option); + if (CorpsACorps.CanUse(out act)) return true; + return base.MoveForwardAbility(out act); } [RotationDesc(ActionID.Addle, ActionID.MagickBarrier)] diff --git a/RotationSolver.Basic/Rotations/Basic/RPR_Base.cs b/RotationSolver.Basic/Rotations/Basic/RPR_Base.cs index 2f49605c0..05b10c0aa 100644 --- a/RotationSolver.Basic/Rotations/Basic/RPR_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/RPR_Base.cs @@ -196,9 +196,9 @@ public abstract class RPR_Base : CustomRotation #endregion [RotationDesc(ActionID.HellsIngress)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (HellsIngress.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; + if (HellsIngress.CanUse(out act)) return true; return false; } diff --git a/RotationSolver.Basic/Rotations/Basic/SAM_Base.cs b/RotationSolver.Basic/Rotations/Basic/SAM_Base.cs index 89784dc89..7acc49a1b 100644 --- a/RotationSolver.Basic/Rotations/Basic/SAM_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/SAM_Base.cs @@ -169,9 +169,9 @@ public abstract class SAM_Base : CustomRotation #endregion [RotationDesc(ActionID.HissatsuGyoten)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (HissatsuGyoten.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; + if (HissatsuGyoten.CanUse(out act)) return true; return false; } diff --git a/RotationSolver.Basic/Rotations/Basic/SGE_Base.cs b/RotationSolver.Basic/Rotations/Basic/SGE_Base.cs index 211230937..dcc87bb1e 100644 --- a/RotationSolver.Basic/Rotations/Basic/SGE_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/SGE_Base.cs @@ -147,10 +147,9 @@ protected static bool AddersgallEndAfterGCD(uint gctCount = 0, int abilityCount }; [RotationDesc(ActionID.Icarus)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - //���� - if (Icarus.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; + if (Icarus.CanUse(out act)) return true; return false; } } diff --git a/RotationSolver.Basic/Rotations/Basic/WAR_Base.cs b/RotationSolver.Basic/Rotations/Basic/WAR_Base.cs index 22a23de3b..75bf262d2 100644 --- a/RotationSolver.Basic/Rotations/Basic/WAR_Base.cs +++ b/RotationSolver.Basic/Rotations/Basic/WAR_Base.cs @@ -111,9 +111,9 @@ protected override bool EmergencyAbility(IAction nextGCD, out IAction act) } [RotationDesc(ActionID.Onslaught)] - protected sealed override bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected sealed override bool MoveForwardAbility(out IAction act) { - if (Onslaught.CanUse(out act, CanUseOption.EmptyOrSkipCombo | option | CanUseOption.IgnoreClippingCheck)) return true; + if (Onslaught.CanUse(out act)) return true; return false; } diff --git a/RotationSolver.Basic/Rotations/CustomRotation_Ability.cs b/RotationSolver.Basic/Rotations/CustomRotation_Ability.cs index 37ef29de1..d132576e9 100644 --- a/RotationSolver.Basic/Rotations/CustomRotation_Ability.cs +++ b/RotationSolver.Basic/Rotations/CustomRotation_Ability.cs @@ -266,7 +266,7 @@ protected virtual bool EmergencyAbility(IAction nextGCD, out IAction act) } [RotationDesc(DescType.MoveForwardAbility)] - protected virtual bool MoveForwardAbility(out IAction act, CanUseOption option = CanUseOption.None) + protected virtual bool MoveForwardAbility(out IAction act) { act = null; return false; } diff --git a/RotationSolver.Basic/Rotations/CustomRotation_Invoke.cs b/RotationSolver.Basic/Rotations/CustomRotation_Invoke.cs index e8e3db1e5..b7d57213d 100644 --- a/RotationSolver.Basic/Rotations/CustomRotation_Invoke.cs +++ b/RotationSolver.Basic/Rotations/CustomRotation_Invoke.cs @@ -1,4 +1,5 @@ using Dalamud.Logging; +using static FFXIVClientStructs.FFXIV.Client.UI.Misc.ConfigModule; namespace RotationSolver.Basic.Rotations; @@ -15,7 +16,11 @@ public bool TryInvoke(out IAction newAction, out IAction gcdAction) var role = Job.GetJobRole(); ActionMoveForwardGCD = MoveForwardGCD(out var act) ? act : null; - var movingTarget = MoveForwardAbility(out act, CanUseOption.IgnoreTarget); + + BaseAction.OtherOption = CanUseOption.IgnoreTarget | CanUseOption.EmptyOrSkipCombo | CanUseOption.IgnoreClippingCheck; + var movingTarget = MoveForwardAbility(out act); + BaseAction.OtherOption = CanUseOption.None; + ActionMoveForwardAbility = movingTarget ? act : null; MoveTarget = (movingTarget && act is IBaseAction a) ? a.Target : null;