Skip to content

Commit

Permalink
Merge pull request #470 from ShalolaAuthor/main
Browse files Browse the repository at this point in the history
make the card status public, and use the new status internaly
  • Loading branch information
LTS-FFXIV authored Dec 12, 2024
2 parents 4fe1a8a + 385643b commit e09ac2d
Showing 1 changed file with 35 additions and 6 deletions.
41 changes: 35 additions & 6 deletions RotationSolver.Basic/Rotations/Basic/AstrologianRotation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,35 @@ partial class AstrologianRotation
/// NONE = 0, BALANCE = 1, BOLE = 2, ARROW = 3, SPEAR = 4, EWERS = 5, SPIRE = 6
/// </summary>
protected static CardType[] DrawnCard => JobGauge.DrawnCards;
/// <summary>
///
/// </summary>
public static bool HasBalance => DrawnCard.Any(card => card == CardType.BALANCE);

/// <summary>
///
/// </summary>
public static bool HasBole => DrawnCard.Any(card => card == CardType.BOLE);

/// <summary>
///
/// </summary>
public static bool HasArrow => DrawnCard.Any(card => card == CardType.ARROW);

/// <summary>
///
/// </summary>
public static bool HasSpear => DrawnCard.Any(card => card == CardType.SPEAR);

/// <summary>
///
/// </summary>
public static bool HasEwer => DrawnCard.Any(card => card == CardType.EWER);

/// <summary>
///
/// </summary>
public static bool HasSpire => DrawnCard.Any(card => card == CardType.SPIRE);

/// <summary>
/// Indicates the state of Minor Arcana and which card will be used next when activating Minor Arcana, LORD = 7, LADY = 8
Expand Down Expand Up @@ -118,7 +147,7 @@ static partial void ModifyPlayIiiPvE(ref ActionSetting setting) //37021

static partial void ModifyTheBalancePvE(ref ActionSetting setting)
{
setting.ActionCheck = () => DrawnCard.Any(card => card == CardType.BALANCE);
setting.ActionCheck = () => HasBalance;
setting.TargetStatusProvide = [StatusID.TheBalance_3887, StatusID.Weakness,
StatusID.BrinkOfDeath];
setting.TargetType = TargetType.Melee;
Expand All @@ -127,23 +156,23 @@ static partial void ModifyTheBalancePvE(ref ActionSetting setting)

static partial void ModifyTheArrowPvE(ref ActionSetting setting)
{
setting.ActionCheck = () => DrawnCard.Any(card => card == CardType.ARROW);
setting.ActionCheck = () => HasArrow;
setting.TargetStatusProvide = [StatusID.TheArrow_3888, StatusID.BrinkOfDeath];
setting.TargetType = TargetType.BeAttacked;
setting.IsFriendly = true;
}

static partial void ModifyTheSpirePvE(ref ActionSetting setting)
{
setting.ActionCheck = () => DrawnCard.Any(card => card == CardType.SPIRE);
setting.ActionCheck = () => HasSpire;
setting.TargetStatusProvide = [StatusID.TheSpire_3892, StatusID.BrinkOfDeath];
setting.TargetType = TargetType.BeAttacked;
setting.IsFriendly = true;
}

static partial void ModifyTheSpearPvE(ref ActionSetting setting)
{
setting.ActionCheck = () => DrawnCard.Any(card => card == CardType.SPEAR);
setting.ActionCheck = () => HasSpear;
setting.TargetStatusProvide = [StatusID.TheSpear_3889, StatusID.Weakness,
StatusID.BrinkOfDeath];
setting.TargetType = TargetType.Range;
Expand All @@ -152,15 +181,15 @@ static partial void ModifyTheSpearPvE(ref ActionSetting setting)

static partial void ModifyTheBolePvE(ref ActionSetting setting)
{
setting.ActionCheck = () => DrawnCard.Any(card => card == CardType.BOLE);
setting.ActionCheck = () => HasBole;
setting.TargetStatusProvide = [StatusID.TheBole_3890, StatusID.BrinkOfDeath];
setting.TargetType = TargetType.BeAttacked;
setting.IsFriendly = true;
}

static partial void ModifyTheEwerPvE(ref ActionSetting setting)
{
setting.ActionCheck = () => DrawnCard.Any(card => card == CardType.EWER);
setting.ActionCheck = () => HasEwer;
setting.TargetStatusProvide = [StatusID.TheEwer_3891, StatusID.BrinkOfDeath];
setting.TargetType = TargetType.BeAttacked;
setting.IsFriendly = true;
Expand Down

0 comments on commit e09ac2d

Please sign in to comment.