diff --git a/BasicRotations/Melee/DRG_Default.cs b/BasicRotations/Melee/DRG_Default.cs
index 89f7082..8ecab64 100644
--- a/BasicRotations/Melee/DRG_Default.cs
+++ b/BasicRotations/Melee/DRG_Default.cs
@@ -1,79 +1,91 @@
namespace DefaultRotations.Melee;
-[Rotation("Default", CombatType.PvE, GameVersion = "7.00")]
+[Rotation("Default", CombatType.PvE, GameVersion = "7.01")]
[SourceCode(Path = "main/DefaultRotations/Melee/DRG_Default.cs")]
[Api(2)]
public sealed class DRG_Default : DragoonRotation
{
#region Config Options
- [RotationDesc(ActionID.WingedGlidePvE, ActionID.DragonfireDivePvE)]
-
- [RotationConfig(CombatType.PvE, Name = "Break Single Target Combo to AOE when time to AOE")]
+ [RotationConfig(CombatType.PvE, Name = "Use Doom Spike for damage uptime if out of melee range even if it breaks combo")]
public bool DoomSpikeWhenever { get; set; } = true;
#endregion
- #region Move Logic
- protected override bool MoveForwardAbility(IAction nextGCD, out IAction act)
- {
- if (DragonfireDivePvE.CanUse(out act, skipAoeCheck: true)) return true;
-
- return false;
- }
-
- #endregion
+ #region Additional oGCD Logic
- #region oGCD Logic
+ [RotationDesc]
protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
{
if (nextGCD.IsTheSameTo(true, FullThrustPvE, CoerthanTormentPvE)
|| Player.HasStatus(true, StatusID.LanceCharge) && nextGCD.IsTheSameTo(false, FangAndClawPvE))
- {
+ {
if (LifeSurgePvE.CanUse(out act, usedUp: true)) return true;
}
return base.EmergencyAbility(nextGCD, out act);
}
+ [RotationDesc(ActionID.WingedGlidePvE)]
+ protected override bool MoveForwardAbility(IAction nextGCD, out IAction? act)
+ {
+ if (WingedGlidePvE.CanUse(out act)) return true;
+
+ return false;
+ }
+ [RotationDesc(ActionID.ElusiveJumpPvE)]
+ protected override bool MoveBackAbility(IAction nextGCD, out IAction? act)
+ {
+ if (ElusiveJumpPvE.CanUse(out act)) return true;
- protected override bool AttackAbility(IAction nextGCD, out IAction? act)
+ return false;
+ }
+
+ [RotationDesc(ActionID.FeintPvE)]
+ protected sealed override bool DefenseAreaAbility(IAction nextGCD, out IAction? act)
+ {
+ if (FeintPvE.CanUse(out act)) return true;
+ return false;
+ }
+ #endregion
+
+ #region oGCD Logic
+ protected override bool GeneralAbility(IAction nextGCD, out IAction? act)
{
if (IsBurst && InCombat)
{
- if (LanceChargePvE.CanUse(out act, skipAoeCheck: true) && Player.HasStatus(true, StatusID.PowerSurge)) return true;
- if (LanceChargePvE.CanUse(out act, skipAoeCheck: true) && !Player.HasStatus(true, StatusID.PowerSurge)) return true;
+ if (LanceChargePvE.CanUse(out act)) return true;
- if (BattleLitanyPvE.CanUse(out act, skipAoeCheck: true)) return true;
+ if (BattleLitanyPvE.CanUse(out act)) return true;
}
- if (NastrondPvE.CanUse(out act, skipAoeCheck: true)) return true;
- if (StardiverPvE.CanUse(out act, skipAoeCheck: true)) return true;
+ return base.GeneralAbility(nextGCD, out act);
+ }
- if (HighJumpPvE.EnoughLevel)
- {
- if (HighJumpPvE.CanUse(out act)) return true;
- }
- else
- {
- if (JumpPvE.CanUse(out act)) return true;
- }
+ protected override bool AttackAbility(IAction nextGCD, out IAction? act)
+ {
+ if (StarcrossPvE.CanUse(out act)) return true;
+ if (NastrondPvE.CanUse(out act)) return true;
+ if (StardiverPvE.CanUse(out act)) return true;
+
+ if (HighJumpPvE.CanUse(out act)) return true;
+ if (JumpPvE.CanUse(out act)) return true;
- if (GeirskogulPvE.CanUse(out act, skipAoeCheck: true)) return true;
+ if (Player.HasStatus(true, StatusID.LanceCharge) && LanceChargePvE.Cooldown.ElapsedOneChargeAfterGCD(3))
{
- if (Player.HasStatus(true, StatusID.LanceCharge) && LanceChargePvE.Cooldown.ElapsedOneChargeAfterGCD(3)) return true;
+ if (GeirskogulPvE.CanUse(out act)) return true;
}
if (MirageDivePvE.CanUse(out act)) return true;
- if (DragonfireDivePvE.CanUse(out act, skipAoeCheck: true))
+ if (Player.HasStatus(true, StatusID.LanceCharge) && LanceChargePvE.Cooldown.ElapsedOneChargeAfterGCD(3))
{
- if (Player.HasStatus(true, StatusID.LanceCharge) && LanceChargePvE.Cooldown.ElapsedOneChargeAfterGCD(3)) return true;
+ if (DragonfireDivePvE.CanUse(out act)) return true;
}
- if (WyrmwindThrustPvE.CanUse(out act, skipAoeCheck: true)) return true;
- if (MergedStatus.HasFlag(AutoStatus.MoveForward) && MoveForwardAbility(nextGCD, out act)) return true;
+ if (WyrmwindThrustPvE.CanUse(out act)) return true;
+ if (RiseOfTheDragonPvE.CanUse(out act)) return true;
return base.AttackAbility(nextGCD, out act);
}
@@ -104,6 +116,9 @@ protected override bool GeneralGCD(out IAction? act)
if (VorpalThrustPvE.CanUse(out act)) return true;
if (TrueThrustPvE.CanUse(out act)) return true;
+ if (RaidenThrustPvE.CanUse(out act)) return true;
+ if (LanceBarragePvE.CanUse(out act)) return true;
+ if (SpiralBlowPvE.CanUse(out act)) return true;
if (PiercingTalonPvE.CanUse(out act)) return true;
return base.GeneralGCD(out act);
diff --git a/BasicRotations/RebornRotations.csproj b/BasicRotations/RebornRotations.csproj
index dfbdf16..dcdb229 100644
--- a/BasicRotations/RebornRotations.csproj
+++ b/BasicRotations/RebornRotations.csproj
@@ -9,7 +9,7 @@
-
+