diff options
| author | _manuel_ <manue.l@live.com.ar> | 2010-12-15 12:16:31 -0300 |
|---|---|---|
| committer | _manuel_ <manue.l@live.com.ar> | 2010-12-15 12:16:31 -0300 |
| commit | 6f551d853f22882be1cfd7562f34b788489e7ef9 (patch) | |
| tree | d3328518c5194ea0ee87e934afc6a5433973e88e | |
| parent | ad13cd89b5f2fc7265fdce084fc8175f9b9f1bb5 (diff) | |
Core/Scripts: Novos the Summoner should only summon 4 Crystal Handlers.
--HG--
branch : trunk
| -rw-r--r-- | src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp b/src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp index 98462340a16..6e93e70c8c2 100644 --- a/src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp +++ b/src/server/scripts/Northrend/DraktharonKeep/boss_novos.cpp @@ -77,6 +77,7 @@ public: uint32 uiTimer; uint32 uiCrystalHandlerTimer; + uint8 crystalHandlerAmount; bool bAchiev; @@ -95,6 +96,7 @@ public: bAchiev = true; me->CastStop(); lSummons.DespawnAll(); + crystalHandlerAmount = 0; if (me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_OOC_NOT_ATTACKABLE)) me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_OOC_NOT_ATTACKABLE); @@ -152,13 +154,16 @@ public: //DoCast(me, SPELL_SUMMON_MINIONS); uiTimer = 3*IN_MILLISECONDS; } else uiTimer -= diff; - if (uiCrystalHandlerTimer <= diff) + if (crystalHandlerAmount < 4) { - DoScriptText(SAY_NECRO_ADD, me); - Creature *pCrystalHandler = me->SummonCreature(CREATURE_CRYSTAL_HANDLER, CrystalHandlerSpawnPoint, TEMPSUMMON_CORPSE_TIMED_DESPAWN,20*IN_MILLISECONDS); - pCrystalHandler->GetMotionMaster()->MovePoint(0, AddDestinyPoint); - uiCrystalHandlerTimer = urand(20*IN_MILLISECONDS,30*IN_MILLISECONDS); - } else uiCrystalHandlerTimer -= diff; + if (uiCrystalHandlerTimer <= diff) + { + DoScriptText(SAY_NECRO_ADD, me); + Creature *pCrystalHandler = me->SummonCreature(CREATURE_CRYSTAL_HANDLER, CrystalHandlerSpawnPoint, TEMPSUMMON_CORPSE_TIMED_DESPAWN,20*IN_MILLISECONDS); + pCrystalHandler->GetMotionMaster()->MovePoint(0, AddDestinyPoint); + uiCrystalHandlerTimer = urand(20*IN_MILLISECONDS,30*IN_MILLISECONDS); + } else uiCrystalHandlerTimer -= diff; + } break; case PHASE_2: if (uiTimer <= diff) @@ -195,6 +200,9 @@ public: void JustSummoned(Creature *summon) { + if (summon->GetEntry() == CREATURE_CRYSTAL_HANDLER) + crystalHandlerAmount++; + lSummons.Summon(summon); } |
