Core/Pit of Saron: Fixed crash in spell_exploding_orb_hasty_grow spell script, fixed player name in Mark of Rimefang announcement
This commit is contained in:
@@ -599,12 +599,14 @@ class spell_exploding_orb_hasty_grow : public SpellScriptLoader
|
||||
{
|
||||
if (GetStackAmount() == 15)
|
||||
{
|
||||
GetTarget()->CastSpell(GetTarget(), SPELL_EXPLOSIVE_BARRAGE_DAMAGE, false);
|
||||
GetTarget()->RemoveAurasDueToSpell(SPELL_HASTY_GROW);
|
||||
GetTarget()->RemoveAurasDueToSpell(SPELL_AUTO_GROW);
|
||||
GetTarget()->RemoveAurasDueToSpell(SPELL_EXPLODING_ORB);
|
||||
if (Creature* creature = GetTarget()->ToCreature())
|
||||
creature->DespawnOrUnsummon(1000);
|
||||
Unit* target = GetTarget(); // store target because aura gets removed
|
||||
PreventDefaultAction();
|
||||
target->CastSpell(target, SPELL_EXPLOSIVE_BARRAGE_DAMAGE, false);
|
||||
target->RemoveAurasDueToSpell(SPELL_HASTY_GROW);
|
||||
target->RemoveAurasDueToSpell(SPELL_AUTO_GROW);
|
||||
target->RemoveAurasDueToSpell(SPELL_EXPLODING_ORB);
|
||||
if (Creature* creature = target->ToCreature())
|
||||
creature->DespawnOrUnsummon();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -204,7 +204,7 @@ class boss_tyrannus : public CreatureScript
|
||||
|
||||
while (uint32 eventId = events.ExecuteEvent())
|
||||
{
|
||||
switch(eventId)
|
||||
switch (eventId)
|
||||
{
|
||||
case EVENT_INTRO_1:
|
||||
//DoScriptText(SAY_GORKUN_INTRO_2, pGorkunOrVictus);
|
||||
@@ -219,12 +219,11 @@ class boss_tyrannus : public CreatureScript
|
||||
case EVENT_COMBAT_START:
|
||||
if (Creature* rimefang = me->GetCreature(*me, instance->GetData64(DATA_RIMEFANG)))
|
||||
rimefang->AI()->DoAction(ACTION_START_RIMEFANG); //set rimefang also infight
|
||||
|
||||
events.SetPhase(PHASE_COMBAT);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
DoCast(me, SPELL_FULL_HEAL);
|
||||
me->SetInCombatWithZone();
|
||||
DoZoneInCombat();
|
||||
events.ScheduleEvent(EVENT_OVERLORD_BRAND, urand(5000, 7000));
|
||||
events.ScheduleEvent(EVENT_FORCEFUL_SMASH, urand(14000, 16000));
|
||||
events.ScheduleEvent(EVENT_MARK_OF_RIMEFANG, urand(25000, 27000));
|
||||
@@ -246,9 +245,11 @@ class boss_tyrannus : public CreatureScript
|
||||
break;
|
||||
case EVENT_MARK_OF_RIMEFANG:
|
||||
DoScriptText(SAY_MARK_RIMEFANG_1, me);
|
||||
DoScriptText(SAY_MARK_RIMEFANG_2, me);
|
||||
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 0.0f, true))
|
||||
{
|
||||
DoScriptText(SAY_MARK_RIMEFANG_2, me, target);
|
||||
DoCast(target, SPELL_MARK_OF_RIMEFANG);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_MARK_OF_RIMEFANG, urand(24000, 26000));
|
||||
break;
|
||||
}
|
||||
@@ -297,7 +298,7 @@ class boss_rimefang : public CreatureScript
|
||||
if (actionId == ACTION_START_RIMEFANG)
|
||||
{
|
||||
_events.SetPhase(PHASE_COMBAT);
|
||||
me->SetInCombatWithZone();
|
||||
DoZoneInCombat();
|
||||
_events.ScheduleEvent(EVENT_MOVE_NEXT, 500, 0, PHASE_COMBAT);
|
||||
_events.ScheduleEvent(EVENT_ICY_BLAST, 15000, 0, PHASE_COMBAT);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user