From 92ac091c4c04637d7985558b4d0ddf27711ccb86 Mon Sep 17 00:00:00 2001 From: LTS-FFXIV <127939494+LTS-FFXIV@users.noreply.github.com> Date: Sun, 5 Jan 2025 16:07:49 -0600 Subject: [PATCH] Update target priorities and add check in DancerRotation Updated the priority order for selecting "The Spear" target in the `FindTheSpear` method and "The Balance" target in the `FindTheBalance` method. The new priority orders are specified for each method respectively. Additionally, modified the `ModifyClosedPositionPvE` method in the `DancerRotation` class to include an `ActionCheck` that ensures the action is only performed if the character is not currently dancing (`!IsDancing`) and no alliance members have the `ClosedPosition_2026` status. --- RotationSolver.Basic/Actions/ActionTargetInfo.cs | 4 ++-- RotationSolver.Basic/Rotations/Basic/DancerRotation.cs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/RotationSolver.Basic/Actions/ActionTargetInfo.cs b/RotationSolver.Basic/Actions/ActionTargetInfo.cs index 4e3f58c4d..422b7bed8 100644 --- a/RotationSolver.Basic/Actions/ActionTargetInfo.cs +++ b/RotationSolver.Basic/Actions/ActionTargetInfo.cs @@ -813,7 +813,7 @@ private readonly bool CanGetTarget(IGameObject target, IGameObject subTarget) IBattleChara? FindTheSpear() { // The Spear priority based on the info from The Balance Discord for Level 100 Dance Partner - Job[] TheSpearpriority = { Job.PCT, Job.SAM, Job.RPR, Job.VPR, Job.MNK, Job.NIN, Job.DRG, Job.PCT, Job.SAM, Job.BLM, Job.RDM, Job.SMN, Job.MCH, Job.BRD, Job.DNC }; + Job[] TheSpearpriority = { Job.PCT, Job.SAM, Job.BLM, Job.RDM, Job.SMN, Job.MCH, Job.BRD, Job.DNC, Job.RPR, Job.VPR, Job.MNK, Job.NIN, Job.DRG }; if (IGameObjects == null) return null; @@ -847,7 +847,7 @@ private readonly bool CanGetTarget(IGameObject target, IGameObject subTarget) IBattleChara? FindTheBalance() { // The Balance priority based on the info from The Balance Discord for Level 100 Dance Partner - Job[] TheBalancepriority = { Job.PCT, Job.SAM, Job.BLM, Job.RDM, Job.SMN, Job.MCH, Job.BRD, Job.DNC, Job.RPR, Job.VPR, Job.MNK, Job.NIN, Job.DRG }; + Job[] TheBalancepriority = { Job.RPR, Job.VPR, Job.MNK, Job.NIN, Job.DRG, Job.PCT, Job.SAM, Job.BLM, Job.RDM, Job.SMN, Job.MCH, Job.BRD, Job.DNC }; if (IGameObjects == null) return null; diff --git a/RotationSolver.Basic/Rotations/Basic/DancerRotation.cs b/RotationSolver.Basic/Rotations/Basic/DancerRotation.cs index 5d86e2f1e..c005040c2 100644 --- a/RotationSolver.Basic/Rotations/Basic/DancerRotation.cs +++ b/RotationSolver.Basic/Rotations/Basic/DancerRotation.cs @@ -204,7 +204,7 @@ static partial void ModifyClosedPositionPvE(ref ActionSetting setting) { setting.IsFriendly = true; setting.TargetType = TargetType.DancePartner; - setting.ActionCheck = () => !AllianceMembers.Any(b => b.HasStatus(true, StatusID.ClosedPosition_2026)); + setting.ActionCheck = () => !IsDancing && !AllianceMembers.Any(b => b.HasStatus(true, StatusID.ClosedPosition_2026)); } static partial void ModifyDevilmentPvE(ref ActionSetting setting)