Skip to content

Commit

Permalink
Merge pull request #571 from DeviousCrypto/PLD-PvP-Fixes
Browse files Browse the repository at this point in the history
Paladin PVP stuff, and cleaned up MP usage across TankPvP
  • Loading branch information
LTS-FFXIV authored Jan 15, 2025
2 parents e71dc37 + 7fad717 commit e7b6964
Show file tree
Hide file tree
Showing 3 changed files with 121 additions and 3 deletions.
5 changes: 5 additions & 0 deletions RotationSolver.Basic/Rotations/Basic/GunbreakerRotation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -485,11 +485,13 @@ static partial void ModifyWickedTalonPvP(ref ActionSetting setting)
static partial void ModifyHypervelocityPvP(ref ActionSetting setting)
{
setting.ActionCheck = () => HypervelocityPvPReady;
setting.MPOverride = () => 0;
}

static partial void ModifyFatedBrandPvP(ref ActionSetting setting)
{
setting.ActionCheck = () => FatedBrandPvPReady;
setting.MPOverride = () => 0;
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1,
Expand All @@ -499,16 +501,19 @@ static partial void ModifyFatedBrandPvP(ref ActionSetting setting)
static partial void ModifyJugularRipPvP(ref ActionSetting setting)
{
setting.ActionCheck = () => JugularRipPvPReady;
setting.MPOverride = () => 0;
}

static partial void ModifyAbdomenTearPvP(ref ActionSetting setting)
{
setting.ActionCheck = () => AbdomenTearPvPReady;
setting.MPOverride = () => 0;
}

static partial void ModifyEyeGougePvP(ref ActionSetting setting)
{
setting.ActionCheck = () => EyeGougePvPReady;
setting.MPOverride = () => 0;
}
#endregion

Expand Down
117 changes: 114 additions & 3 deletions RotationSolver.Basic/Rotations/Basic/PaladinRotation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -115,12 +115,12 @@ public override void DisplayStatus()
#endregion

private protected sealed override IBaseAction TankStance => IronWillPvE;

#region PvE
static partial void ModifyFastBladePvE(ref ActionSetting setting)
{

}

static partial void ModifyFightOrFlightPvE(ref ActionSetting setting)
{
setting.StatusProvide = [StatusID.GoringBladeReady];
Expand Down Expand Up @@ -391,10 +391,121 @@ static partial void ModifySupplicationPvE(ref ActionSetting setting)
setting.ActionCheck = () => SupplicationReady;
setting.StatusProvide = [StatusID.SepulchreReady];
}
#endregion
#region PvP
/// <summary>
///
/// </summary>
public static bool BladeOfTruthPvPReady => Service.GetAdjustedActionId(ActionID.BladeOfFaithPvP) == ActionID.BladeOfTruthPvP;

/// <summary>
///
/// </summary>
public static bool BladeOfValorPvPReady => Service.GetAdjustedActionId(ActionID.BladeOfFaithPvP) == ActionID.BladeOfValorPvP;

/// <summary>
///
/// </summary>
public static bool ConfiteorPvPReady => Service.GetAdjustedActionId(ActionID.ImperatorPvP) == ActionID.ConfiteorPvP;
static partial void ModifyFastBladePvP(ref ActionSetting setting)
{

}

static partial void ModifyRiotBladePvP(ref ActionSetting setting)
{
setting.ComboIds = [ActionID.FastBladePvP];
}

static partial void ModifyRoyalAuthorityPvP(ref ActionSetting setting)
{
setting.ComboIds = [ActionID.RiotBladePvP];
}

static partial void ModifyAtonementPvP(ref ActionSetting setting)
{
setting.StatusNeed = [StatusID.AtonementReady_2015];
setting.MPOverride = () => 0;
}

static partial void ModifySupplicationPvP(ref ActionSetting setting)
{
setting.StatusNeed = [StatusID.SupplicationReady_4281];
setting.MPOverride = () => 0;
}

static partial void ModifySepulchrePvP(ref ActionSetting setting)
{
setting.StatusNeed = [StatusID.SepulchreReady_4282];
setting.MPOverride = () => 0;
}

static partial void ModifyHolySpiritPvP(ref ActionSetting setting)
{

}

static partial void ModifyShieldSmitePvP(ref ActionSetting setting)
{
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1
};
}

static partial void ModifyImperatorPvP(ref ActionSetting setting)
{
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1
};
}

static partial void ModifyHolySheltronPvP(ref ActionSetting setting)
{
setting.IsFriendly = true;
}

static partial void ModifyConfiteorPvP(ref ActionSetting setting)
{
setting.ActionCheck = () => ConfiteorPvPReady;
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1
};
}

// PvP
static partial void ModifyIntervenePvP(ref ActionSetting setting)
{
setting.SpecialType = SpecialActionType.MovingForward;
}

static partial void ModifyBladeOfFaithPvP(ref ActionSetting setting)
{
setting.StatusNeed = [StatusID.BladeOfFaithReady];
setting.MPOverride = () => 0;
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1
};
}

static partial void ModifyBladeOfTruthPvP(ref ActionSetting setting)
{
// setting.ActionCheck = () => BladeOfTruthPvPReady;
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1
};
}

static partial void ModifyBladeOfValorPvP(ref ActionSetting setting)
{
// setting.ActionCheck = () => BladeOfValorPvPReady;
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1
};
}
#endregion
}
2 changes: 2 additions & 0 deletions RotationSolver.Basic/Rotations/Basic/WarriorRotation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,7 @@ static partial void ModifyPrimalRendPvP(ref ActionSetting setting)
static partial void ModifyPrimalRuinationPvP(ref ActionSetting setting)
{
setting.StatusNeed = [StatusID.PrimalRuinationReady_4285];
setting.MPOverride = () => 0;
setting.CreateConfig = () => new ActionConfig()
{
AoeCount = 1,
Expand Down Expand Up @@ -399,6 +400,7 @@ static partial void ModifyBloodwhettingPvP(ref ActionSetting setting)
static partial void ModifyChaoticCyclonePvP(ref ActionSetting setting)
{
setting.StatusNeed = [StatusID.ChaoticCycloneReady];
setting.MPOverride = () => 0;
}
#endregion

Expand Down

0 comments on commit e7b6964

Please sign in to comment.