mirror of
https://github.com/liyunfan1223/mod-playerbots.git
synced 2026-02-20 18:10:02 +01:00
* Implement Gruul's Lair strategy * minor non-gameplay tweaks to code * Use multiplier for tank assist * HKM warlock & Gruul tank tweaks * Fixed declarations * rewrote HKM + minor Gruul tweaks * Update PlayerbotAI.cpp * modernize code and address comments * clean ups to tank logic * Oops. * Remove post-move delay For actions like positioning bosses, the standard post-movement delay should be overridden IMO since a player would be sequencing their actions in this type of situation * Update RaidGruulsLairActions.cpp * Replace break statements with return true * enum class to enum * moved all isuseful checks to triggers * Split multipliers and improved banish logic * Update for comments * changes to int * use helpers for marking icons * address compile errors * correct MoveTo and use RTI helper * address comments and rename actions/triggers * adjust alignment of location constants * fix some crappy returns * allow return true when changing targets * change indents and move enums inside namespace * style changes, trim trailing whitespaces, address comments
98 lines
3.1 KiB
C++
98 lines
3.1 KiB
C++
#ifndef _PLAYERBOT_RAIDGRUULSLAIRTRIGGERS_H
|
|
#define _PLAYERBOT_RAIDGRUULSLAIRTRIGGERS_H
|
|
|
|
#include "Trigger.h"
|
|
|
|
class HighKingMaulgarIsMainTankTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarIsMainTankTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar is main tank") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarIsFirstAssistTankTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarIsFirstAssistTankTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar is first assist tank") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarIsSecondAssistTankTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarIsSecondAssistTankTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar is second assist tank") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarIsMageTankTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarIsMageTankTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar is mage tank") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarIsMoonkinTankTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarIsMoonkinTankTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar is moonkin tank") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarDeterminingKillOrderTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarDeterminingKillOrderTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar determining kill order") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarHealerInDangerTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarHealerInDangerTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar healers in danger") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarBossChannelingWhirlwindTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarBossChannelingWhirlwindTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar boss channeling whirlwind") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarWildFelstalkerSpawnedTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarWildFelstalkerSpawnedTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar wild felstalker spawned") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class HighKingMaulgarPullingOlmAndBlindeyeTrigger : public Trigger
|
|
{
|
|
public:
|
|
HighKingMaulgarPullingOlmAndBlindeyeTrigger(PlayerbotAI* botAI) : Trigger(botAI, "high king maulgar pulling olm and blindeye") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class GruulTheDragonkillerBossEngagedByMainTankTrigger : public Trigger
|
|
{
|
|
public:
|
|
GruulTheDragonkillerBossEngagedByMainTankTrigger(PlayerbotAI* botAI) : Trigger(botAI, "gruul the dragonkiller boss engaged by main tank") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class GruulTheDragonkillerBossEngagedByRangeTrigger : public Trigger
|
|
{
|
|
public:
|
|
GruulTheDragonkillerBossEngagedByRangeTrigger(PlayerbotAI* botAI) : Trigger(botAI, "gruul the dragonkiller boss engaged by range") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
class GruulTheDragonkillerIncomingShatterTrigger : public Trigger
|
|
{
|
|
public:
|
|
GruulTheDragonkillerIncomingShatterTrigger(PlayerbotAI* botAI) : Trigger(botAI, "gruul the dragonkiller incoming shatter") {}
|
|
bool IsActive() override;
|
|
};
|
|
|
|
#endif
|