From 66c90122ec03bdb884e57286ccccc91a340fa010 Mon Sep 17 00:00:00 2001 From: Nyeriah Date: Sun, 14 Sep 2014 12:16:07 -0300 Subject: Scripts/OnyxiaLair: - Potential null pointer crash fix - Reset react state properly on wipes during air phase --- src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/server') diff --git a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp index 62c85491a20..0a6b2e88b26 100644 --- a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp +++ b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp @@ -153,7 +153,7 @@ public: SetCombatMovement(true); _Reset(); - + me->SetReactState(REACT_AGGRESSIVE); instance->SetData(DATA_ONYXIA_PHASE, Phase); instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT); } @@ -162,12 +162,10 @@ public: { _EnterCombat(); Talk(SAY_AGGRO); - events.ScheduleEvent(EVENT_FLAME_BREATH, urand(10000, 20000)); events.ScheduleEvent(EVENT_TAIL_SWEEP, urand(15000, 20000)); events.ScheduleEvent(EVENT_CLEAVE, urand(2000, 5000)); events.ScheduleEvent(EVENT_WING_BUFFET, urand(10000, 20000)); - instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT); } @@ -331,9 +329,10 @@ public: { if (HealthBelowPct(65)) { + if (Unit* target = me->GetVictim()) + tankGUID = target->GetGUID(); SetCombatMovement(false); Phase = PHASE_BREATH; - tankGUID = me->GetVictim()->GetGUID(); me->SetReactState(REACT_PASSIVE); me->AttackStop(); me->GetMotionMaster()->MovePoint(10, Phase2Location); -- cgit v1.2.3