mirror of
https://github.com/liyunfan1223/mod-playerbots.git
synced 2026-02-21 18:40:01 +01:00
44 lines
2.2 KiB
C++
44 lines
2.2 KiB
C++
#include "UtgardeKeepStrategy.h"
|
|
#include "UtgardeKeepMultipliers.h"
|
|
|
|
|
|
void WotlkDungeonUKStrategy::InitTriggers(std::vector<TriggerNode*> &triggers)
|
|
{
|
|
// Prince Keleseth
|
|
triggers.push_back(new TriggerNode("keleseth frost tomb",
|
|
NextAction::array(0, new NextAction("attack frost tomb", ACTION_RAID + 1), nullptr)));
|
|
|
|
// Skarvald the Constructor & Dalronn the Controller
|
|
triggers.push_back(new TriggerNode("dalronn priority",
|
|
NextAction::array(0, new NextAction("attack dalronn", ACTION_RAID + 1), nullptr)));
|
|
|
|
// Ingvar the Plunderer
|
|
|
|
// Doesn't work yet, this action doesn't get processed until the existing cast finishes
|
|
// triggers.push_back(new TriggerNode("ingvar staggering roar",
|
|
// NextAction::array(0, new NextAction("ingvar stop casting", ACTION_RAID + 1), nullptr)));
|
|
|
|
// No easy way to check LoS here, the pillars do not seem to count as gameobjects.
|
|
// Not implemented for now, unsure if this is needed as a good group can probably burst through the boss
|
|
// and just eat the debuff.
|
|
// triggers.push_back(new TriggerNode("ingvar dreadful roar",
|
|
// NextAction::array(0, new NextAction("ingvar hide los", ACTION_RAID + 1), nullptr)));
|
|
triggers.push_back(new TriggerNode("ingvar smash tank",
|
|
NextAction::array(0, new NextAction("ingvar dodge smash", ACTION_MOVE + 5), nullptr)));
|
|
triggers.push_back(new TriggerNode("ingvar smash tank return",
|
|
NextAction::array(0, new NextAction("ingvar smash return", ACTION_MOVE + 5), nullptr)));
|
|
// Buggy... if not behind target, ai can get stuck running towards and away from target.
|
|
// I think for ranged chars, a custom action should be added that doesn't attempt to run into melee.
|
|
// This is a bandaid for now, needs to be improved.
|
|
triggers.push_back(new TriggerNode("not behind ingvar",
|
|
NextAction::array(0, new NextAction("set behind", ACTION_MOVE + 1), nullptr)));
|
|
|
|
}
|
|
|
|
void WotlkDungeonUKStrategy::InitMultipliers(std::vector<Multiplier*> &multipliers)
|
|
{
|
|
multipliers.push_back(new PrinceKelesethMultiplier(botAI));
|
|
multipliers.push_back(new SkarvaldAndDalronnMultiplier(botAI));
|
|
multipliers.push_back(new IngvarThePlundererMultiplier(botAI));
|
|
}
|