Skip to content
This repository has been archived by the owner on Nov 23, 2024. It is now read-only.

Commit

Permalink
Merge pull request #116 from FFXIV-CombatReborn/IcWaDev
Browse files Browse the repository at this point in the history
Updated smn for <100 aether issue and updated timing on burst because sometimes it could lead to weave.
  • Loading branch information
IncognitoWater authored Jul 20, 2024
2 parents 3511d67 + c7db149 commit b74f9bd
Showing 1 changed file with 7 additions and 9 deletions.
16 changes: 7 additions & 9 deletions BasicRotations/Magical/SMN_Default.cs
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,16 @@ protected override bool AttackAbility(IAction nextGCD, out IAction? act)
bool isTargetDying = HostileTarget?.IsDying() ?? false;
bool targetIsBossAndDying = isTargetBoss && isTargetDying;
bool inBigInvocation = InBahamut || InPhoenix || InSolarBahamut;
bool inSolarUnique = !InBahamut && !InPhoenix && InSolarBahamut;
bool inSolarUnique = Player.Level == 100 ? !InBahamut && !InPhoenix && InSolarBahamut : InBahamut && !InPhoenix;
bool elapsed0ChargeAfterInvocation = SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD() || SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD() || SummonPhoenixPvE.Cooldown.ElapsedOneChargeAfterGCD();
bool elapsed1ChargeAfterInvocation = SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD(1) || SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD(1) || SummonPhoenixPvE.Cooldown.ElapsedOneChargeAfterGCD(1);
bool elapsed2ChargeAfterInvocation = SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD() || SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD(3) || SummonPhoenixPvE.Cooldown.ElapsedOneChargeAfterGCD(2);
bool burstInSolar = Player.Level == 100 ? InSolarBahamut : InBahamut;

if (!Player.HasStatus(false, StatusID.SearingLight) && burstInSolar && elapsed0ChargeAfterInvocation)
{
if (SearingLightPvE.CanUse(out act, skipAoeCheck: true)) return true;
}

if (inBigInvocation && (elapsed0ChargeAfterInvocation || targetIsBossAndDying) && EnergySiphonPvE.CanUse(out act)) return true;
if (inBigInvocation && (elapsed0ChargeAfterInvocation || targetIsBossAndDying) && EnergyDrainPvE.CanUse(out act)) return true;
Expand All @@ -94,14 +100,6 @@ protected override bool AttackAbility(IAction nextGCD, out IAction? act)
protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
{
bool anyBigInvocationIsCoolingDown = SummonBahamutPvE.Cooldown.IsCoolingDown || SummonSolarBahamutPvE.Cooldown.IsCoolingDown || SummonPhoenixPvE.Cooldown.IsCoolingDown;
bool elapsed0ChargeAfterInvocation = SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD() || SummonSolarBahamutPvE.Cooldown.ElapsedOneChargeAfterGCD() || SummonPhoenixPvE.Cooldown.ElapsedOneChargeAfterGCD();
bool burstInSolar = Player.Level == 100 ? InSolarBahamut : InBahamut;

if (!Player.HasStatus(false, StatusID.SearingLight) && burstInSolar && elapsed0ChargeAfterInvocation)
{
if (SearingLightPvE.CanUse(out act, skipAoeCheck: true)) return true;
}

if (AddSwiftcastOnGaruda && nextGCD == SlipstreamPvE && Player.Level > 86 && !InBahamut && !InPhoenix && !InSolarBahamut)
{
if (SwiftcastPvE.CanUse(out act)) return true;
Expand Down

0 comments on commit b74f9bd

Please sign in to comment.