diff --git a/RotationSolver/Actions/BaseAction/BaseAction_ActionInfo.cs b/RotationSolver/Actions/BaseAction/BaseAction_ActionInfo.cs index 77b9dc99a..7e18fe757 100644 --- a/RotationSolver/Actions/BaseAction/BaseAction_ActionInfo.cs +++ b/RotationSolver/Actions/BaseAction/BaseAction_ActionInfo.cs @@ -79,22 +79,25 @@ public unsafe virtual bool CanUse(out IAction act, bool mustUse = false, bool em if (!WillCooldown) return false; - if (IsGeneralGCD) + if (!emptyOrSkipCombo) { - if (!emptyOrSkipCombo && !CheckForCombo()) return false; - - if (CastTime > 0 && MovingUpdater.IsMoving) + if (IsGeneralGCD) { - if (!player.HasStatus(true, CustomRotation.Swiftcast.StatusProvide)) - { + if (!CheckForCombo()) return false; + } + else + { + if (RecastTimeRemain > ActionUpdater.WeaponRemain + ActionUpdater.WeaponTotal) return false; - } } } - else + + if (CastTime > 0 && MovingUpdater.IsMoving) { - if (!emptyOrSkipCombo && RecastTimeRemain > ActionUpdater.WeaponRemain + ActionUpdater.WeaponTotal) + if (!player.HasStatus(true, CustomRotation.Swiftcast.StatusProvide)) + { return false; + } } if (!FindTarget(mustUse, out var target)) return false;