aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
index 2f34ad6ad4f..ef2639ed6b8 100755
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
@@ -68,8 +68,8 @@ enum Spells
SPELL_GUZZLE_POTIONS = 71893,
SPELL_OOZE_TANK_PROTECTION = 71770, // protects the tank
SPELL_CHOKING_GAS_BOMB = 71255,
- SPELL_OOZE_VARIABLE = 70352,
- SPELL_GAS_VARIABLE = 70353,
+ SPELL_OOZE_VARIABLE = 74118,
+ SPELL_GAS_VARIABLE = 74119,
SPELL_UNBOUND_PLAGUE = 70911,
SPELL_UNBOUND_PLAGUE_SEARCHER = 70917,
SPELL_PLAGUE_SICKNESS = 70953,
@@ -256,14 +256,14 @@ class boss_professor_putricide : public CreatureScript
break;
case NPC_GAS_CLOUD:
// no possible aura seen in sniff adding the aurastate
- summon->SetFlag(UNIT_FIELD_AURASTATE, 1 << (AURA_STATE_UNKNOWN22 - 1));
+ summon->ModifyAuraState(AURA_STATE_UNKNOWN22, true);
summon->CastSpell(summon, SPELL_GASEOUS_BLOAT_PROC, true);
summon->CastCustomSpell(SPELL_GASEOUS_BLOAT, SPELLVALUE_AURA_STACK, 10, summon, false);
summon->SetReactState(REACT_PASSIVE);
return;
case NPC_VOLATILE_OOZE:
// no possible aura seen in sniff adding the aurastate
- summon->SetFlag(UNIT_FIELD_AURASTATE, 1 << (AURA_STATE_UNKNOWN19 - 1));
+ summon->ModifyAuraState(AURA_STATE_UNKNOWN19, true);
summon->CastSpell(summon, SPELL_OOZE_ERUPTION_SEARCH_PERIODIC, true);
summon->CastSpell(summon, SPELL_VOLATILE_OOZE_ADHESIVE, false);
summon->SetReactState(REACT_PASSIVE);
@@ -450,13 +450,13 @@ class boss_professor_putricide : public CreatureScript
while (half < targetList.size())
{
std::list<Unit*>::iterator itr = targetList.begin();
- advance(itr, urand(0, targetList.size()-1));
- DoCast(*itr, SPELL_OOZE_VARIABLE);
+ advance(itr, urand(0, targetList.size() - 1));
+ (*itr)->CastSpell(*itr, SPELL_OOZE_VARIABLE, true);
targetList.erase(itr);
}
// and half gets gas
for (std::list<Unit*>::iterator itr = targetList.begin(); itr != targetList.end(); ++itr)
- DoCast(*itr, SPELL_GAS_VARIABLE);
+ (*itr)->CastSpell(*itr, SPELL_GAS_VARIABLE, true);
}
me->GetMotionMaster()->MovePoint(POINT_TABLE, tablePos);
}
@@ -570,6 +570,8 @@ class boss_professor_putricide : public CreatureScript
// remove Tear Gas
instance->DoRemoveAurasDueToSpellOnPlayers(71615);
instance->DoRemoveAurasDueToSpellOnPlayers(71618);
+ instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_GAS_VARIABLE);
+ instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_OOZE_VARIABLE);
break;
case EVENT_MALLEABLE_GOO:
if (Is25ManRaid())