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

Commit

Permalink
Merge commit 'refs/pull/1680/head' of https://github.com/Nik-Potokar/…
Browse files Browse the repository at this point in the history
  • Loading branch information
Taurenkey committed Aug 10, 2024
2 parents 37717bb + a0aa120 commit 0312b5b
Show file tree
Hide file tree
Showing 3 changed files with 81 additions and 0 deletions.
9 changes: 9 additions & 0 deletions XIVSlothCombo/Combos/CustomComboPreset.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4811,6 +4811,15 @@ The three digets after RDM.JobID can be used to reorder items in the list

#endregion

#region VIPER
[PvPCustomCombo]
[ReplaceSkill(VPRPvP.SteelFangs)]
[CustomComboInfo("Burst Mode", "Turns Dual Fang Combo into an all-in-one damage button.", VPRPvP.JobID)]
VPRPvP_Burst = 130000,

// Last value = 130000
#endregion

#region WARRIOR
[PvPCustomCombo]
[CustomComboInfo("Burst Mode", "Turns Heavy Swing into an all-in-one damage button.", WARPvP.JobID)]
Expand Down
1 change: 1 addition & 0 deletions XIVSlothCombo/Combos/PvP/PVPCommon.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ public const ushort
internal class Buffs
{
public const ushort
Sprint = 1342,
Guard = 3054;
}

Expand Down
71 changes: 71 additions & 0 deletions XIVSlothCombo/Combos/PvP/VPRPVP.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
using XIVSlothCombo.CustomComboNS;

namespace XIVSlothCombo.Combos.PvP
{
internal static class VPRPvP
{
public const byte JobID = 41;

internal const uint
SteelFangs = 39157,
HuntersSting = 39159,
BarbarousSlice = 39161,
PiercingFangs = 39158,
SwiftskinsSting = 39160,
RavenousBite = 39163,
HuntersSnap = 39166,
SwiftskinsCoil = 39167,
UncoiledFury = 39168,
SerpentsTail = 39183,
FirstGeneration = 39169,
SecondGeneration = 39170,
ThirdGeneration = 39171,
FourthGeneration = 39172,
Ouroboros = 39173;

internal class VPRPvP_Burst : CustomCombo
{
protected internal override CustomComboPreset Preset { get; } = CustomComboPreset.VPRPvP_Burst;
protected override uint Invoke(uint actionID, uint lastComboMove, float comboTime, byte level)
{
#region Variables
bool canWeave = CanWeave(OriginalHook(actionID));
bool isSerpentsTailPrimed = OriginalHook(SerpentsTail) != SerpentsTail;
bool inGenerationsCombo = OriginalHook(actionID) is FirstGeneration or SecondGeneration or ThirdGeneration or FourthGeneration;
bool inMeleeRange = GetTargetDistance() <= 5;
#endregion

if (actionID is SteelFangs or HuntersSting or BarbarousSlice or PiercingFangs or SwiftskinsSting or RavenousBite)
{
if (HasTarget())
{
// Serpent's Tail
if (isSerpentsTailPrimed && canWeave)
return OriginalHook(SerpentsTail);

if (inMeleeRange)
{
// Ouroboros
if (OriginalHook(HuntersSnap) == Ouroboros && !inGenerationsCombo)
return OriginalHook(HuntersSnap);

// Reawakened
if (inGenerationsCombo)
return OriginalHook(actionID);
}

// Uncoiled Fury
if (IsOffCooldown(UncoiledFury) && (!inMeleeRange || (!HasCharges(HuntersSnap) && OriginalHook(HuntersSnap) != SwiftskinsCoil)))
return OriginalHook(UncoiledFury);

// Hunter's Snap / Swiftskin's Coil
if ((HasCharges(HuntersSnap) && OriginalHook(HuntersSnap) != Ouroboros) || OriginalHook(HuntersSnap) == SwiftskinsCoil)
return OriginalHook(HuntersSnap);
}
}

return actionID;
}
}
}
}

0 comments on commit 0312b5b

Please sign in to comment.