diff --git a/BasicRotations/Healer/AST_Archive b/BasicRotations/Healer/AST_Archive
deleted file mode 100644
index 93c6b3e..0000000
--- a/BasicRotations/Healer/AST_Archive
+++ /dev/null
@@ -1,218 +0,0 @@
-namespace DefaultRotations.Healer;
-
-[Rotation("Default", CombatType.PvE, GameVersion = "7.00")]
-[SourceCode(Path = "main/DefaultRotations/Healer/AST_Default.cs")]
-[Api(1)]
-public sealed class AST_Default : AstrologianRotation
-{/*
- #region Config Options
- [RotationConfig(CombatType.PvE, Name = "Use spells with cast times to heal. (Ignored if you are the only healer in party)")]
- public bool GCDHeal { get; set; } = false;
-
- [Range(4, 20, ConfigUnitType.Seconds)]
- [RotationConfig(CombatType.PvE, Name = "Use Earthly Star during countdown timer.")]
- public float UseEarthlyStarTime { get; set; } = 15;
-
- [Range(0, 1, ConfigUnitType.Percent)]
- [RotationConfig(CombatType.PvE, Name = "Minimum HP threshold party member needs to be to use Aspected Benefic")]
- public float AspectedBeneficHeal { get; set; } = 0.4f;
-
- [Range(0, 1, ConfigUnitType.Percent)]
- [RotationConfig(CombatType.PvE, Name = "Minimum HP threshold among party member needed to use Horoscope")]
- public float HoroscopeHeal { get; set; } = 0.3f;
- #endregion
-
- #region Countdown Logic
- protected override IAction? CountDownAction(float remainTime)
- {
- if (remainTime < MaleficPvE.Info.CastTime + CountDownAhead
- && MaleficPvE.CanUse(out var act)) return act;
- if (remainTime < 3 && UseBurstMedicine(out act)) return act;
- if (remainTime is < 4 and > 3 && AspectedBeneficPvE.CanUse(out act)) return act;
- if (remainTime < UseEarthlyStarTime
- && EarthlyStarPvE.CanUse(out act)) return act;
- if (remainTime < 30 && DrawPvE.CanUse(out act)) return act;
-
- return base.CountDownAction(remainTime);
- }
- #endregion
-
- #region Defensive Logic
- [RotationDesc(ActionID.CelestialIntersectionPvE, ActionID.ExaltationPvE)]
- protected override bool DefenseSingleAbility(IAction nextGCD, out IAction? act)
- {
- if (CelestialIntersectionPvE.CanUse(out act, usedUp:true)) return true;
- if (ExaltationPvE.CanUse(out act)) return true;
- return base.DefenseSingleAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.MacrocosmosPvE)]
- protected override bool DefenseAreaGCD(out IAction? act)
- {
- act = null;
- if (MacrocosmosPvE.Cooldown.IsCoolingDown && !MacrocosmosPvE.Cooldown.WillHaveOneCharge(150)
- || CollectiveUnconsciousPvE.Cooldown.IsCoolingDown && !CollectiveUnconsciousPvE.Cooldown.WillHaveOneCharge(40)) return false;
-
- if (MacrocosmosPvE.CanUse(out act)) return true;
- return base.DefenseAreaGCD(out act);
- }
-
- [RotationDesc(ActionID.CollectiveUnconsciousPvE)]
- protected override bool DefenseAreaAbility(IAction nextGCD, out IAction? act)
- {
- act = null;
- if (MacrocosmosPvE.Cooldown.IsCoolingDown && !MacrocosmosPvE.Cooldown.WillHaveOneCharge(150)
- || CollectiveUnconsciousPvE.Cooldown.IsCoolingDown && !CollectiveUnconsciousPvE.Cooldown.WillHaveOneCharge(40)) return false;
-
- if (CollectiveUnconsciousPvE.CanUse(out act)) return true;
- return base.DefenseAreaAbility(nextGCD, out act);
- }
- #endregion
-
- #region GCD Logic
- protected override bool GeneralGCD(out IAction? act)
- {
- if (GravityPvE.CanUse(out act)) return true;
-
- if (CombustPvE.CanUse(out act)) return true;
- if (MaleficPvE.CanUse(out act)) return true;
- if (CombustPvE.CanUse(out act, skipStatusProvideCheck: true)) return true;
-
- return base.GeneralGCD(out act);
- }
-
- [RotationDesc(ActionID.AspectedBeneficPvE, ActionID.BeneficIiPvE, ActionID.BeneficPvE)]
- protected override bool HealSingleGCD(out IAction? act)
- {
- if (AspectedBeneficPvE.CanUse(out act)
- && (IsMoving
- || AspectedBeneficPvE.Target.Target?.GetHealthRatio() > AspectedBeneficHeal)) return true;
-
- if (BeneficIiPvE.CanUse(out act)) return true;
- if (BeneficPvE.CanUse(out act)) return true;
-
- return base.HealSingleGCD(out act);
- }
-
- [RotationDesc(ActionID.AspectedHeliosPvE, ActionID.HeliosPvE)]
- protected override bool HealAreaGCD(out IAction? act)
- {
- if (AspectedHeliosPvE.CanUse(out act)) return true;
- if (HeliosPvE.CanUse(out act)) return true;
- return base.HealAreaGCD(out act);
- }
- #endregion
-
- #region oGCD Logic
- protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
- {
- if (base.EmergencyAbility(nextGCD, out act)) return true;
-
- if (!InCombat) return false;
-
- if (nextGCD.IsTheSameTo(true, AspectedHeliosPvE, HeliosPvE))
- {
- if (HoroscopePvE.CanUse(out act)) return true;
- if (NeutralSectPvE.CanUse(out act)) return true;
- }
-
- if (nextGCD.IsTheSameTo(true, BeneficPvE, BeneficIiPvE, AspectedBeneficPvE))
- {
- if (SynastryPvE.CanUse(out act)) return true;
- }
- return base.EmergencyAbility(nextGCD, out act);
- }
-
- protected override bool GeneralAbility(IAction nextGCD, out IAction? act)
- {
- if (DrawPvE.CanUse(out act)) return true;
- if (RedrawPvE.CanUse(out act)) return true;
- return base.GeneralAbility(nextGCD, out act);
- }
-
- protected override bool AttackAbility(IAction nextGCD, out IAction? act)
- {
- if (IsBurst && !IsMoving
- && DivinationPvE.CanUse(out act)) return true;
-
- if (MinorArcanaPvE.CanUse(out act, usedUp:true)) return true;
-
- if (DrawPvE.CanUse(out act, usedUp: IsBurst)) return true;
-
- if (InCombat)
- {
- if (IsMoving && LightspeedPvE.CanUse(out act)) return true;
-
- if (!IsMoving)
- {
- if (!Player.HasStatus(true, StatusID.EarthlyDominance, StatusID.GiantDominance))
- {
- if (EarthlyStarPvE.CanUse(out act)) return true;
- }
- if (AstrodynePvE.CanUse(out act)) return true;
- }
-
- if (DrawnCrownCard == CardType.LORD || MinorArcanaPvE.Cooldown.WillHaveOneChargeGCD(1, 0))
- {
- if (MinorArcanaPvE.CanUse(out act)) return true;
- }
- }
-
- if (RedrawPvE.CanUse(out act)) return true;
- if (InCombat && PlayCard(out act)) return true;
-
- return base.AttackAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.EssentialDignityPvE, ActionID.CelestialIntersectionPvE, ActionID.CelestialOppositionPvE,
- ActionID.EarthlyStarPvE, ActionID.HoroscopePvE)]
- protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
- {
- if (EssentialDignityPvE.CanUse(out act)) return true;
- if (CelestialIntersectionPvE.CanUse(out act, usedUp:true)) return true;
-
- if (DrawnCrownCard == CardType.LADY
- && MinorArcanaPvE.CanUse(out act)) return true;
-
- if (CelestialOppositionPvE.CanUse(out act)) return true;
-
- if (Player.HasStatus(true, StatusID.GiantDominance))
- {
- act = EarthlyStarPvE;
- return true;
- }
-
- if (!Player.HasStatus(true, StatusID.HoroscopeHelios, StatusID.Horoscope) && HoroscopePvE.CanUse(out act)) return true;
-
- if ((Player.HasStatus(true, StatusID.HoroscopeHelios)
- || PartyMembersMinHP < HoroscopeHeal)
- && HoroscopePvE.CanUse(out act)) return true;
-
- return base.HealSingleAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.CelestialOppositionPvE, ActionID.EarthlyStarPvE, ActionID.HoroscopePvE)]
- protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
- {
- if (CelestialOppositionPvE.CanUse(out act)) return true;
-
- if (Player.HasStatus(true, StatusID.GiantDominance))
- {
- act = EarthlyStarPvE;
- return true;
- }
-
- if (Player.HasStatus(true, StatusID.HoroscopeHelios) && HoroscopePvE.CanUse(out act)) return true;
-
- if (DrawnCrownCard == CardType.LADY && MinorArcanaPvE.CanUse(out act)) return true;
-
- return base.HealAreaAbility(nextGCD, out act);
- }
- #endregion
-
- #region Extra Methods
- public override bool CanHealSingleSpell => base.CanHealSingleSpell && (GCDHeal || PartyMembers.GetJobCategory(JobRole.Healer).Count() < 2);
- public override bool CanHealAreaSpell => base.CanHealAreaSpell && (GCDHeal || PartyMembers.GetJobCategory(JobRole.Healer).Count() < 2);
-
- #endregion
-*/}
diff --git a/BasicRotations/Healer/AST_Default.cs b/BasicRotations/Healer/AST_Default.cs
index 47f55dc..7db0874 100644
--- a/BasicRotations/Healer/AST_Default.cs
+++ b/BasicRotations/Healer/AST_Default.cs
@@ -46,7 +46,28 @@ public sealed class AST_Default : AstrologianRotation
}
#endregion
- #region Defensive Logic
+ #region oGCD Logic
+ protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
+ {
+ act = null;
+ if (BubbleProtec && Player.HasStatus(true, StatusID.CollectiveUnconscious_848)) return false;
+ if (MicroPrio && Player.HasStatus(true, StatusID.Macrocosmos)) return false;
+
+ if (!InCombat) return false;
+
+ if (OraclePvE.CanUse(out act)) return true;
+ if (nextGCD.IsTheSameTo(true, AspectedHeliosPvE, HeliosPvE))
+ {
+ if (HoroscopePvE.CanUse(out act)) return true;
+ if (NeutralSectPvE.CanUse(out act)) return true;
+ }
+
+ if (nextGCD.IsTheSameTo(true, BeneficPvE, BeneficIiPvE, AspectedBeneficPvE))
+ {
+ if (SynastryPvE.CanUse(out act)) return true;
+ }
+ return base.EmergencyAbility(nextGCD, out act);
+ }
[RotationDesc(ActionID.ExaltationPvE, ActionID.TheArrowPvE, ActionID.TheSpirePvE, ActionID.TheBolePvE, ActionID.TheEwerPvE)]
protected override bool DefenseSingleAbility(IAction nextGCD, out IAction? act)
@@ -88,31 +109,46 @@ protected override bool DefenseAreaAbility(IAction nextGCD, out IAction? act)
if (CollectiveUnconsciousPvE.CanUse(out act)) return true;
return base.DefenseAreaAbility(nextGCD, out act);
}
- #endregion
- #region oGCD Logic
- protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
+ [RotationDesc(ActionID.TheArrowPvE, ActionID.TheEwerPvE, ActionID.EssentialDignityPvE,
+ ActionID.CelestialIntersectionPvE)]
+ protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
{
act = null;
if (BubbleProtec && Player.HasStatus(true, StatusID.CollectiveUnconscious_848)) return false;
if (MicroPrio && Player.HasStatus(true, StatusID.Macrocosmos)) return false;
- if (base.EmergencyAbility(nextGCD, out act)) return true;
+ if (InCombat && TheArrowPvE.CanUse(out act)) return true;
+ if (InCombat && TheEwerPvE.CanUse(out act)) return true;
- if (!InCombat) return false;
+ if (EssentialDignityPvE.CanUse(out act, usedUp: true)) return true;
- if (OraclePvE.CanUse(out act)) return true;
- if (nextGCD.IsTheSameTo(true, AspectedHeliosPvE, HeliosPvE))
- {
- if (HoroscopePvE.CanUse(out act)) return true;
- if (NeutralSectPvE.CanUse(out act)) return true;
- }
+ if (CelestialIntersectionPvE.CanUse(out act, usedUp: true)) return true;
- if (nextGCD.IsTheSameTo(true, BeneficPvE, BeneficIiPvE, AspectedBeneficPvE))
- {
- if (SynastryPvE.CanUse(out act)) return true;
- }
- return base.EmergencyAbility(nextGCD, out act);
+ return base.HealSingleAbility(nextGCD, out act);
+ }
+
+ [RotationDesc(ActionID.CelestialOppositionPvE, ActionID.StellarDetonationPvE, ActionID.HoroscopePvE, ActionID.HoroscopePvE_16558, ActionID.LadyOfCrownsPvE, ActionID.HeliosConjunctionPvE)]
+ protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
+ {
+ act = null;
+ if (BubbleProtec && Player.HasStatus(true, StatusID.CollectiveUnconscious_848)) return false;
+
+ if (MicrocosmosPvE.CanUse(out act)) return true;
+ if (MicroPrio && Player.HasStatus(true, StatusID.Macrocosmos)) return false;
+
+ if (CelestialOppositionPvE.CanUse(out act)) return true;
+
+ if (StellarDetonationPvE.CanUse(out act)) return true;
+
+ if (HoroscopePvE.CanUse(out act)) return true;
+
+ if (HoroscopePvE_16558.CanUse(out act)) return true;
+
+ if (LadyOfCrownsPvE.CanUse(out act)) return true;
+
+ if (HeliosConjunctionPvE.CanUse(out act)) return true;
+ return base.HealAreaAbility(nextGCD, out act);
}
protected override bool GeneralAbility(IAction nextGCD, out IAction? act)
@@ -155,64 +191,9 @@ protected override bool AttackAbility(IAction nextGCD, out IAction? act)
}
return base.AttackAbility(nextGCD, out act);
}
-
- [RotationDesc(ActionID.TheArrowPvE, ActionID.TheEwerPvE, ActionID.EssentialDignityPvE,
- ActionID.CelestialIntersectionPvE)]
- protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
- {
- act = null;
- if (BubbleProtec && Player.HasStatus(true, StatusID.CollectiveUnconscious_848)) return false;
- if (MicroPrio && Player.HasStatus(true, StatusID.Macrocosmos)) return false;
-
- if (InCombat && TheArrowPvE.CanUse(out act)) return true;
- if (InCombat && TheEwerPvE.CanUse(out act)) return true;
-
- if (EssentialDignityPvE.CanUse(out act)) return true;
-
- if (CelestialIntersectionPvE.CanUse(out act, usedUp: true)) return true;
-
- return base.HealSingleAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.CelestialOppositionPvE, ActionID.StellarDetonationPvE, ActionID.HoroscopePvE, ActionID.HoroscopePvE_16558, ActionID.LadyOfCrownsPvE, ActionID.HeliosConjunctionPvE)]
- protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
- {
- act = null;
- if (BubbleProtec && Player.HasStatus(true, StatusID.CollectiveUnconscious_848)) return false;
-
- if (MicrocosmosPvE.CanUse(out act)) return true;
- if (MicroPrio && Player.HasStatus(true, StatusID.Macrocosmos)) return false;
-
- if (CelestialOppositionPvE.CanUse(out act)) return true;
-
- if (StellarDetonationPvE.CanUse(out act)) return true;
-
- if (HoroscopePvE.CanUse(out act)) return true;
-
- if (HoroscopePvE_16558.CanUse(out act)) return true;
-
- if (LadyOfCrownsPvE.CanUse(out act)) return true;
-
- if (HeliosConjunctionPvE.CanUse(out act)) return true;
- return base.HealAreaAbility(nextGCD, out act);
- }
#endregion
#region GCD Logic
- protected override bool GeneralGCD(out IAction? act)
- {
- act = null;
- if (BubbleProtec && Player.HasStatus(true, StatusID.CollectiveUnconscious_848)) return false;
-
- if (GravityPvE.CanUse(out act)) return true;
-
- if (CombustPvE.CanUse(out act)) return true;
- if (MaleficPvE.CanUse(out act)) return true;
- if (CombustPvE.CanUse(out act, skipStatusProvideCheck: DOTUpkeep)) return true;
-
- return base.GeneralGCD(out act);
- }
-
[RotationDesc(ActionID.AspectedBeneficPvE, ActionID.BeneficIiPvE, ActionID.BeneficPvE)]
protected override bool HealSingleGCD(out IAction? act)
{
@@ -241,6 +222,20 @@ protected override bool HealAreaGCD(out IAction? act)
if (HeliosPvE.CanUse(out act)) return true;
return base.HealAreaGCD(out act);
}
+
+ protected override bool GeneralGCD(out IAction? act)
+ {
+ act = null;
+ if (BubbleProtec && Player.HasStatus(true, StatusID.CollectiveUnconscious_848)) return false;
+
+ if (GravityPvE.CanUse(out act)) return true;
+
+ if (CombustPvE.CanUse(out act)) return true;
+ if (MaleficPvE.CanUse(out act)) return true;
+ if (CombustPvE.CanUse(out act, skipStatusProvideCheck: DOTUpkeep)) return true;
+
+ return base.GeneralGCD(out act);
+ }
#endregion
#region Extra Methods
diff --git a/BasicRotations/Healer/zAST_BETA.cs b/BasicRotations/Healer/zAST_BETA.cs
deleted file mode 100644
index e9a09f0..0000000
--- a/BasicRotations/Healer/zAST_BETA.cs
+++ /dev/null
@@ -1,187 +0,0 @@
-namespace DefaultRotations.Healer;
-
-[Rotation("zAST Beta", CombatType.PvE, GameVersion = "7.05")]
-[SourceCode(Path = "main/DefaultRotations/Healer/zAST_BETA.cs")]
-[Api(3)]
-public sealed class zAST_BETA : AstrologianRotation
-{
- #region Config Options
-
- [Range(4, 20, ConfigUnitType.Seconds)]
- [RotationConfig(CombatType.PvE, Name = "Use Earthly Star during countdown timer.")]
- public float UseEarthlyStarTime { get; set; } = 15;
-
- [RotationConfig(CombatType.PvE, Name = "Use DOT while moving even if it does not need refresh (disabling is a damage down)")]
- public bool DOTUpkeep { get; set; } = true;
- #endregion
-
- #region Countdown Logic
- protected override IAction? CountDownAction(float remainTime)
- {
- if (remainTime < MaleficPvE.Info.CastTime + CountDownAhead
- && MaleficPvE.CanUse(out var act)) return act;
- if (remainTime < 3 && UseBurstMedicine(out act)) return act;
- if (remainTime is < 4 and > 3 && AspectedBeneficPvE.CanUse(out act)) return act;
- if (remainTime < UseEarthlyStarTime
- && EarthlyStarPvE.CanUse(out act)) return act;
- if (remainTime < 30 && AstralDrawPvE.CanUse(out act)) return act;
-
- return base.CountDownAction(remainTime);
- }
- #endregion
-
- #region Additional oGCD Logic
-
- [RotationDesc(ActionID.HoroscopePvE, ActionID.NeutralSectPvE, ActionID.SynastryPvE)]
- protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
- {
- if (base.EmergencyAbility(nextGCD, out act)) return true;
-
- if (!InCombat) return false;
-
- if (nextGCD.IsTheSameTo(true, AspectedHeliosPvE, HeliosPvE, HeliosConjunctionPvE))
- {
- if (HoroscopePvE.CanUse(out act)) return true;
- if (NeutralSectPvE.CanUse(out act)) return true;
- }
-
- if (nextGCD.IsTheSameTo(true, BeneficPvE, BeneficIiPvE, AspectedBeneficPvE))
- {
- if (SynastryPvE.CanUse(out act)) return true;
- }
- return base.EmergencyAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.SunSignPvE)]
- protected sealed override bool DefenseAreaAbility(IAction nextGCD, out IAction? act)
- {
- if (SunSignPvE.CanUse(out act)) return true;
- return base.DefenseAreaAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.ExaltationPvE, ActionID.TheSpirePvE, ActionID.TheBolePvE)]
- protected override bool DefenseSingleAbility(IAction nextGCD, out IAction? act)
- {
- if (InCombat && TheSpirePvE.CanUse(out act)) return true;
- if (InCombat && TheBolePvE.CanUse(out act)) return true;
-
- if (ExaltationPvE.CanUse(out act)) return true;
- return base.DefenseSingleAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.CelestialOppositionPvE, ActionID.StellarDetonationPvE, ActionID.HoroscopePvE, ActionID.HoroscopePvE_16558, ActionID.LadyOfCrownsPvE, ActionID.HeliosConjunctionPvE)]
- protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
- {
- if (CelestialOppositionPvE.CanUse(out act)) return true;
-
- if (StellarDetonationPvE.CanUse(out act)) return true;
-
- if (HoroscopePvE.CanUse(out act)) return true;
-
- if (HoroscopePvE_16558.CanUse(out act)) return true;
-
- if (LadyOfCrownsPvE.CanUse(out act)) return true;
-
- if (HeliosConjunctionPvE.CanUse(out act)) return true;
- return base.HealAreaAbility(nextGCD, out act);
- }
-
- [RotationDesc(ActionID.TheArrowPvE, ActionID.TheEwerPvE, ActionID.EssentialDignityPvE,
- ActionID.CelestialIntersectionPvE)]
- protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
- {
- if (MicrocosmosPvE.CanUse(out act)) return true;
-
- if (InCombat && TheArrowPvE.CanUse(out act)) return true;
-
- if (InCombat && TheEwerPvE.CanUse(out act)) return true;
-
- if (EssentialDignityPvE.CanUse(out act)) return true;
-
- if (CelestialIntersectionPvE.CanUse(out act, usedUp: true)) return true;
-
- return base.HealSingleAbility(nextGCD, out act);
- }
- #endregion
-
- #region oGCD Logic
-
- protected override bool GeneralAbility(IAction nextGCD, out IAction? act)
- {
- if (InCombat && TheBalancePvE.CanUse(out act)) return true;
- if (InCombat && TheSpearPvE.CanUse(out act)) return true;
- if (AstralDrawPvE.CanUse(out act)) return true;
- if (UmbralDrawPvE.CanUse(out act)) return true;
- if (MinorArcanaPvE.CanUse(out act)) return true;
- return base.GeneralAbility(nextGCD, out act);
- }
-
- protected override bool AttackAbility(IAction nextGCD, out IAction? act)
- {
- if (IsBurst && !IsMoving
- && DivinationPvE.CanUse(out act)) return true;
-
- if (AstralDrawPvE.CanUse(out act, usedUp: IsBurst)) return true;
-
- if (InCombat)
- {
- if (IsMoving && LightspeedPvE.CanUse(out act)) return true;
-
- if (!IsMoving)
- {
- if (!Player.HasStatus(true, StatusID.EarthlyDominance, StatusID.GiantDominance))
- {
- if (EarthlyStarPvE.CanUse(out act)) return true;
- }
- }
-
- {
- if (LordOfCrownsPvE.CanUse(out act)) return true;
- }
- }
-
- if (OraclePvE.CanUse(out act, skipAoeCheck: true)) return true;
- return base.AttackAbility(nextGCD, out act);
- }
- #endregion
-
- #region GCD Logic
-
- [RotationDesc(ActionID.AspectedHeliosPvE, ActionID.HeliosPvE)]
- protected override bool HealAreaGCD(out IAction? act)
- {
- if (HeliosConjunctionPvE.CanUse(out act)) return true;
-
- if (HeliosPvE.CanUse(out act)) return true;
- return base.HealAreaGCD(out act);
- }
-
- [RotationDesc(ActionID.AspectedBeneficPvE, ActionID.BeneficIiPvE, ActionID.BeneficPvE)]
- protected override bool HealSingleGCD(out IAction? act)
- {
- if (AspectedBeneficPvE.CanUse(out act) && (IsMoving)) return true;
-
- if (BeneficIiPvE.CanUse(out act)) return true;
-
- if (BeneficPvE.CanUse(out act)) return true;
-
- return base.HealSingleGCD(out act);
- }
-
- protected override bool GeneralGCD(out IAction? act)
- {
- if (MacrocosmosPvE.CanUse(out act)) return true;
-
- if (GravityIiPvE.CanUse(out act)) return true;
-
- if (CombustIiiPvE.CanUse(out act)) return true;
-
- if (FallMaleficPvE.CanUse(out act)) return true;
-
- if (CombustIiiPvE.CanUse(out act, skipStatusProvideCheck: DOTUpkeep)) return true;
-
- return base.GeneralGCD(out act);
- }
-
- #endregion
-}
diff --git a/BasicRotations/Magical/zPCT_TESTING.cs b/BasicRotations/Magical/zPCT_TESTING.cs
index 35d83d0..ae03de7 100644
--- a/BasicRotations/Magical/zPCT_TESTING.cs
+++ b/BasicRotations/Magical/zPCT_TESTING.cs
@@ -16,10 +16,10 @@ public sealed class zPCT_TESTING : PictomancerRotation
public bool RainbowDripSwift { get; set; } = true;
[RotationConfig(CombatType.PvE, Name = "Use swiftcast on Motif")]
- public bool MotifSwiftCastSwift { get; set; } = false;
+ public bool MotifSwiftCastSwift { get; set; } = true;
[RotationConfig(CombatType.PvE, Name = "Which Motif")]
- public CanvasFlags MotifSwiftCast { get; set; } = CanvasFlags.Pom;
+ public CanvasFlags MotifSwiftCast { get; set; } = CanvasFlags.Weapon;
#region Countdown logic
// Defines logic for actions to take during the countdown before combat starts.
@@ -174,29 +174,28 @@ protected override bool AttackAbility(IAction nextGCD, out IAction? act)
protected override bool GeneralGCD(out IAction? act)
{
// Weapon Painting Burst
- if (HammerStampPvE.CanUse(out act, skipCastingCheck: true, skipComboCheck: true)) return true;
+ if (HammerStampPvE.CanUse(out act, skipComboCheck: true)) return true;
if (HolyCometMoving && IsMoving)
{
- if (HolyInWhitePvE.CanUse(out act, skipCastingCheck: true)) return true;
+ if (HolyInWhitePvE.CanUse(out act)) return true;
}
//Use up paint if in Hyperphantasia
if (Player.HasStatus(true, StatusID.Hyperphantasia))
{
- if (CometInBlackPvE.CanUse(out act, skipCastingCheck: true)) return true;
+ if (CometInBlackPvE.CanUse(out act)) return true;
}
//Paint overcap protection
if (Paint == HolyCometMax)
{
- if (CometInBlackPvE.CanUse(out act, skipCastingCheck: true)) return true;
- if (HolyInWhitePvE.CanUse(out act, skipCastingCheck: true)) return true;
+ if (HolyInWhitePvE.CanUse(out act)) return true;
}
// Landscape Paining Burst
if (RainbowDripPvE.CanUse(out act)) return true;
- if (StarPrismPvE.CanUse(out act, skipCastingCheck: true)) return true;
+ if (StarPrismPvE.CanUse(out act)) return true;
//Advanced Paintings
if (StarrySkyMotifPvE.CanUse(out act)) return true;
diff --git a/BasicRotations/RebornRotations.csproj b/BasicRotations/RebornRotations.csproj
index ede4df2..09516cb 100644
--- a/BasicRotations/RebornRotations.csproj
+++ b/BasicRotations/RebornRotations.csproj
@@ -16,7 +16,7 @@
-
+