mirror of
https://github.com/mod-playerbots/mod-playerbots
synced 2025-11-29 15:58:20 +08:00
- Utgarde Keep (Keleseth): Bots continue combat correctly after killing a frost tomb - Utgarde Keep (Dalronn & Skarvald): Bots continue combat correctly after killing Dalronn - Utgarde Keep (Ingvar): Tank correctly avoids Dark Smash in second phase - Oculus (Drake combat): Bots more consistently attack the drakes in the air when flying around - Halls of Lightning (Bjarngrim): Bots no longer acquire priority targets until in combat
83 lines
2.4 KiB
C++
83 lines
2.4 KiB
C++
#ifndef _PLAYERBOT_WOTLKDUNGEONUKTRIGGERS_H
|
|
#define _PLAYERBOT_WOTLKDUNGEONUKTRIGGERS_H
|
|
|
|
#include "Trigger.h"
|
|
#include "PlayerbotAIConfig.h"
|
|
#include "GenericTriggers.h"
|
|
#include "DungeonStrategyUtils.h"
|
|
|
|
enum UtgardeKeepIDs
|
|
{
|
|
// Prince Keleseth
|
|
SPELL_FROST_TOMB = 48400,
|
|
NPC_FROST_TOMB = 23965,
|
|
|
|
// Ingvar the Plunderer
|
|
SPELL_STAGGERING_ROAR_N = 42708,
|
|
SPELL_STAGGERING_ROAR_H = 59708,
|
|
SPELL_SMASH_N = 42669,
|
|
SPELL_SMASH_H = 59706,
|
|
SPELL_DREADFUL_ROAR_N = 42729,
|
|
SPELL_DREADFUL_ROAR_H = 59734,
|
|
SPELL_WOE_STRIKE_N = 42730,
|
|
SPELL_WOE_STRIKE_H = 59735,
|
|
SPELL_DARK_SMASH_N = 42723,
|
|
SPELL_DARK_SMASH_H = 59709,
|
|
};
|
|
|
|
#define SPELL_STAGGERING_ROAR DUNGEON_MODE(bot, SPELL_STAGGERING_ROAR_N, SPELL_STAGGERING_ROAR_H)
|
|
#define SPELL_DREADFUL_ROAR DUNGEON_MODE(bot, SPELL_DREADFUL_ROAR_N, SPELL_DREADFUL_ROAR_H)
|
|
#define SPELL_SMASH DUNGEON_MODE(bot, SPELL_SMASH_N, SPELL_SMASH_H)
|
|
#define SPELL_DARK_SMASH DUNGEON_MODE(bot, SPELL_DARK_SMASH_N, SPELL_DARK_SMASH_H)
|
|
|
|
class KelesethFrostTombTrigger : public Trigger
|
|
{
|
|
public:
|
|
KelesethFrostTombTrigger(PlayerbotAI* ai) : Trigger(ai, "keleseth frost tomb") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class DalronnDpsTrigger : public Trigger
|
|
{
|
|
public:
|
|
DalronnDpsTrigger(PlayerbotAI* ai) : Trigger(ai, "dalronn dps") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class IngvarStaggeringRoarTrigger : public Trigger
|
|
{
|
|
public:
|
|
IngvarStaggeringRoarTrigger(PlayerbotAI* ai) : Trigger(ai, "ingvar staggering roar") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class IngvarDreadfulRoarTrigger : public Trigger
|
|
{
|
|
public:
|
|
IngvarDreadfulRoarTrigger(PlayerbotAI* ai) : Trigger(ai, "ingvar dreadful roar") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class IngvarSmashTankTrigger : public Trigger
|
|
{
|
|
public:
|
|
IngvarSmashTankTrigger(PlayerbotAI* ai) : Trigger(ai, "ingvar smash tank") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class IngvarSmashTankReturnTrigger : public Trigger
|
|
{
|
|
public:
|
|
IngvarSmashTankReturnTrigger(PlayerbotAI* ai) : Trigger(ai, "ingvar smash tank return") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class NotBehindIngvarTrigger : public Trigger
|
|
{
|
|
public:
|
|
NotBehindIngvarTrigger(PlayerbotAI* ai) : Trigger(ai, "not behind ingvar") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
#endif
|