Proper FoF stack handling

This commit is contained in:
Bobblybook
2024-07-23 01:58:09 +10:00
parent 5635b90bbe
commit 9fd5005030
2 changed files with 10 additions and 2 deletions

View File

@@ -21,3 +21,11 @@ bool MageArmorTrigger::IsActive()
Unit* target = GetTarget();
return !botAI->HasAura("ice armor", target) && !botAI->HasAura("frost armor", target) && !botAI->HasAura("molten armor", target) && !botAI->HasAura("mage armor", target);
}
bool FingersOfFrostSingleTrigger::IsActive()
{
// Fingers of Frost "stack" count is always 1.
// The value is instead stored in the charges.
Aura *aura = botAI->GetAura(getName(), GetTarget(), false, true, -1);
return (aura && aura->GetCharges() == 1);
}

View File

@@ -26,7 +26,6 @@ class ArcaneIntellectTrigger : public BuffTrigger
{
public:
ArcaneIntellectTrigger(PlayerbotAI* botAI) : BuffTrigger(botAI, "arcane intellect", 2 * 2000) { }
bool IsActive() override;
};
@@ -34,7 +33,6 @@ class MageArmorTrigger : public BuffTrigger
{
public:
MageArmorTrigger(PlayerbotAI* botAI) : BuffTrigger(botAI, "mage armor", 5 * 2000) { }
bool IsActive() override;
};
@@ -78,12 +76,14 @@ class FingersOfFrostSingleTrigger : public HasAuraStackTrigger
{
public:
FingersOfFrostSingleTrigger(PlayerbotAI* ai) : HasAuraStackTrigger(ai, "fingers of frost", 1, 1) {}
bool IsActive() override;
};
class FingersOfFrostDoubleTrigger : public HasAuraStackTrigger
{
public:
FingersOfFrostDoubleTrigger(PlayerbotAI* ai) : HasAuraStackTrigger(ai, "fingers of frost", 2, 1) {}
// bool IsActive() override;
};
class BrainFreezeTrigger : public HasAuraTrigger