mod-playerbots/src/strategy/druid/DruidTriggers.cpp
2023-05-29 23:03:21 +08:00

52 lines
1.3 KiB
C++

/*
* Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU GPL v2 license, you may redistribute it and/or modify it under version 2 of the License, or (at your option), any later version.
*/
#include "DruidTriggers.h"
#include "Playerbots.h"
bool MarkOfTheWildOnPartyTrigger::IsActive()
{
return BuffOnPartyTrigger::IsActive() && !botAI->HasAura("gift of the wild", GetTarget());
}
bool MarkOfTheWildTrigger::IsActive()
{
return BuffTrigger::IsActive() && !botAI->HasAura("gift of the wild", GetTarget());
}
bool ThornsOnPartyTrigger::IsActive()
{
return BuffOnPartyTrigger::IsActive() && !botAI->HasAura("thorns", GetTarget());
}
bool MoonfireTrigger::IsActive()
{
return DebuffTrigger::IsActive() && !GetTarget()->HasUnitState(UNIT_STATE_ROOT);
}
bool EntanglingRootsKiteTrigger::IsActive()
{
return DebuffTrigger::IsActive() && AI_VALUE(uint8, "attacker count") < 3 && !GetTarget()->GetPower(POWER_MANA);
}
bool ThornsTrigger::IsActive()
{
return BuffTrigger::IsActive() && !botAI->HasAura("thorns", GetTarget());
}
bool BearFormTrigger::IsActive()
{
return !botAI->HasAnyAuraOf(bot, "bear form", "dire bear form", nullptr);
}
bool TreeFormTrigger::IsActive()
{
return !botAI->HasAura(33891, bot);
}
bool CatFormTrigger::IsActive()
{
return !botAI->HasAura("cat form", bot);
}