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

Commit

Permalink
Merge pull request #37 from FFXIV-CombatReborn/RSR-Update
Browse files Browse the repository at this point in the history
Rsr update
  • Loading branch information
Toshi authored Apr 13, 2024
2 parents 33e0663 + 9052b2b commit 499b222
Show file tree
Hide file tree
Showing 25 changed files with 253 additions and 412 deletions.
2 changes: 1 addition & 1 deletion BasicRotations/DefaultRotations.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<DalamudLibPath>$(AppData)\XIVLauncher\addon\Hooks\dev\</DalamudLibPath>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="RotationSolverReborn.Basic" Version="4.0.1.3" />
<PackageReference Include="RotationSolverReborn.Basic" Version="4.0.3.2" />
</ItemGroup>
<ItemGroup>
<Reference Include="Dalamud">
Expand Down
24 changes: 12 additions & 12 deletions BasicRotations/Healer/AST_Default.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ public sealed class AST_Default : AstrologianRotation
}

[RotationDesc(ActionID.CelestialIntersectionPvE, ActionID.ExaltationPvE)]
protected override bool DefenseSingleAbility(out IAction? act)
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(out act);
return base.DefenseSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.MacrocosmosPvE)]
Expand All @@ -41,14 +41,14 @@ protected override bool DefenseAreaGCD(out IAction? act)
}

[RotationDesc(ActionID.CollectiveUnconsciousPvE)]
protected override bool DefenseAreaAbility(out IAction? act)
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(out act);
return base.DefenseAreaAbility(nextGCD, out act);
}

protected override bool GeneralGCD(out IAction? act)
Expand Down Expand Up @@ -92,11 +92,11 @@ protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
return base.EmergencyAbility(nextGCD, out act);
}

protected override bool GeneralAbility(out IAction? 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(out act);
return base.GeneralAbility(nextGCD, out act);
}

[RotationDesc(ActionID.AspectedBeneficPvE, ActionID.BeneficIiPvE, ActionID.BeneficPvE)]
Expand All @@ -112,7 +112,7 @@ protected override bool HealSingleGCD(out IAction? act)
return base.HealSingleGCD(out act);
}

protected override bool AttackAbility(out IAction? act)
protected override bool AttackAbility(IAction nextGCD, out IAction? act)
{
if (IsBurst && !IsMoving
&& DivinationPvE.CanUse(out act)) return true;
Expand Down Expand Up @@ -143,12 +143,12 @@ protected override bool AttackAbility(out IAction? act)
if (RedrawPvE.CanUse(out act)) return true;
if (InCombat && PlayCard(out act)) return true;

return base.AttackAbility(out act);
return base.AttackAbility(nextGCD, out act);
}

[RotationDesc(ActionID.EssentialDignityPvE, ActionID.CelestialIntersectionPvE, ActionID.CelestialOppositionPvE,
ActionID.EarthlyStarPvE, ActionID.HoroscopePvE)]
protected override bool HealSingleAbility(out IAction? act)
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;
Expand All @@ -170,11 +170,11 @@ protected override bool HealSingleAbility(out IAction? act)
|| PartyMembersMinHP < 0.3)
&& HoroscopePvE.CanUse(out act)) return true;

return base.HealSingleAbility(out act);
return base.HealSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.CelestialOppositionPvE, ActionID.EarthlyStarPvE, ActionID.HoroscopePvE)]
protected override bool HealAreaAbility(out IAction? act)
protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
{
if (CelestialOppositionPvE.CanUse(out act)) return true;

Expand All @@ -188,6 +188,6 @@ protected override bool HealAreaAbility(out IAction? act)

if (DrawnCrownCard == CardType.LADY && MinorArcanaPvE.CanUse(out act)) return true;

return base.HealAreaAbility(out act);
return base.HealAreaAbility(nextGCD, out act);
}
}
20 changes: 10 additions & 10 deletions BasicRotations/Healer/SCH_Default.cs
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ protected override bool HealSingleGCD(out IAction? act)
}

[RotationDesc(ActionID.AetherpactPvE, ActionID.ProtractionPvE, ActionID.SacredSoilPvE, ActionID.ExcogitationPvE, ActionID.LustratePvE, ActionID.AetherpactPvE)]
protected override bool HealSingleAbility(out IAction? act)
protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
{
var haveLink = PartyMembers.Any(p => p.HasStatus(true, StatusID.FeyUnion_1223));

Expand All @@ -76,14 +76,14 @@ protected override bool HealSingleAbility(out IAction? act)
if (LustratePvE.CanUse(out act)) return true;
if (AetherpactPvE.CanUse(out act) && !haveLink) return true;

return base.HealSingleAbility(out act);
return base.HealSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.ExcogitationPvE)]
protected override bool DefenseSingleAbility(out IAction? act)
protected override bool DefenseSingleAbility(IAction nextGCD, out IAction? act)
{
if (ExcogitationPvE.CanUse(out act)) return true;
return base.DefenseSingleAbility(out act);
return base.DefenseSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.SuccorPvE)]
Expand All @@ -96,7 +96,7 @@ protected override bool HealAreaGCD(out IAction? act)


[RotationDesc(ActionID.SummonSeraphPvE, ActionID.ConsolationPvE, ActionID.WhisperingDawnPvE, ActionID.SacredSoilPvE, ActionID.IndomitabilityPvE)]
protected override bool HealAreaAbility(out IAction? act)
protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
{
//慰藉
if (WhisperingDawnPvE.Cooldown.ElapsedOneChargeAfterGCD(1) || FeyIlluminationPvE.Cooldown.ElapsedOneChargeAfterGCD(1) || FeyBlessingPvE.Cooldown.ElapsedOneChargeAfterGCD(1))
Expand All @@ -110,7 +110,7 @@ protected override bool HealAreaAbility(out IAction? act)
if (SacredSoilPvE.CanUse(out act)) return true;
if (IndomitabilityPvE.CanUse(out act)) return true;

return base.HealAreaAbility(out act);
return base.HealAreaAbility(nextGCD, out act);
}

[RotationDesc(ActionID.SuccorPvE)]
Expand All @@ -121,7 +121,7 @@ protected override bool DefenseAreaGCD(out IAction? act)
}

[RotationDesc(ActionID.FeyIlluminationPvE, ActionID.ExpedientPvE, ActionID.SummonSeraphPvE, ActionID.ConsolationPvE, ActionID.SacredSoilPvE)]
protected override bool DefenseAreaAbility(out IAction? act)
protected override bool DefenseAreaAbility(IAction nextGCD, out IAction? act)
{
if (FeyIlluminationPvE.CanUse(out act)) return true;
if (ExpedientPvE.CanUse(out act)) return true;
Expand All @@ -133,11 +133,11 @@ protected override bool DefenseAreaAbility(out IAction? act)
if (ConsolationPvE.CanUse(out act, usedUp: true)) return true;
if (SacredSoilPvE.CanUse(out act)) return true;

return base.DefenseAreaAbility(out act);
return base.DefenseAreaAbility(nextGCD, out act);
}


protected override bool AttackAbility(out IAction? act)
protected override bool AttackAbility(IAction nextGCD, out IAction? act)
{
if (IsBurst)
{
Expand All @@ -152,7 +152,7 @@ protected override bool AttackAbility(out IAction? act)
if (DissipationPvE.CanUse(out act)) return true;
if (AetherflowPvE.CanUse(out act)) return true;

return base.AttackAbility(out act);
return base.AttackAbility(nextGCD, out act);
}

protected override IAction? CountDownAction(float remainTime)
Expand Down
20 changes: 10 additions & 10 deletions BasicRotations/Healer/SGE_Default.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
}

[RotationDesc(ActionID.HaimaPvE, ActionID.TaurocholePvE, ActionID.PanhaimaPvE, ActionID.KeracholePvE, ActionID.HolosPvE)]
protected override bool DefenseSingleAbility(out IAction? act)
protected override bool DefenseSingleAbility(IAction nextGCD, out IAction? act)
{
if (Addersgall <= 1)
{
Expand All @@ -53,7 +53,7 @@ protected override bool DefenseSingleAbility(out IAction? act)

if (HolosPvE.CanUse(out act, onLastAbility: true)) return true;

return base.DefenseSingleAbility(out act);
return base.DefenseSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.EukrasianDiagnosisPvE)]
Expand All @@ -78,7 +78,7 @@ protected override bool DefenseSingleGCD(out IAction? act)
}

[RotationDesc(ActionID.PanhaimaPvE, ActionID.KeracholePvE, ActionID.HolosPvE)]
protected override bool DefenseAreaAbility(out IAction? act)
protected override bool DefenseAreaAbility(IAction nextGCD, out IAction? act)
{
if (Addersgall <= 1)
{
Expand All @@ -89,7 +89,7 @@ protected override bool DefenseAreaAbility(out IAction? act)

if (HolosPvE.CanUse(out act, onLastAbility: true)) return true;

return base.DefenseAreaAbility(out act);
return base.DefenseAreaAbility(nextGCD, out act);
}

[RotationDesc(ActionID.EukrasianPrognosisPvE)]
Expand All @@ -112,7 +112,7 @@ protected override bool DefenseAreaGCD(out IAction? act)
return base.DefenseAreaGCD(out act);
}

protected override bool GeneralAbility(out IAction? act)
protected override bool GeneralAbility(IAction nextGCD, out IAction? act)
{
if (KardiaPvE.CanUse(out act)) return true;

Expand All @@ -122,7 +122,7 @@ protected override bool GeneralAbility(out IAction? act)

if (PepsisPvE.CanUse(out act)) return true;

return base.GeneralAbility(out act);
return base.GeneralAbility(nextGCD, out act);
}

protected override bool GeneralGCD(out IAction? act)
Expand Down Expand Up @@ -176,7 +176,7 @@ protected override bool GeneralGCD(out IAction? act)
}

[RotationDesc(ActionID.TaurocholePvE, ActionID.KeracholePvE, ActionID.DruocholePvE, ActionID.HolosPvE, ActionID.PhysisPvE, ActionID.PanhaimaPvE)]
protected override bool HealSingleAbility(out IAction? act)
protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
{
if (TaurocholePvE.CanUse(out act)) return true;

Expand Down Expand Up @@ -212,7 +212,7 @@ protected override bool HealSingleAbility(out IAction? act)

if (KeracholePvE.CanUse(out act)) return true;

return base.HealSingleAbility(out act);
return base.HealSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.DiagnosisPvE)]
Expand Down Expand Up @@ -246,7 +246,7 @@ protected override bool HealAreaGCD(out IAction? act)
}

[RotationDesc(ActionID.KeracholePvE, ActionID.PhysisPvE, ActionID.HolosPvE, ActionID.IxocholePvE)]
protected override bool HealAreaAbility(out IAction? act)
protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
{
if (PhysisIiPvE.CanUse(out act)) return true;
if (!PhysisIiPvE.EnoughLevel && PhysisPvE.CanUse(out act)) return true;
Expand All @@ -259,6 +259,6 @@ protected override bool HealAreaAbility(out IAction? act)

if (KeracholePvE.CanUse(out act, onLastAbility: true)) return true;

return base.HealAreaAbility(out act);
return base.HealAreaAbility(nextGCD, out act);
}
}
20 changes: 10 additions & 10 deletions BasicRotations/Healer/WHM_Default.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,15 +52,15 @@ private bool UseLily(out IAction? act)
return false;
}

protected override bool AttackAbility(out IAction? act)
protected override bool AttackAbility(IAction nextGCD, out IAction? act)
{
if (InCombat)
{
if (PresenceOfMindPvE.CanUse(out act)) return true;
if (AssizePvE.CanUse(out act, skipAoeCheck: true)) return true;
}

return base.AttackAbility(out act);
return base.AttackAbility(nextGCD, out act);
}

protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
Expand Down Expand Up @@ -92,7 +92,7 @@ protected override bool HealSingleGCD(out IAction? act)
}

[RotationDesc(ActionID.BenedictionPvE, ActionID.AsylumPvE, ActionID.DivineBenisonPvE, ActionID.TetragrammatonPvE)]
protected override bool HealSingleAbility(out IAction? act)
protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
{
if (BenedictionPvE.CanUse(out act) &&
RegenPvE.Target.Target?.GetHealthRatio() < 0.3) return true;
Expand All @@ -102,7 +102,7 @@ protected override bool HealSingleAbility(out IAction? act)
if (DivineBenisonPvE.CanUse(out act)) return true;

if (TetragrammatonPvE.CanUse(out act)) return true;
return base.HealSingleAbility(out act);
return base.HealSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.AfflatusRapturePvE, ActionID.MedicaIiPvE, ActionID.CureIiiPvE, ActionID.MedicaPvE)]
Expand All @@ -122,14 +122,14 @@ protected override bool HealAreaGCD(out IAction? act)
}

[RotationDesc(ActionID.AsylumPvE)]
protected override bool HealAreaAbility(out IAction? act)
protected override bool HealAreaAbility(IAction nextGCD, out IAction? act)
{
if (AsylumPvE.CanUse(out act)) return true;
return base.HealAreaAbility(out act);
return base.HealAreaAbility(nextGCD, out act);
}

[RotationDesc(ActionID.DivineBenisonPvE, ActionID.AquaveilPvE)]
protected override bool DefenseSingleAbility(out IAction? act)
protected override bool DefenseSingleAbility(IAction nextGCD, out IAction? act)
{
act = null;
if (DivineBenisonPvE.Cooldown.IsCoolingDown && !DivineBenisonPvE.Cooldown.WillHaveOneCharge(15)
Expand All @@ -138,11 +138,11 @@ protected override bool DefenseSingleAbility(out IAction? act)
if (DivineBenisonPvE.CanUse(out act)) return true;

if (AquaveilPvE.CanUse(out act)) return true;
return base.DefenseSingleAbility(out act);
return base.DefenseSingleAbility(nextGCD, out act);
}

[RotationDesc(ActionID.TemperancePvE, ActionID.LiturgyOfTheBellPvE)]
protected override bool DefenseAreaAbility(out IAction? act)
protected override bool DefenseAreaAbility(IAction nextGCD, out IAction? act)
{
act = null;
if (TemperancePvE.Cooldown.IsCoolingDown && !TemperancePvE.Cooldown.WillHaveOneCharge(100)
Expand All @@ -151,7 +151,7 @@ protected override bool DefenseAreaAbility(out IAction? act)
if (TemperancePvE.CanUse(out act)) return true;

if (LiturgyOfTheBellPvE.CanUse(out act, skipAoeCheck: true)) return true;
return base.DefenseAreaAbility(out act);
return base.DefenseAreaAbility(nextGCD, out act);
}

protected override IAction? CountDownAction(float remainTime)
Expand Down
8 changes: 4 additions & 4 deletions BasicRotations/Magical/BLM_Beta.cs
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ private bool NeedToTransposeGoIce(bool usedOne)
return base.CountDownAction(remainTime);
}

protected override bool AttackAbility(out IAction? act)
protected override bool AttackAbility(IAction nextGCD, out IAction? act)
{
if (IsBurst && UseBurstMedicine(out act)) return true;
if (InUmbralIce)
Expand All @@ -72,7 +72,7 @@ protected override bool AttackAbility(out IAction? act)
if (TriplecastPvE.CanUse(out act, gcdCountForAbility: 5)) return true;
}
if (AmplifierPvE.CanUse(out act)) return true;
return base.AttackAbility(out act);
return base.AttackAbility(nextGCD, out act);
}

protected override bool EmergencyAbility(IAction nextGCD, out IAction? act)
Expand Down Expand Up @@ -360,11 +360,11 @@ private bool MaintainStatus(out IAction? act)
}

[RotationDesc(ActionID.BetweenTheLinesPvE, ActionID.LeyLinesPvE)]
protected override bool HealSingleAbility(out IAction? act)
protected override bool HealSingleAbility(IAction nextGCD, out IAction? act)
{
if (BetweenTheLinesPvE.CanUse(out act)) return true;
if (LeyLinesPvE.CanUse(out act)) return true;

return base.HealSingleAbility(out act);
return base.HealSingleAbility(nextGCD, out act);
}
}
Loading

0 comments on commit 499b222

Please sign in to comment.