Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PVP] Changes and fixes wave 2 #113

Closed
wants to merge 12 commits into from
21 changes: 18 additions & 3 deletions WrathCombo/Combos/CustomComboPreset.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5357,9 +5357,14 @@ The three digets after RDM.JobID can be used to reorder items in the list
[CustomComboInfo("Wreath of Fire (Elemental Weave) Option", "Adds Wreath of Fire to Burst Mode when the target is under Guard status.", BLM.JobID)]
BLMPvP_BurstMode_WreathOfFire = 112006,

[ParentCombo(BLMPvP_BurstMode_WreathOfFire)]
[PvPCustomCombo]
[CustomComboInfo("Wreath of Fire (Elemental Weave) Execute Option", "Adds Wreath of Fire to Burst Mode when the target is under selected %", BLM.JobID)]
BLMPvP_BurstMode_WreathOfFireExecute = 112010,

[ParentCombo(BLMPvP_BurstMode)]
[PvPCustomCombo]
[CustomComboInfo("Wreath of Ice (Elemental Weave) Option", "Adds Wreath of Fire to Burst Mode when the target is under Guard status.", BLM.JobID)]
[CustomComboInfo("Wreath of Ice (Elemental Weave) Option", "Adds Wreath of Ice to Burst Mode when player is below set threshold", BLM.JobID)]
BLMPvP_BurstMode_WreathOfIce = 112007,

[ParentCombo(BLMPvP_BurstMode)]
Expand All @@ -5372,7 +5377,7 @@ The three digets after RDM.JobID can be used to reorder items in the list
[CustomComboInfo("Frost Star Option", "Adds Frost Star to Burst Mode.", BLM.JobID)]
BLMPvP_BurstMode_FrostStar = 112009,

// Last value = 112009
// Last value = 112010

#endregion

Expand Down Expand Up @@ -5426,7 +5431,17 @@ The three digets after RDM.JobID can be used to reorder items in the list
[CustomComboInfo("Curing Waltz Option", "Adds Curing Waltz to the combo when available, and your HP is at or below the set percentage.", DNC.JobID)]
DNCPvP_BurstMode_CuringWaltz = 114002,

// Last value = 114002
[PvPCustomCombo]
[ParentCombo(DNCPvP_BurstMode)]
[CustomComboInfo("Dance Partner Reminder Option", "Adds Closed Position reminder when you have none", DNC.JobID)]
DNCPvP_BurstMode_Partner = 114003,

[PvPCustomCombo]
[ParentCombo(DNCPvP_BurstMode)]
[CustomComboInfo("En Avant Option", "Uses En Avant if available and buff is missing to boost 1 2 combo damage.", DNC.JobID)]
DNCPvP_BurstMode_Dash = 114004,

// Last value = 114004

#endregion

Expand Down
16 changes: 15 additions & 1 deletion WrathCombo/Combos/PvE/BLM/BLM_Config.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ public static UserInt
BLM_AoE_Triplecast_HoldCharges = new("BLM_AoE_Triplecast_HoldCharges", 0),
BLM_AoE_UsePolyglot_HoldCharges = new("BLM_AoE_UsePolyglot_HoldCharges", 1),
BLM_AoE_UsePolyglotMoving_HoldCharges = new("BLM_AoE_UsePolyglotMoving_HoldCharges", 0),
BLM_AoE_ThunderHP = new("BLM_AoE_ThunderHP", 5);
BLM_AoE_ThunderHP = new("BLM_AoE_ThunderHP", 5),
BLMPvP_BurstMode_WreathOfIce = new("BLMPvP_BurstMode_WreathOfIce", 0),
BLMPvP_BurstMode_WreathOfFireExecute = new("BLMPvP_BurstMode_WreathOfFireExecute", 0);

public static UserFloat
BLM_ST_Triplecast_ChargeTime = new("BLM_ST_Triplecast_ChargeTime", 20),
Expand Down Expand Up @@ -89,6 +91,18 @@ internal static void Draw(CustomComboPreset preset)
"Stop Using When Target HP% is at or Below (Set to 0 to Disable This Check)");

break;

case CustomComboPreset.BLMPvP_BurstMode_WreathOfIce:
DrawSliderInt(0, 100, BLMPvP_BurstMode_WreathOfIce,
"Use Wreath of ice below this threshold");

break;

case CustomComboPreset.BLMPvP_BurstMode_WreathOfFireExecute:
DrawSliderInt(0, 100, BLMPvP_BurstMode_WreathOfFireExecute,
"Use Wreath of Fire below this % threshold");

break;
}
}
}
Expand Down
7 changes: 6 additions & 1 deletion WrathCombo/Combos/PvE/DNC/DNC_Config.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public static readonly UserInt

public static readonly UserInt
DNCVariantCurePercent = new("DNCVariantCurePercent"); // Variant Cure - player HP% threshold

internal static void Draw(CustomComboPreset preset)
{
switch (preset)
Expand Down Expand Up @@ -156,6 +156,11 @@ internal static void Draw(CustomComboPreset preset)
"Curing Waltz HP% - caps at 90 to prevent waste.");

break;

case CustomComboPreset.DNCPvP_BurstMode_Dash:
UserConfig.DrawSliderInt(0, 3, DNCPvP.Config.DNCPvP_EnAvantCharges, "How many to save for manual");

break;
}
}
}
Expand Down
24 changes: 13 additions & 11 deletions WrathCombo/Combos/PvP/BLMPVP.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ public const uint
Flare = 29651,
Blizzard4 = 29654,
Freeze = 29655,
Foul = 29371,
Lethargy = 41510,
ElementalWeave = 41475,
SoulResonance = 29662,
Expand All @@ -28,8 +27,9 @@ public const ushort
AstralFire1 = 3212,
AstralFire2 = 3213,
AstralFire3 = 3381,
UmbralIce2 = 3214,
UmbralIce3 = 3215,
UmbralIce1 = 3214,
UmbralIce2 = 3215,
UmbralIce3 = 3382,
Burst = 3221,
SoulResonance = 3222,
Polyglot = 3169,
Expand All @@ -49,7 +49,8 @@ public const ushort
public static class Config
{
public const string
BLMPvP_WreathOfIce = "BLMPvP_WreathOfIce";
BLMPvP_BurstMode_WreathOfIce = "BLMPvP_BurstMode_WreathOfIce",
BLMPvP_BurstMode_WreathOfFireExecute = "BLMPvP_BurstMode_WreathOfFireExecute";

}

Expand All @@ -66,7 +67,8 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim

if (IsEnabled(CustomComboPreset.BLMPvP_BurstMode_WreathOfFire))
{
if (IsOffCooldown(ElementalWeave) && TargetHasEffectAny(PvPCommon.Buffs.Guard) && canWeave && (HasEffect(Buffs.AstralFire1) || HasEffect(Buffs.AstralFire2) || HasEffect(Buffs.AstralFire3)))
if (IsOffCooldown(ElementalWeave) && (TargetHasEffectAny(PvPCommon.Buffs.Guard) || GetTargetHPPercent() < GetOptionValue(Config.BLMPvP_BurstMode_WreathOfFireExecute) && IsEnabled(CustomComboPreset.BLMPvP_BurstMode_WreathOfFireExecute))
&& canWeave && (HasEffect(Buffs.AstralFire1) || HasEffect(Buffs.AstralFire2) || HasEffect(Buffs.AstralFire3)))
return OriginalHook(ElementalWeave);
}

Expand All @@ -79,7 +81,7 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim
return Xenoglossy;

if (IsEnabled(CustomComboPreset.BLMPvP_BurstMode_AetherialManip) &&
GetCooldown(AetherialManipulation).RemainingCharges > 0 &&
ActionReady(AetherialManipulation) &&
!InMeleeRange() && IsOffCooldown(Burst) && canWeave)
return AetherialManipulation;

Expand All @@ -104,14 +106,11 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim
if (IsEnabled(CustomComboPreset.BLMPvP_BurstMode_FrostStar) && HasEffect(Buffs.ElementalStar))
return OriginalHook(SoulResonance);

if (IsEnabled(CustomComboPreset.BLMPvP_BurstMode_WreathOfIce) && IsOffCooldown(ElementalWeave) && canWeave && PlayerHealthPercentageHp() <= GetOptionValue(Config.BLMPvP_WreathOfIce))
return OriginalHook(ElementalWeave);

if (IsEnabled(CustomComboPreset.BLMPvP_BurstMode_Xenoglossy) && HasCharges(Xenoglossy))
return Foul;
return Xenoglossy;

if (IsEnabled(CustomComboPreset.BLMPvP_BurstMode_AetherialManip) &&
GetCooldown(AetherialManipulation).RemainingCharges > 0 &&
ActionReady(AetherialManipulation) &&
!InMeleeRange() &&
IsOffCooldown(Burst) &&
canWeave)
Expand All @@ -128,6 +127,9 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim
return Paradox;
}

if (IsEnabled(CustomComboPreset.BLMPvP_BurstMode_WreathOfIce) && IsOffCooldown(ElementalWeave) && canWeave && PlayerHealthPercentageHp() <= GetOptionValue(Config.BLMPvP_BurstMode_WreathOfIce)
&& (HasEffect(Buffs.UmbralIce1) || HasEffect(Buffs.UmbralIce2) || HasEffect(Buffs.UmbralIce3)))
return OriginalHook(ElementalWeave);
edewen marked this conversation as resolved.
Show resolved Hide resolved
}

return actionID;
Expand Down
20 changes: 15 additions & 5 deletions WrathCombo/Combos/PvP/DNCPVP.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,14 @@ internal const ushort
StarfallDance = 3161,
HoningDance = 3162,
Acclaim = 3163,
HoningOvation = 3164;
HoningOvation = 3164,
ClosedPosition = 2026;
}
public static class Config
{
public const string
DNCPvP_WaltzThreshold = "DNCWaltzThreshold";
DNCPvP_WaltzThreshold = "DNCWaltzThreshold",
DNCPvP_EnAvantCharges = "DNCPvP_EnAvantCharges";
}

internal class DNCPvP_BurstMode : CustomCombo
Expand All @@ -59,9 +61,14 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim
var distance = GetTargetDistance();
var HPThreshold = PluginConfiguration.GetCustomIntValue(Config.DNCPvP_WaltzThreshold);
var HP = PlayerHealthPercentageHp();
bool enemyGuarded = TargetHasEffectAny(PvPCommon.Buffs.Guard);

// Honing Dance Option
if (IsEnabled(CustomComboPreset.DNCPvP_BurstMode_HoningDance) && honingDanceReady && HasTarget() && distance <= 5)

if (IsEnabled(CustomComboPreset.DNCPvP_BurstMode_Partner) && ActionReady(ClosedPosition) && !HasEffect(Buffs.ClosedPosition) & GetPartyMembers().Count > 1)
return ClosedPosition;

if (IsEnabled(CustomComboPreset.DNCPvP_BurstMode_HoningDance) && honingDanceReady && HasTarget() && distance <= 5 && !enemyGuarded)
{
if (HasEffect(Buffs.Acclaim) && acclaimStacks < 4)
return WHM.Assize;
Expand All @@ -76,12 +83,15 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim
return OriginalHook(CuringWaltz);

// Fan Dance weave
if (IsOffCooldown(FanDance) && distance < 13) // 2y below max to avoid waste
if (IsOffCooldown(FanDance) && distance < 13 && !enemyGuarded) // 2y below max to avoid waste
return OriginalHook(FanDance);

if (IsEnabled(CustomComboPreset.DNCPvP_BurstMode_Dash) && !HasEffect(Buffs.EnAvant) && GetRemainingCharges(EnAvant) > GetOptionValue(Config.DNCPvP_EnAvantCharges))
return EnAvant;
edewen marked this conversation as resolved.
Show resolved Hide resolved
}

// Starfall Dance
if (!starfallDance && starfallDanceReady && distance < 20) // 5y below max to avoid waste
if (!starfallDance && starfallDanceReady && distance < 20 && !enemyGuarded) // 5y below max to avoid waste
return OriginalHook(StarfallDance);
}

Expand Down
18 changes: 9 additions & 9 deletions WrathCombo/Combos/PvP/MNKPVP.cs
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,14 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim

if (!PvPCommon.IsImmuneToDamage())
{
if (IsEnabled(CustomComboPreset.MNKPvP_Burst_RisingPhoenix))
{
if (!HasEffect(Buffs.FireResonance) && GetRemainingCharges(RisingPhoenix) > 1 || WasLastWeaponskill(PouncingCoeurl) && GetRemainingCharges(RisingPhoenix) > 0)
return OriginalHook(RisingPhoenix);
if (HasEffect(Buffs.FireResonance) && WasLastWeaponskill(PouncingCoeurl))
return actionID;
}

if (IsEnabled(CustomComboPreset.MNKPvP_Burst_RiddleOfEarth) && IsOffCooldown(RiddleOfEarth) && PlayerHealthPercentageHp() <= 95)
return OriginalHook(RiddleOfEarth);

Expand All @@ -61,18 +69,10 @@ protected override uint Invoke(uint actionID, uint lastComboMove, float comboTim

if (CanWeave(actionID))
{

if (IsEnabled(CustomComboPreset.MNKPvP_Burst_RiddleOfEarth) && HasEffect(Buffs.EarthResonance) && GetBuffRemainingTime(Buffs.EarthResonance) < 6)
if (IsEnabled(CustomComboPreset.MNKPvP_Burst_RiddleOfEarth) && HasEffect(Buffs.EarthResonance) && GetBuffRemainingTime(Buffs.EarthResonance) < 6)
return OriginalHook(EarthsReply);
}


if (IsEnabled(CustomComboPreset.MNKPvP_Burst_RisingPhoenix))
{
if (!HasEffect(Buffs.FireResonance) && GetRemainingCharges(RisingPhoenix) > 1 || WasLastWeaponskill(PouncingCoeurl) && GetRemainingCharges(RisingPhoenix) > 0)
return OriginalHook(RisingPhoenix);
}

if (IsEnabled(CustomComboPreset.MNKPvP_Burst_FlintsReply))
{
if (GetRemainingCharges(FlintsReply) > 0 && (!WasLastAction(LeapingOpo) || !WasLastAction(RisingRaptor) || !WasLastAction(PouncingCoeurl)) || HasEffect(Buffs.FiresRumination) && !WasLastAction(PouncingCoeurl))
Expand Down