mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Scripts/Icecrown Citadel: Fixed Mutated Abominations not despawning when Putricide enters third phase
Closes #450 Ref #342 Try reproducing teleport issue after this commit
This commit is contained in:
@@ -299,6 +299,9 @@ class boss_professor_putricide : public CreatureScript
|
||||
summon->CastSpell(summon, SPELL_CHOKING_GAS_BOMB_PERIODIC, true);
|
||||
summon->CastSpell(summon, SPELL_CHOKING_GAS_EXPLOSION_TRIGGER, true);
|
||||
return;
|
||||
case NPC_MUTATED_ABOMINATION_10:
|
||||
case NPC_MUTATED_ABOMINATION_25:
|
||||
return;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -389,11 +392,9 @@ class boss_professor_putricide : public CreatureScript
|
||||
me->SetSpeed(MOVE_RUN, baseSpeed*2.0f, true);
|
||||
me->GetMotionMaster()->MovePoint(POINT_FESTERGUT, festergutWatchPos);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
DoZoneInCombat(me);
|
||||
if (IsHeroic())
|
||||
{
|
||||
DoZoneInCombat(me);
|
||||
events.ScheduleEvent(EVENT_FESTERGUT_GOO, urand(15000, 20000), 0, PHASE_FESTERGUT);
|
||||
}
|
||||
break;
|
||||
case ACTION_FESTERGUT_GAS:
|
||||
Talk(SAY_FESTERGUT_GASEOUS_BLIGHT);
|
||||
@@ -409,11 +410,9 @@ class boss_professor_putricide : public CreatureScript
|
||||
me->GetMotionMaster()->MovePoint(POINT_ROTFACE, rotfaceWatchPos);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
oozeFloodStage = 0;
|
||||
DoZoneInCombat(me);
|
||||
if (IsHeroic())
|
||||
{
|
||||
DoZoneInCombat(me);
|
||||
events.ScheduleEvent(EVENT_ROTFACE_VILE_GAS, urand(15000, 20000), 0, PHASE_ROTFACE);
|
||||
}
|
||||
// init random sequence of floods
|
||||
if (Creature* rotface = Unit::GetCreature(*me, instance->GetData64(DATA_ROTFACE)))
|
||||
{
|
||||
@@ -500,8 +499,8 @@ class boss_professor_putricide : public CreatureScript
|
||||
_SetPhase(PHASE_COMBAT_3);
|
||||
events.ScheduleEvent(EVENT_MUTATED_PLAGUE, 25000);
|
||||
events.CancelEvent(EVENT_UNSTABLE_EXPERIMENT);
|
||||
instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_MUTATED_TRANSFORMATION);
|
||||
instance->DoRemoveAurasDueToSpellOnPlayers(71503); // SPELL_MUTATED_TRANSFORMATION2
|
||||
summons.DespawnEntry(NPC_MUTATED_ABOMINATION_10);
|
||||
summons.DespawnEntry(NPC_MUTATED_ABOMINATION_25);
|
||||
if (GameObject* table = ObjectAccessor::GetGameObject(*me, instance->GetData64(DATA_PUTRICIDE_TABLE)))
|
||||
table->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE);
|
||||
break;
|
||||
@@ -1256,6 +1255,9 @@ class spell_putricide_mutated_transformation : public SpellScriptLoader
|
||||
|
||||
summon->SetUInt32Value(UNIT_CREATED_BY_SPELL, GetSpellInfo()->Id);
|
||||
summon->SetCreatorGUID(caster->GetGUID());
|
||||
if (InstanceScript* instance = caster->GetInstanceScript())
|
||||
if (Creature* putricide = ObjectAccessor::GetCreature(*caster, instance->GetData64(DATA_PROFESSOR_PUTRICIDE)))
|
||||
putricide->AI()->JustSummoned(summon);
|
||||
}
|
||||
|
||||
void Register()
|
||||
|
||||
@@ -137,6 +137,8 @@ enum CreaturesIds
|
||||
NPC_VOLATILE_OOZE = 37697,
|
||||
NPC_CHOKING_GAS_BOMB = 38159,
|
||||
NPC_TEAR_GAS_TARGET_STALKER = 38317,
|
||||
NPC_MUTATED_ABOMINATION_10 = 37672,
|
||||
NPC_MUTATED_ABOMINATION_25 = 38285,
|
||||
|
||||
// Blood Prince Council
|
||||
NPC_PRINCE_KELESETH = 37972,
|
||||
|
||||
Reference in New Issue
Block a user