Instance boundary follow-up:

- Stop tools from complaining about leaks.
- Also, list -> vector.
- Fix an ambiguous constructor warning.
- Fix a bug with Gormok and Sindragosa (Fixes #16280).
This commit is contained in:
treeston
2016-01-14 20:51:35 +01:00
parent 82c0a074b4
commit b945d01ee5
7 changed files with 37 additions and 11 deletions

View File

@@ -22,12 +22,11 @@
#include "Player.h"
#include "TemporarySummon.h"
AreaBoundary const* const mainBoundary = new CircleBoundary(Position(563.26f, 139.6f), 75.0);
BossBoundaryData const boundaries = {
{ BOSS_BEASTS, mainBoundary },
{ BOSS_JARAXXUS, mainBoundary },
{ BOSS_CRUSADERS, mainBoundary },
{ BOSS_VALKIRIES, mainBoundary },
{ BOSS_BEASTS, new CircleBoundary(Position(563.26f, 139.6f), 75.0) },
{ BOSS_JARAXXUS, new CircleBoundary(Position(563.26f, 139.6f), 75.0) },
{ BOSS_CRUSADERS, new CircleBoundary(Position(563.26f, 139.6f), 75.0) },
{ BOSS_VALKIRIES, new CircleBoundary(Position(563.26f, 139.6f), 75.0) },
{ BOSS_ANUBARAK, new EllipseBoundary(Position(746.0f, 135.0f), 100.0, 75.0) }
};

View File

@@ -265,7 +265,7 @@ class boss_sindragosa : public CreatureScript
{
if (!instance->CheckRequiredBosses(DATA_SINDRAGOSA, victim->ToPlayer()))
{
EnterEvadeMode();
EnterEvadeMode(EVADE_REASON_SEQUENCE_BREAK);
instance->DoCastSpellOnPlayers(LIGHT_S_HAMMER_TELEPORT);
return;
}
@@ -276,6 +276,13 @@ class boss_sindragosa : public CreatureScript
Talk(SAY_AGGRO);
}
void EnterEvadeMode(EvadeReason why) override
{
if (_isInAirPhase && why == EVADE_REASON_BOUNDARY)
return;
BossAI::EnterEvadeMode(why);
}
void JustReachedHome() override
{
BossAI::JustReachedHome();